001    /**
002     * Copyright (c) 2000-present 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.blogs.model.impl;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
020    import com.liferay.portal.kernel.exception.PortalException;
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.model.CacheModel;
026    import com.liferay.portal.model.User;
027    import com.liferay.portal.model.impl.BaseModelImpl;
028    import com.liferay.portal.service.ServiceContext;
029    import com.liferay.portal.service.UserLocalServiceUtil;
030    
031    import com.liferay.portlet.blogs.model.BlogsStatsUser;
032    import com.liferay.portlet.blogs.model.BlogsStatsUserModel;
033    import com.liferay.portlet.expando.model.ExpandoBridge;
034    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
035    
036    import java.io.Serializable;
037    
038    import java.sql.Types;
039    
040    import java.util.Date;
041    import java.util.HashMap;
042    import java.util.Map;
043    
044    /**
045     * The base model implementation for the BlogsStatsUser service. Represents a row in the "BlogsStatsUser" database table, with each column mapped to a property of this class.
046     *
047     * <p>
048     * This implementation and its corresponding interface {@link BlogsStatsUserModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link BlogsStatsUserImpl}.
049     * </p>
050     *
051     * @author Brian Wing Shun Chan
052     * @see BlogsStatsUserImpl
053     * @see BlogsStatsUser
054     * @see BlogsStatsUserModel
055     * @generated
056     */
057    @ProviderType
058    public class BlogsStatsUserModelImpl extends BaseModelImpl<BlogsStatsUser>
059            implements BlogsStatsUserModel {
060            /*
061             * NOTE FOR DEVELOPERS:
062             *
063             * Never modify or reference this class directly. All methods that expect a blogs stats user model instance should use the {@link BlogsStatsUser} interface instead.
064             */
065            public static final String TABLE_NAME = "BlogsStatsUser";
066            public static final Object[][] TABLE_COLUMNS = {
067                            { "statsUserId", Types.BIGINT },
068                            { "groupId", Types.BIGINT },
069                            { "companyId", Types.BIGINT },
070                            { "userId", Types.BIGINT },
071                            { "entryCount", Types.INTEGER },
072                            { "lastPostDate", Types.TIMESTAMP },
073                            { "ratingsTotalEntries", Types.INTEGER },
074                            { "ratingsTotalScore", Types.DOUBLE },
075                            { "ratingsAverageScore", Types.DOUBLE }
076                    };
077            public static final Map<String, Integer> TABLE_COLUMNS_MAP = new HashMap<String, Integer>();
078    
079            static {
080                    TABLE_COLUMNS_MAP.put("statsUserId", Types.BIGINT);
081                    TABLE_COLUMNS_MAP.put("groupId", Types.BIGINT);
082                    TABLE_COLUMNS_MAP.put("companyId", Types.BIGINT);
083                    TABLE_COLUMNS_MAP.put("userId", Types.BIGINT);
084                    TABLE_COLUMNS_MAP.put("entryCount", Types.INTEGER);
085                    TABLE_COLUMNS_MAP.put("lastPostDate", Types.TIMESTAMP);
086                    TABLE_COLUMNS_MAP.put("ratingsTotalEntries", Types.INTEGER);
087                    TABLE_COLUMNS_MAP.put("ratingsTotalScore", Types.DOUBLE);
088                    TABLE_COLUMNS_MAP.put("ratingsAverageScore", Types.DOUBLE);
089            }
090    
091            public static final String TABLE_SQL_CREATE = "create table BlogsStatsUser (statsUserId LONG not null primary key,groupId LONG,companyId LONG,userId LONG,entryCount INTEGER,lastPostDate DATE null,ratingsTotalEntries INTEGER,ratingsTotalScore DOUBLE,ratingsAverageScore DOUBLE)";
092            public static final String TABLE_SQL_DROP = "drop table BlogsStatsUser";
093            public static final String ORDER_BY_JPQL = " ORDER BY blogsStatsUser.entryCount DESC";
094            public static final String ORDER_BY_SQL = " ORDER BY BlogsStatsUser.entryCount DESC";
095            public static final String DATA_SOURCE = "liferayDataSource";
096            public static final String SESSION_FACTORY = "liferaySessionFactory";
097            public static final String TX_MANAGER = "liferayTransactionManager";
098            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
099                                    "value.object.entity.cache.enabled.com.liferay.portlet.blogs.model.BlogsStatsUser"),
100                            true);
101            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
102                                    "value.object.finder.cache.enabled.com.liferay.portlet.blogs.model.BlogsStatsUser"),
103                            true);
104            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
105                                    "value.object.column.bitmask.enabled.com.liferay.portlet.blogs.model.BlogsStatsUser"),
106                            true);
107            public static final long COMPANYID_COLUMN_BITMASK = 1L;
108            public static final long ENTRYCOUNT_COLUMN_BITMASK = 2L;
109            public static final long GROUPID_COLUMN_BITMASK = 4L;
110            public static final long LASTPOSTDATE_COLUMN_BITMASK = 8L;
111            public static final long USERID_COLUMN_BITMASK = 16L;
112            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
113                                    "lock.expiration.time.com.liferay.portlet.blogs.model.BlogsStatsUser"));
114    
115            public BlogsStatsUserModelImpl() {
116            }
117    
118            @Override
119            public long getPrimaryKey() {
120                    return _statsUserId;
121            }
122    
123            @Override
124            public void setPrimaryKey(long primaryKey) {
125                    setStatsUserId(primaryKey);
126            }
127    
128            @Override
129            public Serializable getPrimaryKeyObj() {
130                    return _statsUserId;
131            }
132    
133            @Override
134            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
135                    setPrimaryKey(((Long)primaryKeyObj).longValue());
136            }
137    
138            @Override
139            public Class<?> getModelClass() {
140                    return BlogsStatsUser.class;
141            }
142    
143            @Override
144            public String getModelClassName() {
145                    return BlogsStatsUser.class.getName();
146            }
147    
148            @Override
149            public Map<String, Object> getModelAttributes() {
150                    Map<String, Object> attributes = new HashMap<String, Object>();
151    
152                    attributes.put("statsUserId", getStatsUserId());
153                    attributes.put("groupId", getGroupId());
154                    attributes.put("companyId", getCompanyId());
155                    attributes.put("userId", getUserId());
156                    attributes.put("entryCount", getEntryCount());
157                    attributes.put("lastPostDate", getLastPostDate());
158                    attributes.put("ratingsTotalEntries", getRatingsTotalEntries());
159                    attributes.put("ratingsTotalScore", getRatingsTotalScore());
160                    attributes.put("ratingsAverageScore", getRatingsAverageScore());
161    
162                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
163                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
164    
165                    return attributes;
166            }
167    
168            @Override
169            public void setModelAttributes(Map<String, Object> attributes) {
170                    Long statsUserId = (Long)attributes.get("statsUserId");
171    
172                    if (statsUserId != null) {
173                            setStatsUserId(statsUserId);
174                    }
175    
176                    Long groupId = (Long)attributes.get("groupId");
177    
178                    if (groupId != null) {
179                            setGroupId(groupId);
180                    }
181    
182                    Long companyId = (Long)attributes.get("companyId");
183    
184                    if (companyId != null) {
185                            setCompanyId(companyId);
186                    }
187    
188                    Long userId = (Long)attributes.get("userId");
189    
190                    if (userId != null) {
191                            setUserId(userId);
192                    }
193    
194                    Integer entryCount = (Integer)attributes.get("entryCount");
195    
196                    if (entryCount != null) {
197                            setEntryCount(entryCount);
198                    }
199    
200                    Date lastPostDate = (Date)attributes.get("lastPostDate");
201    
202                    if (lastPostDate != null) {
203                            setLastPostDate(lastPostDate);
204                    }
205    
206                    Integer ratingsTotalEntries = (Integer)attributes.get(
207                                    "ratingsTotalEntries");
208    
209                    if (ratingsTotalEntries != null) {
210                            setRatingsTotalEntries(ratingsTotalEntries);
211                    }
212    
213                    Double ratingsTotalScore = (Double)attributes.get("ratingsTotalScore");
214    
215                    if (ratingsTotalScore != null) {
216                            setRatingsTotalScore(ratingsTotalScore);
217                    }
218    
219                    Double ratingsAverageScore = (Double)attributes.get(
220                                    "ratingsAverageScore");
221    
222                    if (ratingsAverageScore != null) {
223                            setRatingsAverageScore(ratingsAverageScore);
224                    }
225            }
226    
227            @Override
228            public long getStatsUserId() {
229                    return _statsUserId;
230            }
231    
232            @Override
233            public void setStatsUserId(long statsUserId) {
234                    _statsUserId = statsUserId;
235            }
236    
237            @Override
238            public String getStatsUserUuid() {
239                    try {
240                            User user = UserLocalServiceUtil.getUserById(getStatsUserId());
241    
242                            return user.getUuid();
243                    }
244                    catch (PortalException pe) {
245                            return StringPool.BLANK;
246                    }
247            }
248    
249            @Override
250            public void setStatsUserUuid(String statsUserUuid) {
251            }
252    
253            @Override
254            public long getGroupId() {
255                    return _groupId;
256            }
257    
258            @Override
259            public void setGroupId(long groupId) {
260                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
261    
262                    if (!_setOriginalGroupId) {
263                            _setOriginalGroupId = true;
264    
265                            _originalGroupId = _groupId;
266                    }
267    
268                    _groupId = groupId;
269            }
270    
271            public long getOriginalGroupId() {
272                    return _originalGroupId;
273            }
274    
275            @Override
276            public long getCompanyId() {
277                    return _companyId;
278            }
279    
280            @Override
281            public void setCompanyId(long companyId) {
282                    _columnBitmask |= COMPANYID_COLUMN_BITMASK;
283    
284                    if (!_setOriginalCompanyId) {
285                            _setOriginalCompanyId = true;
286    
287                            _originalCompanyId = _companyId;
288                    }
289    
290                    _companyId = companyId;
291            }
292    
293            public long getOriginalCompanyId() {
294                    return _originalCompanyId;
295            }
296    
297            @Override
298            public long getUserId() {
299                    return _userId;
300            }
301    
302            @Override
303            public void setUserId(long userId) {
304                    _columnBitmask |= USERID_COLUMN_BITMASK;
305    
306                    if (!_setOriginalUserId) {
307                            _setOriginalUserId = true;
308    
309                            _originalUserId = _userId;
310                    }
311    
312                    _userId = userId;
313            }
314    
315            @Override
316            public String getUserUuid() {
317                    try {
318                            User user = UserLocalServiceUtil.getUserById(getUserId());
319    
320                            return user.getUuid();
321                    }
322                    catch (PortalException pe) {
323                            return StringPool.BLANK;
324                    }
325            }
326    
327            @Override
328            public void setUserUuid(String userUuid) {
329            }
330    
331            public long getOriginalUserId() {
332                    return _originalUserId;
333            }
334    
335            @Override
336            public int getEntryCount() {
337                    return _entryCount;
338            }
339    
340            @Override
341            public void setEntryCount(int entryCount) {
342                    _columnBitmask = -1L;
343    
344                    if (!_setOriginalEntryCount) {
345                            _setOriginalEntryCount = true;
346    
347                            _originalEntryCount = _entryCount;
348                    }
349    
350                    _entryCount = entryCount;
351            }
352    
353            public int getOriginalEntryCount() {
354                    return _originalEntryCount;
355            }
356    
357            @Override
358            public Date getLastPostDate() {
359                    return _lastPostDate;
360            }
361    
362            @Override
363            public void setLastPostDate(Date lastPostDate) {
364                    _columnBitmask |= LASTPOSTDATE_COLUMN_BITMASK;
365    
366                    if (_originalLastPostDate == null) {
367                            _originalLastPostDate = _lastPostDate;
368                    }
369    
370                    _lastPostDate = lastPostDate;
371            }
372    
373            public Date getOriginalLastPostDate() {
374                    return _originalLastPostDate;
375            }
376    
377            @Override
378            public int getRatingsTotalEntries() {
379                    return _ratingsTotalEntries;
380            }
381    
382            @Override
383            public void setRatingsTotalEntries(int ratingsTotalEntries) {
384                    _ratingsTotalEntries = ratingsTotalEntries;
385            }
386    
387            @Override
388            public double getRatingsTotalScore() {
389                    return _ratingsTotalScore;
390            }
391    
392            @Override
393            public void setRatingsTotalScore(double ratingsTotalScore) {
394                    _ratingsTotalScore = ratingsTotalScore;
395            }
396    
397            @Override
398            public double getRatingsAverageScore() {
399                    return _ratingsAverageScore;
400            }
401    
402            @Override
403            public void setRatingsAverageScore(double ratingsAverageScore) {
404                    _ratingsAverageScore = ratingsAverageScore;
405            }
406    
407            public long getColumnBitmask() {
408                    return _columnBitmask;
409            }
410    
411            @Override
412            public ExpandoBridge getExpandoBridge() {
413                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
414                            BlogsStatsUser.class.getName(), getPrimaryKey());
415            }
416    
417            @Override
418            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
419                    ExpandoBridge expandoBridge = getExpandoBridge();
420    
421                    expandoBridge.setAttributes(serviceContext);
422            }
423    
424            @Override
425            public BlogsStatsUser toEscapedModel() {
426                    if (_escapedModel == null) {
427                            _escapedModel = (BlogsStatsUser)ProxyUtil.newProxyInstance(_classLoader,
428                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
429                    }
430    
431                    return _escapedModel;
432            }
433    
434            @Override
435            public Object clone() {
436                    BlogsStatsUserImpl blogsStatsUserImpl = new BlogsStatsUserImpl();
437    
438                    blogsStatsUserImpl.setStatsUserId(getStatsUserId());
439                    blogsStatsUserImpl.setGroupId(getGroupId());
440                    blogsStatsUserImpl.setCompanyId(getCompanyId());
441                    blogsStatsUserImpl.setUserId(getUserId());
442                    blogsStatsUserImpl.setEntryCount(getEntryCount());
443                    blogsStatsUserImpl.setLastPostDate(getLastPostDate());
444                    blogsStatsUserImpl.setRatingsTotalEntries(getRatingsTotalEntries());
445                    blogsStatsUserImpl.setRatingsTotalScore(getRatingsTotalScore());
446                    blogsStatsUserImpl.setRatingsAverageScore(getRatingsAverageScore());
447    
448                    blogsStatsUserImpl.resetOriginalValues();
449    
450                    return blogsStatsUserImpl;
451            }
452    
453            @Override
454            public int compareTo(BlogsStatsUser blogsStatsUser) {
455                    int value = 0;
456    
457                    if (getEntryCount() < blogsStatsUser.getEntryCount()) {
458                            value = -1;
459                    }
460                    else if (getEntryCount() > blogsStatsUser.getEntryCount()) {
461                            value = 1;
462                    }
463                    else {
464                            value = 0;
465                    }
466    
467                    value = value * -1;
468    
469                    if (value != 0) {
470                            return value;
471                    }
472    
473                    return 0;
474            }
475    
476            @Override
477            public boolean equals(Object obj) {
478                    if (this == obj) {
479                            return true;
480                    }
481    
482                    if (!(obj instanceof BlogsStatsUser)) {
483                            return false;
484                    }
485    
486                    BlogsStatsUser blogsStatsUser = (BlogsStatsUser)obj;
487    
488                    long primaryKey = blogsStatsUser.getPrimaryKey();
489    
490                    if (getPrimaryKey() == primaryKey) {
491                            return true;
492                    }
493                    else {
494                            return false;
495                    }
496            }
497    
498            @Override
499            public int hashCode() {
500                    return (int)getPrimaryKey();
501            }
502    
503            @Override
504            public boolean isEntityCacheEnabled() {
505                    return ENTITY_CACHE_ENABLED;
506            }
507    
508            @Override
509            public boolean isFinderCacheEnabled() {
510                    return FINDER_CACHE_ENABLED;
511            }
512    
513            @Override
514            public void resetOriginalValues() {
515                    BlogsStatsUserModelImpl blogsStatsUserModelImpl = this;
516    
517                    blogsStatsUserModelImpl._originalGroupId = blogsStatsUserModelImpl._groupId;
518    
519                    blogsStatsUserModelImpl._setOriginalGroupId = false;
520    
521                    blogsStatsUserModelImpl._originalCompanyId = blogsStatsUserModelImpl._companyId;
522    
523                    blogsStatsUserModelImpl._setOriginalCompanyId = false;
524    
525                    blogsStatsUserModelImpl._originalUserId = blogsStatsUserModelImpl._userId;
526    
527                    blogsStatsUserModelImpl._setOriginalUserId = false;
528    
529                    blogsStatsUserModelImpl._originalEntryCount = blogsStatsUserModelImpl._entryCount;
530    
531                    blogsStatsUserModelImpl._setOriginalEntryCount = false;
532    
533                    blogsStatsUserModelImpl._originalLastPostDate = blogsStatsUserModelImpl._lastPostDate;
534    
535                    blogsStatsUserModelImpl._columnBitmask = 0;
536            }
537    
538            @Override
539            public CacheModel<BlogsStatsUser> toCacheModel() {
540                    BlogsStatsUserCacheModel blogsStatsUserCacheModel = new BlogsStatsUserCacheModel();
541    
542                    blogsStatsUserCacheModel.statsUserId = getStatsUserId();
543    
544                    blogsStatsUserCacheModel.groupId = getGroupId();
545    
546                    blogsStatsUserCacheModel.companyId = getCompanyId();
547    
548                    blogsStatsUserCacheModel.userId = getUserId();
549    
550                    blogsStatsUserCacheModel.entryCount = getEntryCount();
551    
552                    Date lastPostDate = getLastPostDate();
553    
554                    if (lastPostDate != null) {
555                            blogsStatsUserCacheModel.lastPostDate = lastPostDate.getTime();
556                    }
557                    else {
558                            blogsStatsUserCacheModel.lastPostDate = Long.MIN_VALUE;
559                    }
560    
561                    blogsStatsUserCacheModel.ratingsTotalEntries = getRatingsTotalEntries();
562    
563                    blogsStatsUserCacheModel.ratingsTotalScore = getRatingsTotalScore();
564    
565                    blogsStatsUserCacheModel.ratingsAverageScore = getRatingsAverageScore();
566    
567                    return blogsStatsUserCacheModel;
568            }
569    
570            @Override
571            public String toString() {
572                    StringBundler sb = new StringBundler(19);
573    
574                    sb.append("{statsUserId=");
575                    sb.append(getStatsUserId());
576                    sb.append(", groupId=");
577                    sb.append(getGroupId());
578                    sb.append(", companyId=");
579                    sb.append(getCompanyId());
580                    sb.append(", userId=");
581                    sb.append(getUserId());
582                    sb.append(", entryCount=");
583                    sb.append(getEntryCount());
584                    sb.append(", lastPostDate=");
585                    sb.append(getLastPostDate());
586                    sb.append(", ratingsTotalEntries=");
587                    sb.append(getRatingsTotalEntries());
588                    sb.append(", ratingsTotalScore=");
589                    sb.append(getRatingsTotalScore());
590                    sb.append(", ratingsAverageScore=");
591                    sb.append(getRatingsAverageScore());
592                    sb.append("}");
593    
594                    return sb.toString();
595            }
596    
597            @Override
598            public String toXmlString() {
599                    StringBundler sb = new StringBundler(31);
600    
601                    sb.append("<model><model-name>");
602                    sb.append("com.liferay.portlet.blogs.model.BlogsStatsUser");
603                    sb.append("</model-name>");
604    
605                    sb.append(
606                            "<column><column-name>statsUserId</column-name><column-value><![CDATA[");
607                    sb.append(getStatsUserId());
608                    sb.append("]]></column-value></column>");
609                    sb.append(
610                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
611                    sb.append(getGroupId());
612                    sb.append("]]></column-value></column>");
613                    sb.append(
614                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
615                    sb.append(getCompanyId());
616                    sb.append("]]></column-value></column>");
617                    sb.append(
618                            "<column><column-name>userId</column-name><column-value><![CDATA[");
619                    sb.append(getUserId());
620                    sb.append("]]></column-value></column>");
621                    sb.append(
622                            "<column><column-name>entryCount</column-name><column-value><![CDATA[");
623                    sb.append(getEntryCount());
624                    sb.append("]]></column-value></column>");
625                    sb.append(
626                            "<column><column-name>lastPostDate</column-name><column-value><![CDATA[");
627                    sb.append(getLastPostDate());
628                    sb.append("]]></column-value></column>");
629                    sb.append(
630                            "<column><column-name>ratingsTotalEntries</column-name><column-value><![CDATA[");
631                    sb.append(getRatingsTotalEntries());
632                    sb.append("]]></column-value></column>");
633                    sb.append(
634                            "<column><column-name>ratingsTotalScore</column-name><column-value><![CDATA[");
635                    sb.append(getRatingsTotalScore());
636                    sb.append("]]></column-value></column>");
637                    sb.append(
638                            "<column><column-name>ratingsAverageScore</column-name><column-value><![CDATA[");
639                    sb.append(getRatingsAverageScore());
640                    sb.append("]]></column-value></column>");
641    
642                    sb.append("</model>");
643    
644                    return sb.toString();
645            }
646    
647            private static final ClassLoader _classLoader = BlogsStatsUser.class.getClassLoader();
648            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
649                            BlogsStatsUser.class
650                    };
651            private long _statsUserId;
652            private long _groupId;
653            private long _originalGroupId;
654            private boolean _setOriginalGroupId;
655            private long _companyId;
656            private long _originalCompanyId;
657            private boolean _setOriginalCompanyId;
658            private long _userId;
659            private long _originalUserId;
660            private boolean _setOriginalUserId;
661            private int _entryCount;
662            private int _originalEntryCount;
663            private boolean _setOriginalEntryCount;
664            private Date _lastPostDate;
665            private Date _originalLastPostDate;
666            private int _ratingsTotalEntries;
667            private double _ratingsTotalScore;
668            private double _ratingsAverageScore;
669            private long _columnBitmask;
670            private BlogsStatsUser _escapedModel;
671    }