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