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