001    /**
002     * Copyright (c) 2000-2012 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.messageboards.model.impl;
016    
017    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.json.JSON;
020    import com.liferay.portal.kernel.util.DateUtil;
021    import com.liferay.portal.kernel.util.GetterUtil;
022    import com.liferay.portal.kernel.util.ProxyUtil;
023    import com.liferay.portal.kernel.util.StringBundler;
024    import com.liferay.portal.kernel.util.StringPool;
025    import com.liferay.portal.kernel.workflow.WorkflowConstants;
026    import com.liferay.portal.model.CacheModel;
027    import com.liferay.portal.model.impl.BaseModelImpl;
028    import com.liferay.portal.service.ServiceContext;
029    import com.liferay.portal.util.PortalUtil;
030    
031    import com.liferay.portlet.expando.model.ExpandoBridge;
032    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
033    import com.liferay.portlet.messageboards.model.MBMessage;
034    import com.liferay.portlet.messageboards.model.MBMessageModel;
035    import com.liferay.portlet.messageboards.model.MBMessageSoap;
036    
037    import java.io.Serializable;
038    
039    import java.sql.Types;
040    
041    import java.util.ArrayList;
042    import java.util.Date;
043    import java.util.List;
044    
045    /**
046     * The base model implementation for the MBMessage service. Represents a row in the "MBMessage" database table, with each column mapped to a property of this class.
047     *
048     * <p>
049     * This implementation and its corresponding interface {@link com.liferay.portlet.messageboards.model.MBMessageModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link MBMessageImpl}.
050     * </p>
051     *
052     * @author Brian Wing Shun Chan
053     * @see MBMessageImpl
054     * @see com.liferay.portlet.messageboards.model.MBMessage
055     * @see com.liferay.portlet.messageboards.model.MBMessageModel
056     * @generated
057     */
058    @JSON(strict = true)
059    public class MBMessageModelImpl extends BaseModelImpl<MBMessage>
060            implements MBMessageModel {
061            /*
062             * NOTE FOR DEVELOPERS:
063             *
064             * Never modify or reference this class directly. All methods that expect a message-boards message model instance should use the {@link com.liferay.portlet.messageboards.model.MBMessage} interface instead.
065             */
066            public static final String TABLE_NAME = "MBMessage";
067            public static final Object[][] TABLE_COLUMNS = {
068                            { "uuid_", Types.VARCHAR },
069                            { "messageId", Types.BIGINT },
070                            { "groupId", Types.BIGINT },
071                            { "companyId", Types.BIGINT },
072                            { "userId", Types.BIGINT },
073                            { "userName", Types.VARCHAR },
074                            { "createDate", Types.TIMESTAMP },
075                            { "modifiedDate", Types.TIMESTAMP },
076                            { "classNameId", Types.BIGINT },
077                            { "classPK", Types.BIGINT },
078                            { "categoryId", Types.BIGINT },
079                            { "threadId", Types.BIGINT },
080                            { "rootMessageId", Types.BIGINT },
081                            { "parentMessageId", Types.BIGINT },
082                            { "subject", Types.VARCHAR },
083                            { "body", Types.CLOB },
084                            { "format", Types.VARCHAR },
085                            { "attachments", Types.BOOLEAN },
086                            { "anonymous", Types.BOOLEAN },
087                            { "priority", Types.DOUBLE },
088                            { "allowPingbacks", Types.BOOLEAN },
089                            { "answer", Types.BOOLEAN },
090                            { "status", Types.INTEGER },
091                            { "statusByUserId", Types.BIGINT },
092                            { "statusByUserName", Types.VARCHAR },
093                            { "statusDate", Types.TIMESTAMP }
094                    };
095            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,rootMessageId LONG,parentMessageId LONG,subject VARCHAR(75) null,body TEXT null,format VARCHAR(75) null,attachments BOOLEAN,anonymous BOOLEAN,priority DOUBLE,allowPingbacks BOOLEAN,answer BOOLEAN,status INTEGER,statusByUserId LONG,statusByUserName VARCHAR(75) null,statusDate DATE null)";
096            public static final String TABLE_SQL_DROP = "drop table MBMessage";
097            public static final String ORDER_BY_JPQL = " ORDER BY mbMessage.createDate ASC, mbMessage.messageId ASC";
098            public static final String ORDER_BY_SQL = " ORDER BY MBMessage.createDate ASC, MBMessage.messageId ASC";
099            public static final String DATA_SOURCE = "liferayDataSource";
100            public static final String SESSION_FACTORY = "liferaySessionFactory";
101            public static final String TX_MANAGER = "liferayTransactionManager";
102            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
103                                    "value.object.entity.cache.enabled.com.liferay.portlet.messageboards.model.MBMessage"),
104                            true);
105            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
106                                    "value.object.finder.cache.enabled.com.liferay.portlet.messageboards.model.MBMessage"),
107                            true);
108            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
109                                    "value.object.column.bitmask.enabled.com.liferay.portlet.messageboards.model.MBMessage"),
110                            true);
111            public static long ANSWER_COLUMN_BITMASK = 1L;
112            public static long CATEGORYID_COLUMN_BITMASK = 2L;
113            public static long CLASSNAMEID_COLUMN_BITMASK = 4L;
114            public static long CLASSPK_COLUMN_BITMASK = 8L;
115            public static long COMPANYID_COLUMN_BITMASK = 16L;
116            public static long GROUPID_COLUMN_BITMASK = 32L;
117            public static long PARENTMESSAGEID_COLUMN_BITMASK = 64L;
118            public static long STATUS_COLUMN_BITMASK = 128L;
119            public static long THREADID_COLUMN_BITMASK = 256L;
120            public static long USERID_COLUMN_BITMASK = 512L;
121            public static long UUID_COLUMN_BITMASK = 1024L;
122    
123            /**
124             * Converts the soap model instance into a normal model instance.
125             *
126             * @param soapModel the soap model instance to convert
127             * @return the normal model instance
128             */
129            public static MBMessage toModel(MBMessageSoap soapModel) {
130                    MBMessage model = new MBMessageImpl();
131    
132                    model.setUuid(soapModel.getUuid());
133                    model.setMessageId(soapModel.getMessageId());
134                    model.setGroupId(soapModel.getGroupId());
135                    model.setCompanyId(soapModel.getCompanyId());
136                    model.setUserId(soapModel.getUserId());
137                    model.setUserName(soapModel.getUserName());
138                    model.setCreateDate(soapModel.getCreateDate());
139                    model.setModifiedDate(soapModel.getModifiedDate());
140                    model.setClassNameId(soapModel.getClassNameId());
141                    model.setClassPK(soapModel.getClassPK());
142                    model.setCategoryId(soapModel.getCategoryId());
143                    model.setThreadId(soapModel.getThreadId());
144                    model.setRootMessageId(soapModel.getRootMessageId());
145                    model.setParentMessageId(soapModel.getParentMessageId());
146                    model.setSubject(soapModel.getSubject());
147                    model.setBody(soapModel.getBody());
148                    model.setFormat(soapModel.getFormat());
149                    model.setAttachments(soapModel.getAttachments());
150                    model.setAnonymous(soapModel.getAnonymous());
151                    model.setPriority(soapModel.getPriority());
152                    model.setAllowPingbacks(soapModel.getAllowPingbacks());
153                    model.setAnswer(soapModel.getAnswer());
154                    model.setStatus(soapModel.getStatus());
155                    model.setStatusByUserId(soapModel.getStatusByUserId());
156                    model.setStatusByUserName(soapModel.getStatusByUserName());
157                    model.setStatusDate(soapModel.getStatusDate());
158    
159                    return model;
160            }
161    
162            /**
163             * Converts the soap model instances into normal model instances.
164             *
165             * @param soapModels the soap model instances to convert
166             * @return the normal model instances
167             */
168            public static List<MBMessage> toModels(MBMessageSoap[] soapModels) {
169                    List<MBMessage> models = new ArrayList<MBMessage>(soapModels.length);
170    
171                    for (MBMessageSoap soapModel : soapModels) {
172                            models.add(toModel(soapModel));
173                    }
174    
175                    return models;
176            }
177    
178            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
179                                    "lock.expiration.time.com.liferay.portlet.messageboards.model.MBMessage"));
180    
181            public MBMessageModelImpl() {
182            }
183    
184            public long getPrimaryKey() {
185                    return _messageId;
186            }
187    
188            public void setPrimaryKey(long primaryKey) {
189                    setMessageId(primaryKey);
190            }
191    
192            public Serializable getPrimaryKeyObj() {
193                    return new Long(_messageId);
194            }
195    
196            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
197                    setPrimaryKey(((Long)primaryKeyObj).longValue());
198            }
199    
200            public Class<?> getModelClass() {
201                    return MBMessage.class;
202            }
203    
204            public String getModelClassName() {
205                    return MBMessage.class.getName();
206            }
207    
208            @JSON
209            public String getUuid() {
210                    if (_uuid == null) {
211                            return StringPool.BLANK;
212                    }
213                    else {
214                            return _uuid;
215                    }
216            }
217    
218            public void setUuid(String uuid) {
219                    if (_originalUuid == null) {
220                            _originalUuid = _uuid;
221                    }
222    
223                    _uuid = uuid;
224            }
225    
226            public String getOriginalUuid() {
227                    return GetterUtil.getString(_originalUuid);
228            }
229    
230            @JSON
231            public long getMessageId() {
232                    return _messageId;
233            }
234    
235            public void setMessageId(long messageId) {
236                    _columnBitmask = -1L;
237    
238                    _messageId = messageId;
239            }
240    
241            @JSON
242            public long getGroupId() {
243                    return _groupId;
244            }
245    
246            public void setGroupId(long groupId) {
247                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
248    
249                    if (!_setOriginalGroupId) {
250                            _setOriginalGroupId = true;
251    
252                            _originalGroupId = _groupId;
253                    }
254    
255                    _groupId = groupId;
256            }
257    
258            public long getOriginalGroupId() {
259                    return _originalGroupId;
260            }
261    
262            @JSON
263            public long getCompanyId() {
264                    return _companyId;
265            }
266    
267            public void setCompanyId(long companyId) {
268                    _columnBitmask |= COMPANYID_COLUMN_BITMASK;
269    
270                    if (!_setOriginalCompanyId) {
271                            _setOriginalCompanyId = true;
272    
273                            _originalCompanyId = _companyId;
274                    }
275    
276                    _companyId = companyId;
277            }
278    
279            public long getOriginalCompanyId() {
280                    return _originalCompanyId;
281            }
282    
283            @JSON
284            public long getUserId() {
285                    return _userId;
286            }
287    
288            public void setUserId(long userId) {
289                    _columnBitmask |= USERID_COLUMN_BITMASK;
290    
291                    if (!_setOriginalUserId) {
292                            _setOriginalUserId = true;
293    
294                            _originalUserId = _userId;
295                    }
296    
297                    _userId = userId;
298            }
299    
300            public String getUserUuid() throws SystemException {
301                    return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
302            }
303    
304            public void setUserUuid(String userUuid) {
305                    _userUuid = userUuid;
306            }
307    
308            public long getOriginalUserId() {
309                    return _originalUserId;
310            }
311    
312            @JSON
313            public String getUserName() {
314                    if (_userName == null) {
315                            return StringPool.BLANK;
316                    }
317                    else {
318                            return _userName;
319                    }
320            }
321    
322            public void setUserName(String userName) {
323                    _userName = userName;
324            }
325    
326            @JSON
327            public Date getCreateDate() {
328                    return _createDate;
329            }
330    
331            public void setCreateDate(Date createDate) {
332                    _columnBitmask = -1L;
333    
334                    _createDate = createDate;
335            }
336    
337            @JSON
338            public Date getModifiedDate() {
339                    return _modifiedDate;
340            }
341    
342            public void setModifiedDate(Date modifiedDate) {
343                    _modifiedDate = modifiedDate;
344            }
345    
346            public String getClassName() {
347                    if (getClassNameId() <= 0) {
348                            return StringPool.BLANK;
349                    }
350    
351                    return PortalUtil.getClassName(getClassNameId());
352            }
353    
354            @JSON
355            public long getClassNameId() {
356                    return _classNameId;
357            }
358    
359            public void setClassNameId(long classNameId) {
360                    _columnBitmask |= CLASSNAMEID_COLUMN_BITMASK;
361    
362                    if (!_setOriginalClassNameId) {
363                            _setOriginalClassNameId = true;
364    
365                            _originalClassNameId = _classNameId;
366                    }
367    
368                    _classNameId = classNameId;
369            }
370    
371            public long getOriginalClassNameId() {
372                    return _originalClassNameId;
373            }
374    
375            @JSON
376            public long getClassPK() {
377                    return _classPK;
378            }
379    
380            public void setClassPK(long classPK) {
381                    _columnBitmask |= CLASSPK_COLUMN_BITMASK;
382    
383                    if (!_setOriginalClassPK) {
384                            _setOriginalClassPK = true;
385    
386                            _originalClassPK = _classPK;
387                    }
388    
389                    _classPK = classPK;
390            }
391    
392            public long getOriginalClassPK() {
393                    return _originalClassPK;
394            }
395    
396            @JSON
397            public long getCategoryId() {
398                    return _categoryId;
399            }
400    
401            public void setCategoryId(long categoryId) {
402                    _columnBitmask |= CATEGORYID_COLUMN_BITMASK;
403    
404                    if (!_setOriginalCategoryId) {
405                            _setOriginalCategoryId = true;
406    
407                            _originalCategoryId = _categoryId;
408                    }
409    
410                    _categoryId = categoryId;
411            }
412    
413            public long getOriginalCategoryId() {
414                    return _originalCategoryId;
415            }
416    
417            @JSON
418            public long getThreadId() {
419                    return _threadId;
420            }
421    
422            public void setThreadId(long threadId) {
423                    _columnBitmask |= THREADID_COLUMN_BITMASK;
424    
425                    if (!_setOriginalThreadId) {
426                            _setOriginalThreadId = true;
427    
428                            _originalThreadId = _threadId;
429                    }
430    
431                    _threadId = threadId;
432            }
433    
434            public long getOriginalThreadId() {
435                    return _originalThreadId;
436            }
437    
438            @JSON
439            public long getRootMessageId() {
440                    return _rootMessageId;
441            }
442    
443            public void setRootMessageId(long rootMessageId) {
444                    _rootMessageId = rootMessageId;
445            }
446    
447            @JSON
448            public long getParentMessageId() {
449                    return _parentMessageId;
450            }
451    
452            public void setParentMessageId(long parentMessageId) {
453                    _columnBitmask |= PARENTMESSAGEID_COLUMN_BITMASK;
454    
455                    if (!_setOriginalParentMessageId) {
456                            _setOriginalParentMessageId = true;
457    
458                            _originalParentMessageId = _parentMessageId;
459                    }
460    
461                    _parentMessageId = parentMessageId;
462            }
463    
464            public long getOriginalParentMessageId() {
465                    return _originalParentMessageId;
466            }
467    
468            @JSON
469            public String getSubject() {
470                    if (_subject == null) {
471                            return StringPool.BLANK;
472                    }
473                    else {
474                            return _subject;
475                    }
476            }
477    
478            public void setSubject(String subject) {
479                    _subject = subject;
480            }
481    
482            @JSON
483            public String getBody() {
484                    if (_body == null) {
485                            return StringPool.BLANK;
486                    }
487                    else {
488                            return _body;
489                    }
490            }
491    
492            public void setBody(String body) {
493                    _body = body;
494            }
495    
496            @JSON
497            public String getFormat() {
498                    if (_format == null) {
499                            return StringPool.BLANK;
500                    }
501                    else {
502                            return _format;
503                    }
504            }
505    
506            public void setFormat(String format) {
507                    _format = format;
508            }
509    
510            @JSON
511            public boolean getAttachments() {
512                    return _attachments;
513            }
514    
515            public boolean isAttachments() {
516                    return _attachments;
517            }
518    
519            public void setAttachments(boolean attachments) {
520                    _attachments = attachments;
521            }
522    
523            @JSON
524            public boolean getAnonymous() {
525                    return _anonymous;
526            }
527    
528            public boolean isAnonymous() {
529                    return _anonymous;
530            }
531    
532            public void setAnonymous(boolean anonymous) {
533                    _anonymous = anonymous;
534            }
535    
536            @JSON
537            public double getPriority() {
538                    return _priority;
539            }
540    
541            public void setPriority(double priority) {
542                    _priority = priority;
543            }
544    
545            @JSON
546            public boolean getAllowPingbacks() {
547                    return _allowPingbacks;
548            }
549    
550            public boolean isAllowPingbacks() {
551                    return _allowPingbacks;
552            }
553    
554            public void setAllowPingbacks(boolean allowPingbacks) {
555                    _allowPingbacks = allowPingbacks;
556            }
557    
558            @JSON
559            public boolean getAnswer() {
560                    return _answer;
561            }
562    
563            public boolean isAnswer() {
564                    return _answer;
565            }
566    
567            public void setAnswer(boolean answer) {
568                    _columnBitmask |= ANSWER_COLUMN_BITMASK;
569    
570                    if (!_setOriginalAnswer) {
571                            _setOriginalAnswer = true;
572    
573                            _originalAnswer = _answer;
574                    }
575    
576                    _answer = answer;
577            }
578    
579            public boolean getOriginalAnswer() {
580                    return _originalAnswer;
581            }
582    
583            @JSON
584            public int getStatus() {
585                    return _status;
586            }
587    
588            public void setStatus(int status) {
589                    _columnBitmask |= STATUS_COLUMN_BITMASK;
590    
591                    if (!_setOriginalStatus) {
592                            _setOriginalStatus = true;
593    
594                            _originalStatus = _status;
595                    }
596    
597                    _status = status;
598            }
599    
600            public int getOriginalStatus() {
601                    return _originalStatus;
602            }
603    
604            @JSON
605            public long getStatusByUserId() {
606                    return _statusByUserId;
607            }
608    
609            public void setStatusByUserId(long statusByUserId) {
610                    _statusByUserId = statusByUserId;
611            }
612    
613            public String getStatusByUserUuid() throws SystemException {
614                    return PortalUtil.getUserValue(getStatusByUserId(), "uuid",
615                            _statusByUserUuid);
616            }
617    
618            public void setStatusByUserUuid(String statusByUserUuid) {
619                    _statusByUserUuid = statusByUserUuid;
620            }
621    
622            @JSON
623            public String getStatusByUserName() {
624                    if (_statusByUserName == null) {
625                            return StringPool.BLANK;
626                    }
627                    else {
628                            return _statusByUserName;
629                    }
630            }
631    
632            public void setStatusByUserName(String statusByUserName) {
633                    _statusByUserName = statusByUserName;
634            }
635    
636            @JSON
637            public Date getStatusDate() {
638                    return _statusDate;
639            }
640    
641            public void setStatusDate(Date statusDate) {
642                    _statusDate = statusDate;
643            }
644    
645            /**
646             * @deprecated {@link #isApproved}
647             */
648            public boolean getApproved() {
649                    return isApproved();
650            }
651    
652            public boolean isApproved() {
653                    if (getStatus() == WorkflowConstants.STATUS_APPROVED) {
654                            return true;
655                    }
656                    else {
657                            return false;
658                    }
659            }
660    
661            public boolean isDraft() {
662                    if (getStatus() == WorkflowConstants.STATUS_DRAFT) {
663                            return true;
664                    }
665                    else {
666                            return false;
667                    }
668            }
669    
670            public boolean isExpired() {
671                    if (getStatus() == WorkflowConstants.STATUS_EXPIRED) {
672                            return true;
673                    }
674                    else {
675                            return false;
676                    }
677            }
678    
679            public boolean isPending() {
680                    if (getStatus() == WorkflowConstants.STATUS_PENDING) {
681                            return true;
682                    }
683                    else {
684                            return false;
685                    }
686            }
687    
688            public long getColumnBitmask() {
689                    return _columnBitmask;
690            }
691    
692            @Override
693            public MBMessage toEscapedModel() {
694                    if (_escapedModelProxy == null) {
695                            _escapedModelProxy = (MBMessage)ProxyUtil.newProxyInstance(_classLoader,
696                                            _escapedModelProxyInterfaces,
697                                            new AutoEscapeBeanHandler(this));
698                    }
699    
700                    return _escapedModelProxy;
701            }
702    
703            @Override
704            public ExpandoBridge getExpandoBridge() {
705                    if (_expandoBridge == null) {
706                            _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
707                                            MBMessage.class.getName(), getPrimaryKey());
708                    }
709    
710                    return _expandoBridge;
711            }
712    
713            @Override
714            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
715                    getExpandoBridge().setAttributes(serviceContext);
716            }
717    
718            @Override
719            public Object clone() {
720                    MBMessageImpl mbMessageImpl = new MBMessageImpl();
721    
722                    mbMessageImpl.setUuid(getUuid());
723                    mbMessageImpl.setMessageId(getMessageId());
724                    mbMessageImpl.setGroupId(getGroupId());
725                    mbMessageImpl.setCompanyId(getCompanyId());
726                    mbMessageImpl.setUserId(getUserId());
727                    mbMessageImpl.setUserName(getUserName());
728                    mbMessageImpl.setCreateDate(getCreateDate());
729                    mbMessageImpl.setModifiedDate(getModifiedDate());
730                    mbMessageImpl.setClassNameId(getClassNameId());
731                    mbMessageImpl.setClassPK(getClassPK());
732                    mbMessageImpl.setCategoryId(getCategoryId());
733                    mbMessageImpl.setThreadId(getThreadId());
734                    mbMessageImpl.setRootMessageId(getRootMessageId());
735                    mbMessageImpl.setParentMessageId(getParentMessageId());
736                    mbMessageImpl.setSubject(getSubject());
737                    mbMessageImpl.setBody(getBody());
738                    mbMessageImpl.setFormat(getFormat());
739                    mbMessageImpl.setAttachments(getAttachments());
740                    mbMessageImpl.setAnonymous(getAnonymous());
741                    mbMessageImpl.setPriority(getPriority());
742                    mbMessageImpl.setAllowPingbacks(getAllowPingbacks());
743                    mbMessageImpl.setAnswer(getAnswer());
744                    mbMessageImpl.setStatus(getStatus());
745                    mbMessageImpl.setStatusByUserId(getStatusByUserId());
746                    mbMessageImpl.setStatusByUserName(getStatusByUserName());
747                    mbMessageImpl.setStatusDate(getStatusDate());
748    
749                    mbMessageImpl.resetOriginalValues();
750    
751                    return mbMessageImpl;
752            }
753    
754            public int compareTo(MBMessage mbMessage) {
755                    int value = 0;
756    
757                    value = DateUtil.compareTo(getCreateDate(), mbMessage.getCreateDate());
758    
759                    if (value != 0) {
760                            return value;
761                    }
762    
763                    if (getMessageId() < mbMessage.getMessageId()) {
764                            value = -1;
765                    }
766                    else if (getMessageId() > mbMessage.getMessageId()) {
767                            value = 1;
768                    }
769                    else {
770                            value = 0;
771                    }
772    
773                    if (value != 0) {
774                            return value;
775                    }
776    
777                    return 0;
778            }
779    
780            @Override
781            public boolean equals(Object obj) {
782                    if (obj == null) {
783                            return false;
784                    }
785    
786                    MBMessage mbMessage = null;
787    
788                    try {
789                            mbMessage = (MBMessage)obj;
790                    }
791                    catch (ClassCastException cce) {
792                            return false;
793                    }
794    
795                    long primaryKey = mbMessage.getPrimaryKey();
796    
797                    if (getPrimaryKey() == primaryKey) {
798                            return true;
799                    }
800                    else {
801                            return false;
802                    }
803            }
804    
805            @Override
806            public int hashCode() {
807                    return (int)getPrimaryKey();
808            }
809    
810            @Override
811            public void resetOriginalValues() {
812                    MBMessageModelImpl mbMessageModelImpl = this;
813    
814                    mbMessageModelImpl._originalUuid = mbMessageModelImpl._uuid;
815    
816                    mbMessageModelImpl._originalGroupId = mbMessageModelImpl._groupId;
817    
818                    mbMessageModelImpl._setOriginalGroupId = false;
819    
820                    mbMessageModelImpl._originalCompanyId = mbMessageModelImpl._companyId;
821    
822                    mbMessageModelImpl._setOriginalCompanyId = false;
823    
824                    mbMessageModelImpl._originalUserId = mbMessageModelImpl._userId;
825    
826                    mbMessageModelImpl._setOriginalUserId = false;
827    
828                    mbMessageModelImpl._originalClassNameId = mbMessageModelImpl._classNameId;
829    
830                    mbMessageModelImpl._setOriginalClassNameId = false;
831    
832                    mbMessageModelImpl._originalClassPK = mbMessageModelImpl._classPK;
833    
834                    mbMessageModelImpl._setOriginalClassPK = false;
835    
836                    mbMessageModelImpl._originalCategoryId = mbMessageModelImpl._categoryId;
837    
838                    mbMessageModelImpl._setOriginalCategoryId = false;
839    
840                    mbMessageModelImpl._originalThreadId = mbMessageModelImpl._threadId;
841    
842                    mbMessageModelImpl._setOriginalThreadId = false;
843    
844                    mbMessageModelImpl._originalParentMessageId = mbMessageModelImpl._parentMessageId;
845    
846                    mbMessageModelImpl._setOriginalParentMessageId = false;
847    
848                    mbMessageModelImpl._originalAnswer = mbMessageModelImpl._answer;
849    
850                    mbMessageModelImpl._setOriginalAnswer = false;
851    
852                    mbMessageModelImpl._originalStatus = mbMessageModelImpl._status;
853    
854                    mbMessageModelImpl._setOriginalStatus = false;
855    
856                    mbMessageModelImpl._columnBitmask = 0;
857            }
858    
859            @Override
860            public CacheModel<MBMessage> toCacheModel() {
861                    MBMessageCacheModel mbMessageCacheModel = new MBMessageCacheModel();
862    
863                    mbMessageCacheModel.uuid = getUuid();
864    
865                    String uuid = mbMessageCacheModel.uuid;
866    
867                    if ((uuid != null) && (uuid.length() == 0)) {
868                            mbMessageCacheModel.uuid = null;
869                    }
870    
871                    mbMessageCacheModel.messageId = getMessageId();
872    
873                    mbMessageCacheModel.groupId = getGroupId();
874    
875                    mbMessageCacheModel.companyId = getCompanyId();
876    
877                    mbMessageCacheModel.userId = getUserId();
878    
879                    mbMessageCacheModel.userName = getUserName();
880    
881                    String userName = mbMessageCacheModel.userName;
882    
883                    if ((userName != null) && (userName.length() == 0)) {
884                            mbMessageCacheModel.userName = null;
885                    }
886    
887                    Date createDate = getCreateDate();
888    
889                    if (createDate != null) {
890                            mbMessageCacheModel.createDate = createDate.getTime();
891                    }
892                    else {
893                            mbMessageCacheModel.createDate = Long.MIN_VALUE;
894                    }
895    
896                    Date modifiedDate = getModifiedDate();
897    
898                    if (modifiedDate != null) {
899                            mbMessageCacheModel.modifiedDate = modifiedDate.getTime();
900                    }
901                    else {
902                            mbMessageCacheModel.modifiedDate = Long.MIN_VALUE;
903                    }
904    
905                    mbMessageCacheModel.classNameId = getClassNameId();
906    
907                    mbMessageCacheModel.classPK = getClassPK();
908    
909                    mbMessageCacheModel.categoryId = getCategoryId();
910    
911                    mbMessageCacheModel.threadId = getThreadId();
912    
913                    mbMessageCacheModel.rootMessageId = getRootMessageId();
914    
915                    mbMessageCacheModel.parentMessageId = getParentMessageId();
916    
917                    mbMessageCacheModel.subject = getSubject();
918    
919                    String subject = mbMessageCacheModel.subject;
920    
921                    if ((subject != null) && (subject.length() == 0)) {
922                            mbMessageCacheModel.subject = null;
923                    }
924    
925                    mbMessageCacheModel.body = getBody();
926    
927                    String body = mbMessageCacheModel.body;
928    
929                    if ((body != null) && (body.length() == 0)) {
930                            mbMessageCacheModel.body = null;
931                    }
932    
933                    mbMessageCacheModel.format = getFormat();
934    
935                    String format = mbMessageCacheModel.format;
936    
937                    if ((format != null) && (format.length() == 0)) {
938                            mbMessageCacheModel.format = null;
939                    }
940    
941                    mbMessageCacheModel.attachments = getAttachments();
942    
943                    mbMessageCacheModel.anonymous = getAnonymous();
944    
945                    mbMessageCacheModel.priority = getPriority();
946    
947                    mbMessageCacheModel.allowPingbacks = getAllowPingbacks();
948    
949                    mbMessageCacheModel.answer = getAnswer();
950    
951                    mbMessageCacheModel.status = getStatus();
952    
953                    mbMessageCacheModel.statusByUserId = getStatusByUserId();
954    
955                    mbMessageCacheModel.statusByUserName = getStatusByUserName();
956    
957                    String statusByUserName = mbMessageCacheModel.statusByUserName;
958    
959                    if ((statusByUserName != null) && (statusByUserName.length() == 0)) {
960                            mbMessageCacheModel.statusByUserName = null;
961                    }
962    
963                    Date statusDate = getStatusDate();
964    
965                    if (statusDate != null) {
966                            mbMessageCacheModel.statusDate = statusDate.getTime();
967                    }
968                    else {
969                            mbMessageCacheModel.statusDate = Long.MIN_VALUE;
970                    }
971    
972                    return mbMessageCacheModel;
973            }
974    
975            @Override
976            public String toString() {
977                    StringBundler sb = new StringBundler(53);
978    
979                    sb.append("{uuid=");
980                    sb.append(getUuid());
981                    sb.append(", messageId=");
982                    sb.append(getMessageId());
983                    sb.append(", groupId=");
984                    sb.append(getGroupId());
985                    sb.append(", companyId=");
986                    sb.append(getCompanyId());
987                    sb.append(", userId=");
988                    sb.append(getUserId());
989                    sb.append(", userName=");
990                    sb.append(getUserName());
991                    sb.append(", createDate=");
992                    sb.append(getCreateDate());
993                    sb.append(", modifiedDate=");
994                    sb.append(getModifiedDate());
995                    sb.append(", classNameId=");
996                    sb.append(getClassNameId());
997                    sb.append(", classPK=");
998                    sb.append(getClassPK());
999                    sb.append(", categoryId=");
1000                    sb.append(getCategoryId());
1001                    sb.append(", threadId=");
1002                    sb.append(getThreadId());
1003                    sb.append(", rootMessageId=");
1004                    sb.append(getRootMessageId());
1005                    sb.append(", parentMessageId=");
1006                    sb.append(getParentMessageId());
1007                    sb.append(", subject=");
1008                    sb.append(getSubject());
1009                    sb.append(", body=");
1010                    sb.append(getBody());
1011                    sb.append(", format=");
1012                    sb.append(getFormat());
1013                    sb.append(", attachments=");
1014                    sb.append(getAttachments());
1015                    sb.append(", anonymous=");
1016                    sb.append(getAnonymous());
1017                    sb.append(", priority=");
1018                    sb.append(getPriority());
1019                    sb.append(", allowPingbacks=");
1020                    sb.append(getAllowPingbacks());
1021                    sb.append(", answer=");
1022                    sb.append(getAnswer());
1023                    sb.append(", status=");
1024                    sb.append(getStatus());
1025                    sb.append(", statusByUserId=");
1026                    sb.append(getStatusByUserId());
1027                    sb.append(", statusByUserName=");
1028                    sb.append(getStatusByUserName());
1029                    sb.append(", statusDate=");
1030                    sb.append(getStatusDate());
1031                    sb.append("}");
1032    
1033                    return sb.toString();
1034            }
1035    
1036            public String toXmlString() {
1037                    StringBundler sb = new StringBundler(82);
1038    
1039                    sb.append("<model><model-name>");
1040                    sb.append("com.liferay.portlet.messageboards.model.MBMessage");
1041                    sb.append("</model-name>");
1042    
1043                    sb.append(
1044                            "<column><column-name>uuid</column-name><column-value><![CDATA[");
1045                    sb.append(getUuid());
1046                    sb.append("]]></column-value></column>");
1047                    sb.append(
1048                            "<column><column-name>messageId</column-name><column-value><![CDATA[");
1049                    sb.append(getMessageId());
1050                    sb.append("]]></column-value></column>");
1051                    sb.append(
1052                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
1053                    sb.append(getGroupId());
1054                    sb.append("]]></column-value></column>");
1055                    sb.append(
1056                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
1057                    sb.append(getCompanyId());
1058                    sb.append("]]></column-value></column>");
1059                    sb.append(
1060                            "<column><column-name>userId</column-name><column-value><![CDATA[");
1061                    sb.append(getUserId());
1062                    sb.append("]]></column-value></column>");
1063                    sb.append(
1064                            "<column><column-name>userName</column-name><column-value><![CDATA[");
1065                    sb.append(getUserName());
1066                    sb.append("]]></column-value></column>");
1067                    sb.append(
1068                            "<column><column-name>createDate</column-name><column-value><![CDATA[");
1069                    sb.append(getCreateDate());
1070                    sb.append("]]></column-value></column>");
1071                    sb.append(
1072                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
1073                    sb.append(getModifiedDate());
1074                    sb.append("]]></column-value></column>");
1075                    sb.append(
1076                            "<column><column-name>classNameId</column-name><column-value><![CDATA[");
1077                    sb.append(getClassNameId());
1078                    sb.append("]]></column-value></column>");
1079                    sb.append(
1080                            "<column><column-name>classPK</column-name><column-value><![CDATA[");
1081                    sb.append(getClassPK());
1082                    sb.append("]]></column-value></column>");
1083                    sb.append(
1084                            "<column><column-name>categoryId</column-name><column-value><![CDATA[");
1085                    sb.append(getCategoryId());
1086                    sb.append("]]></column-value></column>");
1087                    sb.append(
1088                            "<column><column-name>threadId</column-name><column-value><![CDATA[");
1089                    sb.append(getThreadId());
1090                    sb.append("]]></column-value></column>");
1091                    sb.append(
1092                            "<column><column-name>rootMessageId</column-name><column-value><![CDATA[");
1093                    sb.append(getRootMessageId());
1094                    sb.append("]]></column-value></column>");
1095                    sb.append(
1096                            "<column><column-name>parentMessageId</column-name><column-value><![CDATA[");
1097                    sb.append(getParentMessageId());
1098                    sb.append("]]></column-value></column>");
1099                    sb.append(
1100                            "<column><column-name>subject</column-name><column-value><![CDATA[");
1101                    sb.append(getSubject());
1102                    sb.append("]]></column-value></column>");
1103                    sb.append(
1104                            "<column><column-name>body</column-name><column-value><![CDATA[");
1105                    sb.append(getBody());
1106                    sb.append("]]></column-value></column>");
1107                    sb.append(
1108                            "<column><column-name>format</column-name><column-value><![CDATA[");
1109                    sb.append(getFormat());
1110                    sb.append("]]></column-value></column>");
1111                    sb.append(
1112                            "<column><column-name>attachments</column-name><column-value><![CDATA[");
1113                    sb.append(getAttachments());
1114                    sb.append("]]></column-value></column>");
1115                    sb.append(
1116                            "<column><column-name>anonymous</column-name><column-value><![CDATA[");
1117                    sb.append(getAnonymous());
1118                    sb.append("]]></column-value></column>");
1119                    sb.append(
1120                            "<column><column-name>priority</column-name><column-value><![CDATA[");
1121                    sb.append(getPriority());
1122                    sb.append("]]></column-value></column>");
1123                    sb.append(
1124                            "<column><column-name>allowPingbacks</column-name><column-value><![CDATA[");
1125                    sb.append(getAllowPingbacks());
1126                    sb.append("]]></column-value></column>");
1127                    sb.append(
1128                            "<column><column-name>answer</column-name><column-value><![CDATA[");
1129                    sb.append(getAnswer());
1130                    sb.append("]]></column-value></column>");
1131                    sb.append(
1132                            "<column><column-name>status</column-name><column-value><![CDATA[");
1133                    sb.append(getStatus());
1134                    sb.append("]]></column-value></column>");
1135                    sb.append(
1136                            "<column><column-name>statusByUserId</column-name><column-value><![CDATA[");
1137                    sb.append(getStatusByUserId());
1138                    sb.append("]]></column-value></column>");
1139                    sb.append(
1140                            "<column><column-name>statusByUserName</column-name><column-value><![CDATA[");
1141                    sb.append(getStatusByUserName());
1142                    sb.append("]]></column-value></column>");
1143                    sb.append(
1144                            "<column><column-name>statusDate</column-name><column-value><![CDATA[");
1145                    sb.append(getStatusDate());
1146                    sb.append("]]></column-value></column>");
1147    
1148                    sb.append("</model>");
1149    
1150                    return sb.toString();
1151            }
1152    
1153            private static ClassLoader _classLoader = MBMessage.class.getClassLoader();
1154            private static Class<?>[] _escapedModelProxyInterfaces = new Class[] {
1155                            MBMessage.class
1156                    };
1157            private String _uuid;
1158            private String _originalUuid;
1159            private long _messageId;
1160            private long _groupId;
1161            private long _originalGroupId;
1162            private boolean _setOriginalGroupId;
1163            private long _companyId;
1164            private long _originalCompanyId;
1165            private boolean _setOriginalCompanyId;
1166            private long _userId;
1167            private String _userUuid;
1168            private long _originalUserId;
1169            private boolean _setOriginalUserId;
1170            private String _userName;
1171            private Date _createDate;
1172            private Date _modifiedDate;
1173            private long _classNameId;
1174            private long _originalClassNameId;
1175            private boolean _setOriginalClassNameId;
1176            private long _classPK;
1177            private long _originalClassPK;
1178            private boolean _setOriginalClassPK;
1179            private long _categoryId;
1180            private long _originalCategoryId;
1181            private boolean _setOriginalCategoryId;
1182            private long _threadId;
1183            private long _originalThreadId;
1184            private boolean _setOriginalThreadId;
1185            private long _rootMessageId;
1186            private long _parentMessageId;
1187            private long _originalParentMessageId;
1188            private boolean _setOriginalParentMessageId;
1189            private String _subject;
1190            private String _body;
1191            private String _format;
1192            private boolean _attachments;
1193            private boolean _anonymous;
1194            private double _priority;
1195            private boolean _allowPingbacks;
1196            private boolean _answer;
1197            private boolean _originalAnswer;
1198            private boolean _setOriginalAnswer;
1199            private int _status;
1200            private int _originalStatus;
1201            private boolean _setOriginalStatus;
1202            private long _statusByUserId;
1203            private String _statusByUserUuid;
1204            private String _statusByUserName;
1205            private Date _statusDate;
1206            private transient ExpandoBridge _expandoBridge;
1207            private long _columnBitmask;
1208            private MBMessage _escapedModelProxy;
1209    }