1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    *
5    *
6    *
7    * The contents of this file are subject to the terms of the Liferay Enterprise
8    * Subscription License ("License"). You may not use this file except in
9    * compliance with the License. You can obtain a copy of the License by
10   * contacting Liferay, Inc. See the License for the specific language governing
11   * permissions and limitations under the License, including but not limited to
12   * distribution rights of the Software.
13   *
14   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20   * SOFTWARE.
21   */
22  
23  package com.liferay.portlet.messageboards.model.impl;
24  
25  import com.liferay.portal.SystemException;
26  import com.liferay.portal.kernel.bean.ReadOnlyBeanHandler;
27  import com.liferay.portal.kernel.util.DateUtil;
28  import com.liferay.portal.kernel.util.GetterUtil;
29  import com.liferay.portal.kernel.util.HtmlUtil;
30  import com.liferay.portal.kernel.util.StringBundler;
31  import com.liferay.portal.kernel.util.StringPool;
32  import com.liferay.portal.model.impl.BaseModelImpl;
33  import com.liferay.portal.service.ServiceContext;
34  import com.liferay.portal.util.PortalUtil;
35  
36  import com.liferay.portlet.expando.model.ExpandoBridge;
37  import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
38  import com.liferay.portlet.messageboards.model.MBMessage;
39  import com.liferay.portlet.messageboards.model.MBMessageSoap;
40  
41  import java.io.Serializable;
42  
43  import java.lang.reflect.Proxy;
44  
45  import java.sql.Types;
46  
47  import java.util.ArrayList;
48  import java.util.Date;
49  import java.util.List;
50  
51  /**
52   * <a href="MBMessageModelImpl.java.html"><b><i>View Source</i></b></a>
53   *
54   * <p>
55   * ServiceBuilder generated this class. Modifications in this class will be
56   * overwritten the next time is generated.
57   * </p>
58   *
59   * <p>
60   * This interface is a model that represents the MBMessage table in the
61   * database.
62   * </p>
63   *
64   * @author    Brian Wing Shun Chan
65   * @see       MBMessageImpl
66   * @see       com.liferay.portlet.messageboards.model.MBMessage
67   * @see       com.liferay.portlet.messageboards.model.MBMessageModel
68   * @generated
69   */
70  public class MBMessageModelImpl extends BaseModelImpl<MBMessage> {
71      public static final String TABLE_NAME = "MBMessage";
72      public static final Object[][] TABLE_COLUMNS = {
73              { "uuid_", new Integer(Types.VARCHAR) },
74              { "messageId", new Integer(Types.BIGINT) },
75              { "groupId", new Integer(Types.BIGINT) },
76              { "companyId", new Integer(Types.BIGINT) },
77              { "userId", new Integer(Types.BIGINT) },
78              { "userName", new Integer(Types.VARCHAR) },
79              { "createDate", new Integer(Types.TIMESTAMP) },
80              { "modifiedDate", new Integer(Types.TIMESTAMP) },
81              { "classNameId", new Integer(Types.BIGINT) },
82              { "classPK", new Integer(Types.BIGINT) },
83              { "categoryId", new Integer(Types.BIGINT) },
84              { "threadId", new Integer(Types.BIGINT) },
85              { "parentMessageId", new Integer(Types.BIGINT) },
86              { "subject", new Integer(Types.VARCHAR) },
87              { "body", new Integer(Types.CLOB) },
88              { "attachments", new Integer(Types.BOOLEAN) },
89              { "anonymous", new Integer(Types.BOOLEAN) },
90              { "priority", new Integer(Types.DOUBLE) }
91          };
92      public static final String TABLE_SQL_CREATE = "create table MBMessage (uuid_ VARCHAR(75) null,messageId LONG not null primary key,groupId LONG,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,classNameId LONG,classPK LONG,categoryId LONG,threadId LONG,parentMessageId LONG,subject VARCHAR(75) null,body TEXT null,attachments BOOLEAN,anonymous BOOLEAN,priority DOUBLE)";
93      public static final String TABLE_SQL_DROP = "drop table MBMessage";
94      public static final String ORDER_BY_JPQL = " ORDER BY mbMessage.createDate ASC, mbMessage.messageId ASC";
95      public static final String ORDER_BY_SQL = " ORDER BY MBMessage.createDate ASC, MBMessage.messageId ASC";
96      public static final String DATA_SOURCE = "liferayDataSource";
97      public static final String SESSION_FACTORY = "liferaySessionFactory";
98      public static final String TX_MANAGER = "liferayTransactionManager";
99      public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
100                 "value.object.entity.cache.enabled.com.liferay.portlet.messageboards.model.MBMessage"),
101             true);
102     public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
103                 "value.object.finder.cache.enabled.com.liferay.portlet.messageboards.model.MBMessage"),
104             true);
105 
106     public static MBMessage toModel(MBMessageSoap soapModel) {
107         MBMessage model = new MBMessageImpl();
108 
109         model.setUuid(soapModel.getUuid());
110         model.setMessageId(soapModel.getMessageId());
111         model.setGroupId(soapModel.getGroupId());
112         model.setCompanyId(soapModel.getCompanyId());
113         model.setUserId(soapModel.getUserId());
114         model.setUserName(soapModel.getUserName());
115         model.setCreateDate(soapModel.getCreateDate());
116         model.setModifiedDate(soapModel.getModifiedDate());
117         model.setClassNameId(soapModel.getClassNameId());
118         model.setClassPK(soapModel.getClassPK());
119         model.setCategoryId(soapModel.getCategoryId());
120         model.setThreadId(soapModel.getThreadId());
121         model.setParentMessageId(soapModel.getParentMessageId());
122         model.setSubject(soapModel.getSubject());
123         model.setBody(soapModel.getBody());
124         model.setAttachments(soapModel.getAttachments());
125         model.setAnonymous(soapModel.getAnonymous());
126         model.setPriority(soapModel.getPriority());
127 
128         return model;
129     }
130 
131     public static List<MBMessage> toModels(MBMessageSoap[] soapModels) {
132         List<MBMessage> models = new ArrayList<MBMessage>(soapModels.length);
133 
134         for (MBMessageSoap soapModel : soapModels) {
135             models.add(toModel(soapModel));
136         }
137 
138         return models;
139     }
140 
141     public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
142                 "lock.expiration.time.com.liferay.portlet.messageboards.model.MBMessage"));
143 
144     public MBMessageModelImpl() {
145     }
146 
147     public long getPrimaryKey() {
148         return _messageId;
149     }
150 
151     public void setPrimaryKey(long pk) {
152         setMessageId(pk);
153     }
154 
155     public Serializable getPrimaryKeyObj() {
156         return new Long(_messageId);
157     }
158 
159     public String getUuid() {
160         return GetterUtil.getString(_uuid);
161     }
162 
163     public void setUuid(String uuid) {
164         _uuid = uuid;
165 
166         if (_originalUuid == null) {
167             _originalUuid = uuid;
168         }
169     }
170 
171     public String getOriginalUuid() {
172         return GetterUtil.getString(_originalUuid);
173     }
174 
175     public long getMessageId() {
176         return _messageId;
177     }
178 
179     public void setMessageId(long messageId) {
180         _messageId = messageId;
181     }
182 
183     public long getGroupId() {
184         return _groupId;
185     }
186 
187     public void setGroupId(long groupId) {
188         _groupId = groupId;
189 
190         if (!_setOriginalGroupId) {
191             _setOriginalGroupId = true;
192 
193             _originalGroupId = groupId;
194         }
195     }
196 
197     public long getOriginalGroupId() {
198         return _originalGroupId;
199     }
200 
201     public long getCompanyId() {
202         return _companyId;
203     }
204 
205     public void setCompanyId(long companyId) {
206         _companyId = companyId;
207     }
208 
209     public long getUserId() {
210         return _userId;
211     }
212 
213     public void setUserId(long userId) {
214         _userId = userId;
215     }
216 
217     public String getUserUuid() throws SystemException {
218         return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
219     }
220 
221     public void setUserUuid(String userUuid) {
222         _userUuid = userUuid;
223     }
224 
225     public String getUserName() {
226         return GetterUtil.getString(_userName);
227     }
228 
229     public void setUserName(String userName) {
230         _userName = userName;
231     }
232 
233     public Date getCreateDate() {
234         return _createDate;
235     }
236 
237     public void setCreateDate(Date createDate) {
238         _createDate = createDate;
239     }
240 
241     public Date getModifiedDate() {
242         return _modifiedDate;
243     }
244 
245     public void setModifiedDate(Date modifiedDate) {
246         _modifiedDate = modifiedDate;
247     }
248 
249     public String getClassName() {
250         if (getClassNameId() <= 0) {
251             return StringPool.BLANK;
252         }
253 
254         return PortalUtil.getClassName(getClassNameId());
255     }
256 
257     public long getClassNameId() {
258         return _classNameId;
259     }
260 
261     public void setClassNameId(long classNameId) {
262         _classNameId = classNameId;
263     }
264 
265     public long getClassPK() {
266         return _classPK;
267     }
268 
269     public void setClassPK(long classPK) {
270         _classPK = classPK;
271     }
272 
273     public long getCategoryId() {
274         return _categoryId;
275     }
276 
277     public void setCategoryId(long categoryId) {
278         _categoryId = categoryId;
279     }
280 
281     public long getThreadId() {
282         return _threadId;
283     }
284 
285     public void setThreadId(long threadId) {
286         _threadId = threadId;
287     }
288 
289     public long getParentMessageId() {
290         return _parentMessageId;
291     }
292 
293     public void setParentMessageId(long parentMessageId) {
294         _parentMessageId = parentMessageId;
295     }
296 
297     public String getSubject() {
298         return GetterUtil.getString(_subject);
299     }
300 
301     public void setSubject(String subject) {
302         _subject = subject;
303     }
304 
305     public String getBody() {
306         return GetterUtil.getString(_body);
307     }
308 
309     public void setBody(String body) {
310         _body = body;
311     }
312 
313     public boolean getAttachments() {
314         return _attachments;
315     }
316 
317     public boolean isAttachments() {
318         return _attachments;
319     }
320 
321     public void setAttachments(boolean attachments) {
322         _attachments = attachments;
323     }
324 
325     public boolean getAnonymous() {
326         return _anonymous;
327     }
328 
329     public boolean isAnonymous() {
330         return _anonymous;
331     }
332 
333     public void setAnonymous(boolean anonymous) {
334         _anonymous = anonymous;
335     }
336 
337     public double getPriority() {
338         return _priority;
339     }
340 
341     public void setPriority(double priority) {
342         _priority = priority;
343     }
344 
345     public MBMessage toEscapedModel() {
346         if (isEscapedModel()) {
347             return (MBMessage)this;
348         }
349         else {
350             MBMessage model = new MBMessageImpl();
351 
352             model.setNew(isNew());
353             model.setEscapedModel(true);
354 
355             model.setUuid(HtmlUtil.escape(getUuid()));
356             model.setMessageId(getMessageId());
357             model.setGroupId(getGroupId());
358             model.setCompanyId(getCompanyId());
359             model.setUserId(getUserId());
360             model.setUserName(HtmlUtil.escape(getUserName()));
361             model.setCreateDate(getCreateDate());
362             model.setModifiedDate(getModifiedDate());
363             model.setClassNameId(getClassNameId());
364             model.setClassPK(getClassPK());
365             model.setCategoryId(getCategoryId());
366             model.setThreadId(getThreadId());
367             model.setParentMessageId(getParentMessageId());
368             model.setSubject(HtmlUtil.escape(getSubject()));
369             model.setBody(HtmlUtil.escape(getBody()));
370             model.setAttachments(getAttachments());
371             model.setAnonymous(getAnonymous());
372             model.setPriority(getPriority());
373 
374             model = (MBMessage)Proxy.newProxyInstance(MBMessage.class.getClassLoader(),
375                     new Class[] { MBMessage.class },
376                     new ReadOnlyBeanHandler(model));
377 
378             return model;
379         }
380     }
381 
382     public ExpandoBridge getExpandoBridge() {
383         if (_expandoBridge == null) {
384             _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(MBMessage.class.getName(),
385                     getPrimaryKey());
386         }
387 
388         return _expandoBridge;
389     }
390 
391     public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
392         getExpandoBridge().setAttributes(serviceContext);
393     }
394 
395     public Object clone() {
396         MBMessageImpl clone = new MBMessageImpl();
397 
398         clone.setUuid(getUuid());
399         clone.setMessageId(getMessageId());
400         clone.setGroupId(getGroupId());
401         clone.setCompanyId(getCompanyId());
402         clone.setUserId(getUserId());
403         clone.setUserName(getUserName());
404         clone.setCreateDate(getCreateDate());
405         clone.setModifiedDate(getModifiedDate());
406         clone.setClassNameId(getClassNameId());
407         clone.setClassPK(getClassPK());
408         clone.setCategoryId(getCategoryId());
409         clone.setThreadId(getThreadId());
410         clone.setParentMessageId(getParentMessageId());
411         clone.setSubject(getSubject());
412         clone.setBody(getBody());
413         clone.setAttachments(getAttachments());
414         clone.setAnonymous(getAnonymous());
415         clone.setPriority(getPriority());
416 
417         return clone;
418     }
419 
420     public int compareTo(MBMessage mbMessage) {
421         int value = 0;
422 
423         value = DateUtil.compareTo(getCreateDate(), mbMessage.getCreateDate());
424 
425         if (value != 0) {
426             return value;
427         }
428 
429         if (getMessageId() < mbMessage.getMessageId()) {
430             value = -1;
431         }
432         else if (getMessageId() > mbMessage.getMessageId()) {
433             value = 1;
434         }
435         else {
436             value = 0;
437         }
438 
439         if (value != 0) {
440             return value;
441         }
442 
443         return 0;
444     }
445 
446     public boolean equals(Object obj) {
447         if (obj == null) {
448             return false;
449         }
450 
451         MBMessage mbMessage = null;
452 
453         try {
454             mbMessage = (MBMessage)obj;
455         }
456         catch (ClassCastException cce) {
457             return false;
458         }
459 
460         long pk = mbMessage.getPrimaryKey();
461 
462         if (getPrimaryKey() == pk) {
463             return true;
464         }
465         else {
466             return false;
467         }
468     }
469 
470     public int hashCode() {
471         return (int)getPrimaryKey();
472     }
473 
474     public String toString() {
475         StringBundler sb = new StringBundler(37);
476 
477         sb.append("{uuid=");
478         sb.append(getUuid());
479         sb.append(", messageId=");
480         sb.append(getMessageId());
481         sb.append(", groupId=");
482         sb.append(getGroupId());
483         sb.append(", companyId=");
484         sb.append(getCompanyId());
485         sb.append(", userId=");
486         sb.append(getUserId());
487         sb.append(", userName=");
488         sb.append(getUserName());
489         sb.append(", createDate=");
490         sb.append(getCreateDate());
491         sb.append(", modifiedDate=");
492         sb.append(getModifiedDate());
493         sb.append(", classNameId=");
494         sb.append(getClassNameId());
495         sb.append(", classPK=");
496         sb.append(getClassPK());
497         sb.append(", categoryId=");
498         sb.append(getCategoryId());
499         sb.append(", threadId=");
500         sb.append(getThreadId());
501         sb.append(", parentMessageId=");
502         sb.append(getParentMessageId());
503         sb.append(", subject=");
504         sb.append(getSubject());
505         sb.append(", body=");
506         sb.append(getBody());
507         sb.append(", attachments=");
508         sb.append(getAttachments());
509         sb.append(", anonymous=");
510         sb.append(getAnonymous());
511         sb.append(", priority=");
512         sb.append(getPriority());
513         sb.append("}");
514 
515         return sb.toString();
516     }
517 
518     public String toXmlString() {
519         StringBundler sb = new StringBundler(58);
520 
521         sb.append("<model><model-name>");
522         sb.append("com.liferay.portlet.messageboards.model.MBMessage");
523         sb.append("</model-name>");
524 
525         sb.append(
526             "<column><column-name>uuid</column-name><column-value><![CDATA[");
527         sb.append(getUuid());
528         sb.append("]]></column-value></column>");
529         sb.append(
530             "<column><column-name>messageId</column-name><column-value><![CDATA[");
531         sb.append(getMessageId());
532         sb.append("]]></column-value></column>");
533         sb.append(
534             "<column><column-name>groupId</column-name><column-value><![CDATA[");
535         sb.append(getGroupId());
536         sb.append("]]></column-value></column>");
537         sb.append(
538             "<column><column-name>companyId</column-name><column-value><![CDATA[");
539         sb.append(getCompanyId());
540         sb.append("]]></column-value></column>");
541         sb.append(
542             "<column><column-name>userId</column-name><column-value><![CDATA[");
543         sb.append(getUserId());
544         sb.append("]]></column-value></column>");
545         sb.append(
546             "<column><column-name>userName</column-name><column-value><![CDATA[");
547         sb.append(getUserName());
548         sb.append("]]></column-value></column>");
549         sb.append(
550             "<column><column-name>createDate</column-name><column-value><![CDATA[");
551         sb.append(getCreateDate());
552         sb.append("]]></column-value></column>");
553         sb.append(
554             "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
555         sb.append(getModifiedDate());
556         sb.append("]]></column-value></column>");
557         sb.append(
558             "<column><column-name>classNameId</column-name><column-value><![CDATA[");
559         sb.append(getClassNameId());
560         sb.append("]]></column-value></column>");
561         sb.append(
562             "<column><column-name>classPK</column-name><column-value><![CDATA[");
563         sb.append(getClassPK());
564         sb.append("]]></column-value></column>");
565         sb.append(
566             "<column><column-name>categoryId</column-name><column-value><![CDATA[");
567         sb.append(getCategoryId());
568         sb.append("]]></column-value></column>");
569         sb.append(
570             "<column><column-name>threadId</column-name><column-value><![CDATA[");
571         sb.append(getThreadId());
572         sb.append("]]></column-value></column>");
573         sb.append(
574             "<column><column-name>parentMessageId</column-name><column-value><![CDATA[");
575         sb.append(getParentMessageId());
576         sb.append("]]></column-value></column>");
577         sb.append(
578             "<column><column-name>subject</column-name><column-value><![CDATA[");
579         sb.append(getSubject());
580         sb.append("]]></column-value></column>");
581         sb.append(
582             "<column><column-name>body</column-name><column-value><![CDATA[");
583         sb.append(getBody());
584         sb.append("]]></column-value></column>");
585         sb.append(
586             "<column><column-name>attachments</column-name><column-value><![CDATA[");
587         sb.append(getAttachments());
588         sb.append("]]></column-value></column>");
589         sb.append(
590             "<column><column-name>anonymous</column-name><column-value><![CDATA[");
591         sb.append(getAnonymous());
592         sb.append("]]></column-value></column>");
593         sb.append(
594             "<column><column-name>priority</column-name><column-value><![CDATA[");
595         sb.append(getPriority());
596         sb.append("]]></column-value></column>");
597 
598         sb.append("</model>");
599 
600         return sb.toString();
601     }
602 
603     private String _uuid;
604     private String _originalUuid;
605     private long _messageId;
606     private long _groupId;
607     private long _originalGroupId;
608     private boolean _setOriginalGroupId;
609     private long _companyId;
610     private long _userId;
611     private String _userUuid;
612     private String _userName;
613     private Date _createDate;
614     private Date _modifiedDate;
615     private long _classNameId;
616     private long _classPK;
617     private long _categoryId;
618     private long _threadId;
619     private long _parentMessageId;
620     private String _subject;
621     private String _body;
622     private boolean _attachments;
623     private boolean _anonymous;
624     private double _priority;
625     private transient ExpandoBridge _expandoBridge;
626 }