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.util.GetterUtil;
020    import com.liferay.portal.kernel.util.ProxyUtil;
021    import com.liferay.portal.kernel.util.StringBundler;
022    import com.liferay.portal.model.CacheModel;
023    import com.liferay.portal.model.impl.BaseModelImpl;
024    import com.liferay.portal.service.ServiceContext;
025    import com.liferay.portal.util.PortalUtil;
026    
027    import com.liferay.portlet.expando.model.ExpandoBridge;
028    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
029    import com.liferay.portlet.messageboards.model.MBStatsUser;
030    import com.liferay.portlet.messageboards.model.MBStatsUserModel;
031    
032    import java.io.Serializable;
033    
034    import java.sql.Types;
035    
036    import java.util.Date;
037    
038    /**
039     * The base model implementation for the MBStatsUser service. Represents a row in the "MBStatsUser" database table, with each column mapped to a property of this class.
040     *
041     * <p>
042     * This implementation and its corresponding interface {@link com.liferay.portlet.messageboards.model.MBStatsUserModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link MBStatsUserImpl}.
043     * </p>
044     *
045     * @author Brian Wing Shun Chan
046     * @see MBStatsUserImpl
047     * @see com.liferay.portlet.messageboards.model.MBStatsUser
048     * @see com.liferay.portlet.messageboards.model.MBStatsUserModel
049     * @generated
050     */
051    public class MBStatsUserModelImpl extends BaseModelImpl<MBStatsUser>
052            implements MBStatsUserModel {
053            /*
054             * NOTE FOR DEVELOPERS:
055             *
056             * Never modify or reference this class directly. All methods that expect a message boards stats user model instance should use the {@link com.liferay.portlet.messageboards.model.MBStatsUser} interface instead.
057             */
058            public static final String TABLE_NAME = "MBStatsUser";
059            public static final Object[][] TABLE_COLUMNS = {
060                            { "statsUserId", Types.BIGINT },
061                            { "groupId", Types.BIGINT },
062                            { "userId", Types.BIGINT },
063                            { "messageCount", Types.INTEGER },
064                            { "lastPostDate", Types.TIMESTAMP }
065                    };
066            public static final String TABLE_SQL_CREATE = "create table MBStatsUser (statsUserId LONG not null primary key,groupId LONG,userId LONG,messageCount INTEGER,lastPostDate DATE null)";
067            public static final String TABLE_SQL_DROP = "drop table MBStatsUser";
068            public static final String ORDER_BY_JPQL = " ORDER BY mbStatsUser.messageCount DESC";
069            public static final String ORDER_BY_SQL = " ORDER BY MBStatsUser.messageCount DESC";
070            public static final String DATA_SOURCE = "liferayDataSource";
071            public static final String SESSION_FACTORY = "liferaySessionFactory";
072            public static final String TX_MANAGER = "liferayTransactionManager";
073            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
074                                    "value.object.entity.cache.enabled.com.liferay.portlet.messageboards.model.MBStatsUser"),
075                            true);
076            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
077                                    "value.object.finder.cache.enabled.com.liferay.portlet.messageboards.model.MBStatsUser"),
078                            true);
079            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
080                                    "value.object.column.bitmask.enabled.com.liferay.portlet.messageboards.model.MBStatsUser"),
081                            true);
082            public static long GROUPID_COLUMN_BITMASK = 1L;
083            public static long MESSAGECOUNT_COLUMN_BITMASK = 2L;
084            public static long USERID_COLUMN_BITMASK = 4L;
085            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
086                                    "lock.expiration.time.com.liferay.portlet.messageboards.model.MBStatsUser"));
087    
088            public MBStatsUserModelImpl() {
089            }
090    
091            public long getPrimaryKey() {
092                    return _statsUserId;
093            }
094    
095            public void setPrimaryKey(long primaryKey) {
096                    setStatsUserId(primaryKey);
097            }
098    
099            public Serializable getPrimaryKeyObj() {
100                    return new Long(_statsUserId);
101            }
102    
103            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
104                    setPrimaryKey(((Long)primaryKeyObj).longValue());
105            }
106    
107            public Class<?> getModelClass() {
108                    return MBStatsUser.class;
109            }
110    
111            public String getModelClassName() {
112                    return MBStatsUser.class.getName();
113            }
114    
115            public long getStatsUserId() {
116                    return _statsUserId;
117            }
118    
119            public void setStatsUserId(long statsUserId) {
120                    _statsUserId = statsUserId;
121            }
122    
123            public String getStatsUserUuid() throws SystemException {
124                    return PortalUtil.getUserValue(getStatsUserId(), "uuid", _statsUserUuid);
125            }
126    
127            public void setStatsUserUuid(String statsUserUuid) {
128                    _statsUserUuid = statsUserUuid;
129            }
130    
131            public long getGroupId() {
132                    return _groupId;
133            }
134    
135            public void setGroupId(long groupId) {
136                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
137    
138                    if (!_setOriginalGroupId) {
139                            _setOriginalGroupId = true;
140    
141                            _originalGroupId = _groupId;
142                    }
143    
144                    _groupId = groupId;
145            }
146    
147            public long getOriginalGroupId() {
148                    return _originalGroupId;
149            }
150    
151            public long getUserId() {
152                    return _userId;
153            }
154    
155            public void setUserId(long userId) {
156                    _columnBitmask |= USERID_COLUMN_BITMASK;
157    
158                    if (!_setOriginalUserId) {
159                            _setOriginalUserId = true;
160    
161                            _originalUserId = _userId;
162                    }
163    
164                    _userId = userId;
165            }
166    
167            public String getUserUuid() throws SystemException {
168                    return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
169            }
170    
171            public void setUserUuid(String userUuid) {
172                    _userUuid = userUuid;
173            }
174    
175            public long getOriginalUserId() {
176                    return _originalUserId;
177            }
178    
179            public int getMessageCount() {
180                    return _messageCount;
181            }
182    
183            public void setMessageCount(int messageCount) {
184                    _columnBitmask = -1L;
185    
186                    if (!_setOriginalMessageCount) {
187                            _setOriginalMessageCount = true;
188    
189                            _originalMessageCount = _messageCount;
190                    }
191    
192                    _messageCount = messageCount;
193            }
194    
195            public int getOriginalMessageCount() {
196                    return _originalMessageCount;
197            }
198    
199            public Date getLastPostDate() {
200                    return _lastPostDate;
201            }
202    
203            public void setLastPostDate(Date lastPostDate) {
204                    _lastPostDate = lastPostDate;
205            }
206    
207            public long getColumnBitmask() {
208                    return _columnBitmask;
209            }
210    
211            @Override
212            public MBStatsUser toEscapedModel() {
213                    if (_escapedModelProxy == null) {
214                            _escapedModelProxy = (MBStatsUser)ProxyUtil.newProxyInstance(_classLoader,
215                                            _escapedModelProxyInterfaces,
216                                            new AutoEscapeBeanHandler(this));
217                    }
218    
219                    return _escapedModelProxy;
220            }
221    
222            @Override
223            public ExpandoBridge getExpandoBridge() {
224                    if (_expandoBridge == null) {
225                            _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(0,
226                                            MBStatsUser.class.getName(), getPrimaryKey());
227                    }
228    
229                    return _expandoBridge;
230            }
231    
232            @Override
233            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
234                    getExpandoBridge().setAttributes(serviceContext);
235            }
236    
237            @Override
238            public Object clone() {
239                    MBStatsUserImpl mbStatsUserImpl = new MBStatsUserImpl();
240    
241                    mbStatsUserImpl.setStatsUserId(getStatsUserId());
242                    mbStatsUserImpl.setGroupId(getGroupId());
243                    mbStatsUserImpl.setUserId(getUserId());
244                    mbStatsUserImpl.setMessageCount(getMessageCount());
245                    mbStatsUserImpl.setLastPostDate(getLastPostDate());
246    
247                    mbStatsUserImpl.resetOriginalValues();
248    
249                    return mbStatsUserImpl;
250            }
251    
252            public int compareTo(MBStatsUser mbStatsUser) {
253                    int value = 0;
254    
255                    if (getMessageCount() < mbStatsUser.getMessageCount()) {
256                            value = -1;
257                    }
258                    else if (getMessageCount() > mbStatsUser.getMessageCount()) {
259                            value = 1;
260                    }
261                    else {
262                            value = 0;
263                    }
264    
265                    value = value * -1;
266    
267                    if (value != 0) {
268                            return value;
269                    }
270    
271                    return 0;
272            }
273    
274            @Override
275            public boolean equals(Object obj) {
276                    if (obj == null) {
277                            return false;
278                    }
279    
280                    MBStatsUser mbStatsUser = null;
281    
282                    try {
283                            mbStatsUser = (MBStatsUser)obj;
284                    }
285                    catch (ClassCastException cce) {
286                            return false;
287                    }
288    
289                    long primaryKey = mbStatsUser.getPrimaryKey();
290    
291                    if (getPrimaryKey() == primaryKey) {
292                            return true;
293                    }
294                    else {
295                            return false;
296                    }
297            }
298    
299            @Override
300            public int hashCode() {
301                    return (int)getPrimaryKey();
302            }
303    
304            @Override
305            public void resetOriginalValues() {
306                    MBStatsUserModelImpl mbStatsUserModelImpl = this;
307    
308                    mbStatsUserModelImpl._originalGroupId = mbStatsUserModelImpl._groupId;
309    
310                    mbStatsUserModelImpl._setOriginalGroupId = false;
311    
312                    mbStatsUserModelImpl._originalUserId = mbStatsUserModelImpl._userId;
313    
314                    mbStatsUserModelImpl._setOriginalUserId = false;
315    
316                    mbStatsUserModelImpl._originalMessageCount = mbStatsUserModelImpl._messageCount;
317    
318                    mbStatsUserModelImpl._setOriginalMessageCount = false;
319    
320                    mbStatsUserModelImpl._columnBitmask = 0;
321            }
322    
323            @Override
324            public CacheModel<MBStatsUser> toCacheModel() {
325                    MBStatsUserCacheModel mbStatsUserCacheModel = new MBStatsUserCacheModel();
326    
327                    mbStatsUserCacheModel.statsUserId = getStatsUserId();
328    
329                    mbStatsUserCacheModel.groupId = getGroupId();
330    
331                    mbStatsUserCacheModel.userId = getUserId();
332    
333                    mbStatsUserCacheModel.messageCount = getMessageCount();
334    
335                    Date lastPostDate = getLastPostDate();
336    
337                    if (lastPostDate != null) {
338                            mbStatsUserCacheModel.lastPostDate = lastPostDate.getTime();
339                    }
340                    else {
341                            mbStatsUserCacheModel.lastPostDate = Long.MIN_VALUE;
342                    }
343    
344                    return mbStatsUserCacheModel;
345            }
346    
347            @Override
348            public String toString() {
349                    StringBundler sb = new StringBundler(11);
350    
351                    sb.append("{statsUserId=");
352                    sb.append(getStatsUserId());
353                    sb.append(", groupId=");
354                    sb.append(getGroupId());
355                    sb.append(", userId=");
356                    sb.append(getUserId());
357                    sb.append(", messageCount=");
358                    sb.append(getMessageCount());
359                    sb.append(", lastPostDate=");
360                    sb.append(getLastPostDate());
361                    sb.append("}");
362    
363                    return sb.toString();
364            }
365    
366            public String toXmlString() {
367                    StringBundler sb = new StringBundler(19);
368    
369                    sb.append("<model><model-name>");
370                    sb.append("com.liferay.portlet.messageboards.model.MBStatsUser");
371                    sb.append("</model-name>");
372    
373                    sb.append(
374                            "<column><column-name>statsUserId</column-name><column-value><![CDATA[");
375                    sb.append(getStatsUserId());
376                    sb.append("]]></column-value></column>");
377                    sb.append(
378                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
379                    sb.append(getGroupId());
380                    sb.append("]]></column-value></column>");
381                    sb.append(
382                            "<column><column-name>userId</column-name><column-value><![CDATA[");
383                    sb.append(getUserId());
384                    sb.append("]]></column-value></column>");
385                    sb.append(
386                            "<column><column-name>messageCount</column-name><column-value><![CDATA[");
387                    sb.append(getMessageCount());
388                    sb.append("]]></column-value></column>");
389                    sb.append(
390                            "<column><column-name>lastPostDate</column-name><column-value><![CDATA[");
391                    sb.append(getLastPostDate());
392                    sb.append("]]></column-value></column>");
393    
394                    sb.append("</model>");
395    
396                    return sb.toString();
397            }
398    
399            private static ClassLoader _classLoader = MBStatsUser.class.getClassLoader();
400            private static Class<?>[] _escapedModelProxyInterfaces = new Class[] {
401                            MBStatsUser.class
402                    };
403            private long _statsUserId;
404            private String _statsUserUuid;
405            private long _groupId;
406            private long _originalGroupId;
407            private boolean _setOriginalGroupId;
408            private long _userId;
409            private String _userUuid;
410            private long _originalUserId;
411            private boolean _setOriginalUserId;
412            private int _messageCount;
413            private int _originalMessageCount;
414            private boolean _setOriginalMessageCount;
415            private Date _lastPostDate;
416            private transient ExpandoBridge _expandoBridge;
417            private long _columnBitmask;
418            private MBStatsUser _escapedModelProxy;
419    }