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.portal.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.kernel.util.Validator;
026    import com.liferay.portal.model.CacheModel;
027    import com.liferay.portal.model.Subscription;
028    import com.liferay.portal.model.SubscriptionModel;
029    import com.liferay.portal.model.User;
030    import com.liferay.portal.service.ServiceContext;
031    import com.liferay.portal.service.UserLocalServiceUtil;
032    import com.liferay.portal.util.PortalUtil;
033    
034    import com.liferay.portlet.expando.model.ExpandoBridge;
035    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
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 Subscription service. Represents a row in the "Subscription" database table, with each column mapped to a property of this class.
047     *
048     * <p>
049     * This implementation and its corresponding interface {@link SubscriptionModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link SubscriptionImpl}.
050     * </p>
051     *
052     * @author Brian Wing Shun Chan
053     * @see SubscriptionImpl
054     * @see Subscription
055     * @see SubscriptionModel
056     * @generated
057     */
058    @ProviderType
059    public class SubscriptionModelImpl extends BaseModelImpl<Subscription>
060            implements SubscriptionModel {
061            /*
062             * NOTE FOR DEVELOPERS:
063             *
064             * Never modify or reference this class directly. All methods that expect a subscription model instance should use the {@link Subscription} interface instead.
065             */
066            public static final String TABLE_NAME = "Subscription";
067            public static final Object[][] TABLE_COLUMNS = {
068                            { "mvccVersion", Types.BIGINT },
069                            { "subscriptionId", 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                            { "frequency", Types.VARCHAR }
079                    };
080            public static final String TABLE_SQL_CREATE = "create table Subscription (mvccVersion LONG default 0,subscriptionId 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,frequency VARCHAR(75) null)";
081            public static final String TABLE_SQL_DROP = "drop table Subscription";
082            public static final String ORDER_BY_JPQL = " ORDER BY subscription.subscriptionId ASC";
083            public static final String ORDER_BY_SQL = " ORDER BY Subscription.subscriptionId ASC";
084            public static final String DATA_SOURCE = "liferayDataSource";
085            public static final String SESSION_FACTORY = "liferaySessionFactory";
086            public static final String TX_MANAGER = "liferayTransactionManager";
087            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
088                                    "value.object.entity.cache.enabled.com.liferay.portal.model.Subscription"),
089                            true);
090            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
091                                    "value.object.finder.cache.enabled.com.liferay.portal.model.Subscription"),
092                            true);
093            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
094                                    "value.object.column.bitmask.enabled.com.liferay.portal.model.Subscription"),
095                            true);
096            public static final long CLASSNAMEID_COLUMN_BITMASK = 1L;
097            public static final long CLASSPK_COLUMN_BITMASK = 2L;
098            public static final long COMPANYID_COLUMN_BITMASK = 4L;
099            public static final long GROUPID_COLUMN_BITMASK = 8L;
100            public static final long USERID_COLUMN_BITMASK = 16L;
101            public static final long SUBSCRIPTIONID_COLUMN_BITMASK = 32L;
102            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
103                                    "lock.expiration.time.com.liferay.portal.model.Subscription"));
104    
105            public SubscriptionModelImpl() {
106            }
107    
108            @Override
109            public long getPrimaryKey() {
110                    return _subscriptionId;
111            }
112    
113            @Override
114            public void setPrimaryKey(long primaryKey) {
115                    setSubscriptionId(primaryKey);
116            }
117    
118            @Override
119            public Serializable getPrimaryKeyObj() {
120                    return _subscriptionId;
121            }
122    
123            @Override
124            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
125                    setPrimaryKey(((Long)primaryKeyObj).longValue());
126            }
127    
128            @Override
129            public Class<?> getModelClass() {
130                    return Subscription.class;
131            }
132    
133            @Override
134            public String getModelClassName() {
135                    return Subscription.class.getName();
136            }
137    
138            @Override
139            public Map<String, Object> getModelAttributes() {
140                    Map<String, Object> attributes = new HashMap<String, Object>();
141    
142                    attributes.put("mvccVersion", getMvccVersion());
143                    attributes.put("subscriptionId", getSubscriptionId());
144                    attributes.put("groupId", getGroupId());
145                    attributes.put("companyId", getCompanyId());
146                    attributes.put("userId", getUserId());
147                    attributes.put("userName", getUserName());
148                    attributes.put("createDate", getCreateDate());
149                    attributes.put("modifiedDate", getModifiedDate());
150                    attributes.put("classNameId", getClassNameId());
151                    attributes.put("classPK", getClassPK());
152                    attributes.put("frequency", getFrequency());
153    
154                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
155                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
156    
157                    return attributes;
158            }
159    
160            @Override
161            public void setModelAttributes(Map<String, Object> attributes) {
162                    Long mvccVersion = (Long)attributes.get("mvccVersion");
163    
164                    if (mvccVersion != null) {
165                            setMvccVersion(mvccVersion);
166                    }
167    
168                    Long subscriptionId = (Long)attributes.get("subscriptionId");
169    
170                    if (subscriptionId != null) {
171                            setSubscriptionId(subscriptionId);
172                    }
173    
174                    Long groupId = (Long)attributes.get("groupId");
175    
176                    if (groupId != null) {
177                            setGroupId(groupId);
178                    }
179    
180                    Long companyId = (Long)attributes.get("companyId");
181    
182                    if (companyId != null) {
183                            setCompanyId(companyId);
184                    }
185    
186                    Long userId = (Long)attributes.get("userId");
187    
188                    if (userId != null) {
189                            setUserId(userId);
190                    }
191    
192                    String userName = (String)attributes.get("userName");
193    
194                    if (userName != null) {
195                            setUserName(userName);
196                    }
197    
198                    Date createDate = (Date)attributes.get("createDate");
199    
200                    if (createDate != null) {
201                            setCreateDate(createDate);
202                    }
203    
204                    Date modifiedDate = (Date)attributes.get("modifiedDate");
205    
206                    if (modifiedDate != null) {
207                            setModifiedDate(modifiedDate);
208                    }
209    
210                    Long classNameId = (Long)attributes.get("classNameId");
211    
212                    if (classNameId != null) {
213                            setClassNameId(classNameId);
214                    }
215    
216                    Long classPK = (Long)attributes.get("classPK");
217    
218                    if (classPK != null) {
219                            setClassPK(classPK);
220                    }
221    
222                    String frequency = (String)attributes.get("frequency");
223    
224                    if (frequency != null) {
225                            setFrequency(frequency);
226                    }
227            }
228    
229            @Override
230            public long getMvccVersion() {
231                    return _mvccVersion;
232            }
233    
234            @Override
235            public void setMvccVersion(long mvccVersion) {
236                    _mvccVersion = mvccVersion;
237            }
238    
239            @Override
240            public long getSubscriptionId() {
241                    return _subscriptionId;
242            }
243    
244            @Override
245            public void setSubscriptionId(long subscriptionId) {
246                    _subscriptionId = subscriptionId;
247            }
248    
249            @Override
250            public long getGroupId() {
251                    return _groupId;
252            }
253    
254            @Override
255            public void setGroupId(long groupId) {
256                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
257    
258                    if (!_setOriginalGroupId) {
259                            _setOriginalGroupId = true;
260    
261                            _originalGroupId = _groupId;
262                    }
263    
264                    _groupId = groupId;
265            }
266    
267            public long getOriginalGroupId() {
268                    return _originalGroupId;
269            }
270    
271            @Override
272            public long getCompanyId() {
273                    return _companyId;
274            }
275    
276            @Override
277            public void setCompanyId(long companyId) {
278                    _columnBitmask |= COMPANYID_COLUMN_BITMASK;
279    
280                    if (!_setOriginalCompanyId) {
281                            _setOriginalCompanyId = true;
282    
283                            _originalCompanyId = _companyId;
284                    }
285    
286                    _companyId = companyId;
287            }
288    
289            public long getOriginalCompanyId() {
290                    return _originalCompanyId;
291            }
292    
293            @Override
294            public long getUserId() {
295                    return _userId;
296            }
297    
298            @Override
299            public void setUserId(long userId) {
300                    _columnBitmask |= USERID_COLUMN_BITMASK;
301    
302                    if (!_setOriginalUserId) {
303                            _setOriginalUserId = true;
304    
305                            _originalUserId = _userId;
306                    }
307    
308                    _userId = userId;
309            }
310    
311            @Override
312            public String getUserUuid() {
313                    try {
314                            User user = UserLocalServiceUtil.getUserById(getUserId());
315    
316                            return user.getUuid();
317                    }
318                    catch (PortalException pe) {
319                            return StringPool.BLANK;
320                    }
321            }
322    
323            @Override
324            public void setUserUuid(String userUuid) {
325            }
326    
327            public long getOriginalUserId() {
328                    return _originalUserId;
329            }
330    
331            @Override
332            public String getUserName() {
333                    if (_userName == null) {
334                            return StringPool.BLANK;
335                    }
336                    else {
337                            return _userName;
338                    }
339            }
340    
341            @Override
342            public void setUserName(String userName) {
343                    _userName = userName;
344            }
345    
346            @Override
347            public Date getCreateDate() {
348                    return _createDate;
349            }
350    
351            @Override
352            public void setCreateDate(Date createDate) {
353                    _createDate = createDate;
354            }
355    
356            @Override
357            public Date getModifiedDate() {
358                    return _modifiedDate;
359            }
360    
361            public boolean hasSetModifiedDate() {
362                    return _setModifiedDate;
363            }
364    
365            @Override
366            public void setModifiedDate(Date modifiedDate) {
367                    _setModifiedDate = true;
368    
369                    _modifiedDate = modifiedDate;
370            }
371    
372            @Override
373            public String getClassName() {
374                    if (getClassNameId() <= 0) {
375                            return StringPool.BLANK;
376                    }
377    
378                    return PortalUtil.getClassName(getClassNameId());
379            }
380    
381            @Override
382            public void setClassName(String className) {
383                    long classNameId = 0;
384    
385                    if (Validator.isNotNull(className)) {
386                            classNameId = PortalUtil.getClassNameId(className);
387                    }
388    
389                    setClassNameId(classNameId);
390            }
391    
392            @Override
393            public long getClassNameId() {
394                    return _classNameId;
395            }
396    
397            @Override
398            public void setClassNameId(long classNameId) {
399                    _columnBitmask |= CLASSNAMEID_COLUMN_BITMASK;
400    
401                    if (!_setOriginalClassNameId) {
402                            _setOriginalClassNameId = true;
403    
404                            _originalClassNameId = _classNameId;
405                    }
406    
407                    _classNameId = classNameId;
408            }
409    
410            public long getOriginalClassNameId() {
411                    return _originalClassNameId;
412            }
413    
414            @Override
415            public long getClassPK() {
416                    return _classPK;
417            }
418    
419            @Override
420            public void setClassPK(long classPK) {
421                    _columnBitmask |= CLASSPK_COLUMN_BITMASK;
422    
423                    if (!_setOriginalClassPK) {
424                            _setOriginalClassPK = true;
425    
426                            _originalClassPK = _classPK;
427                    }
428    
429                    _classPK = classPK;
430            }
431    
432            public long getOriginalClassPK() {
433                    return _originalClassPK;
434            }
435    
436            @Override
437            public String getFrequency() {
438                    if (_frequency == null) {
439                            return StringPool.BLANK;
440                    }
441                    else {
442                            return _frequency;
443                    }
444            }
445    
446            @Override
447            public void setFrequency(String frequency) {
448                    _frequency = frequency;
449            }
450    
451            public long getColumnBitmask() {
452                    return _columnBitmask;
453            }
454    
455            @Override
456            public ExpandoBridge getExpandoBridge() {
457                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
458                            Subscription.class.getName(), getPrimaryKey());
459            }
460    
461            @Override
462            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
463                    ExpandoBridge expandoBridge = getExpandoBridge();
464    
465                    expandoBridge.setAttributes(serviceContext);
466            }
467    
468            @Override
469            public Subscription toEscapedModel() {
470                    if (_escapedModel == null) {
471                            _escapedModel = (Subscription)ProxyUtil.newProxyInstance(_classLoader,
472                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
473                    }
474    
475                    return _escapedModel;
476            }
477    
478            @Override
479            public Object clone() {
480                    SubscriptionImpl subscriptionImpl = new SubscriptionImpl();
481    
482                    subscriptionImpl.setMvccVersion(getMvccVersion());
483                    subscriptionImpl.setSubscriptionId(getSubscriptionId());
484                    subscriptionImpl.setGroupId(getGroupId());
485                    subscriptionImpl.setCompanyId(getCompanyId());
486                    subscriptionImpl.setUserId(getUserId());
487                    subscriptionImpl.setUserName(getUserName());
488                    subscriptionImpl.setCreateDate(getCreateDate());
489                    subscriptionImpl.setModifiedDate(getModifiedDate());
490                    subscriptionImpl.setClassNameId(getClassNameId());
491                    subscriptionImpl.setClassPK(getClassPK());
492                    subscriptionImpl.setFrequency(getFrequency());
493    
494                    subscriptionImpl.resetOriginalValues();
495    
496                    return subscriptionImpl;
497            }
498    
499            @Override
500            public int compareTo(Subscription subscription) {
501                    long primaryKey = subscription.getPrimaryKey();
502    
503                    if (getPrimaryKey() < primaryKey) {
504                            return -1;
505                    }
506                    else if (getPrimaryKey() > primaryKey) {
507                            return 1;
508                    }
509                    else {
510                            return 0;
511                    }
512            }
513    
514            @Override
515            public boolean equals(Object obj) {
516                    if (this == obj) {
517                            return true;
518                    }
519    
520                    if (!(obj instanceof Subscription)) {
521                            return false;
522                    }
523    
524                    Subscription subscription = (Subscription)obj;
525    
526                    long primaryKey = subscription.getPrimaryKey();
527    
528                    if (getPrimaryKey() == primaryKey) {
529                            return true;
530                    }
531                    else {
532                            return false;
533                    }
534            }
535    
536            @Override
537            public int hashCode() {
538                    return (int)getPrimaryKey();
539            }
540    
541            @Override
542            public boolean isEntityCacheEnabled() {
543                    return ENTITY_CACHE_ENABLED;
544            }
545    
546            @Override
547            public boolean isFinderCacheEnabled() {
548                    return FINDER_CACHE_ENABLED;
549            }
550    
551            @Override
552            public void resetOriginalValues() {
553                    SubscriptionModelImpl subscriptionModelImpl = this;
554    
555                    subscriptionModelImpl._originalGroupId = subscriptionModelImpl._groupId;
556    
557                    subscriptionModelImpl._setOriginalGroupId = false;
558    
559                    subscriptionModelImpl._originalCompanyId = subscriptionModelImpl._companyId;
560    
561                    subscriptionModelImpl._setOriginalCompanyId = false;
562    
563                    subscriptionModelImpl._originalUserId = subscriptionModelImpl._userId;
564    
565                    subscriptionModelImpl._setOriginalUserId = false;
566    
567                    subscriptionModelImpl._setModifiedDate = false;
568    
569                    subscriptionModelImpl._originalClassNameId = subscriptionModelImpl._classNameId;
570    
571                    subscriptionModelImpl._setOriginalClassNameId = false;
572    
573                    subscriptionModelImpl._originalClassPK = subscriptionModelImpl._classPK;
574    
575                    subscriptionModelImpl._setOriginalClassPK = false;
576    
577                    subscriptionModelImpl._columnBitmask = 0;
578            }
579    
580            @Override
581            public CacheModel<Subscription> toCacheModel() {
582                    SubscriptionCacheModel subscriptionCacheModel = new SubscriptionCacheModel();
583    
584                    subscriptionCacheModel.mvccVersion = getMvccVersion();
585    
586                    subscriptionCacheModel.subscriptionId = getSubscriptionId();
587    
588                    subscriptionCacheModel.groupId = getGroupId();
589    
590                    subscriptionCacheModel.companyId = getCompanyId();
591    
592                    subscriptionCacheModel.userId = getUserId();
593    
594                    subscriptionCacheModel.userName = getUserName();
595    
596                    String userName = subscriptionCacheModel.userName;
597    
598                    if ((userName != null) && (userName.length() == 0)) {
599                            subscriptionCacheModel.userName = null;
600                    }
601    
602                    Date createDate = getCreateDate();
603    
604                    if (createDate != null) {
605                            subscriptionCacheModel.createDate = createDate.getTime();
606                    }
607                    else {
608                            subscriptionCacheModel.createDate = Long.MIN_VALUE;
609                    }
610    
611                    Date modifiedDate = getModifiedDate();
612    
613                    if (modifiedDate != null) {
614                            subscriptionCacheModel.modifiedDate = modifiedDate.getTime();
615                    }
616                    else {
617                            subscriptionCacheModel.modifiedDate = Long.MIN_VALUE;
618                    }
619    
620                    subscriptionCacheModel.classNameId = getClassNameId();
621    
622                    subscriptionCacheModel.classPK = getClassPK();
623    
624                    subscriptionCacheModel.frequency = getFrequency();
625    
626                    String frequency = subscriptionCacheModel.frequency;
627    
628                    if ((frequency != null) && (frequency.length() == 0)) {
629                            subscriptionCacheModel.frequency = null;
630                    }
631    
632                    return subscriptionCacheModel;
633            }
634    
635            @Override
636            public String toString() {
637                    StringBundler sb = new StringBundler(23);
638    
639                    sb.append("{mvccVersion=");
640                    sb.append(getMvccVersion());
641                    sb.append(", subscriptionId=");
642                    sb.append(getSubscriptionId());
643                    sb.append(", groupId=");
644                    sb.append(getGroupId());
645                    sb.append(", companyId=");
646                    sb.append(getCompanyId());
647                    sb.append(", userId=");
648                    sb.append(getUserId());
649                    sb.append(", userName=");
650                    sb.append(getUserName());
651                    sb.append(", createDate=");
652                    sb.append(getCreateDate());
653                    sb.append(", modifiedDate=");
654                    sb.append(getModifiedDate());
655                    sb.append(", classNameId=");
656                    sb.append(getClassNameId());
657                    sb.append(", classPK=");
658                    sb.append(getClassPK());
659                    sb.append(", frequency=");
660                    sb.append(getFrequency());
661                    sb.append("}");
662    
663                    return sb.toString();
664            }
665    
666            @Override
667            public String toXmlString() {
668                    StringBundler sb = new StringBundler(37);
669    
670                    sb.append("<model><model-name>");
671                    sb.append("com.liferay.portal.model.Subscription");
672                    sb.append("</model-name>");
673    
674                    sb.append(
675                            "<column><column-name>mvccVersion</column-name><column-value><![CDATA[");
676                    sb.append(getMvccVersion());
677                    sb.append("]]></column-value></column>");
678                    sb.append(
679                            "<column><column-name>subscriptionId</column-name><column-value><![CDATA[");
680                    sb.append(getSubscriptionId());
681                    sb.append("]]></column-value></column>");
682                    sb.append(
683                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
684                    sb.append(getGroupId());
685                    sb.append("]]></column-value></column>");
686                    sb.append(
687                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
688                    sb.append(getCompanyId());
689                    sb.append("]]></column-value></column>");
690                    sb.append(
691                            "<column><column-name>userId</column-name><column-value><![CDATA[");
692                    sb.append(getUserId());
693                    sb.append("]]></column-value></column>");
694                    sb.append(
695                            "<column><column-name>userName</column-name><column-value><![CDATA[");
696                    sb.append(getUserName());
697                    sb.append("]]></column-value></column>");
698                    sb.append(
699                            "<column><column-name>createDate</column-name><column-value><![CDATA[");
700                    sb.append(getCreateDate());
701                    sb.append("]]></column-value></column>");
702                    sb.append(
703                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
704                    sb.append(getModifiedDate());
705                    sb.append("]]></column-value></column>");
706                    sb.append(
707                            "<column><column-name>classNameId</column-name><column-value><![CDATA[");
708                    sb.append(getClassNameId());
709                    sb.append("]]></column-value></column>");
710                    sb.append(
711                            "<column><column-name>classPK</column-name><column-value><![CDATA[");
712                    sb.append(getClassPK());
713                    sb.append("]]></column-value></column>");
714                    sb.append(
715                            "<column><column-name>frequency</column-name><column-value><![CDATA[");
716                    sb.append(getFrequency());
717                    sb.append("]]></column-value></column>");
718    
719                    sb.append("</model>");
720    
721                    return sb.toString();
722            }
723    
724            private static final ClassLoader _classLoader = Subscription.class.getClassLoader();
725            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
726                            Subscription.class
727                    };
728            private long _mvccVersion;
729            private long _subscriptionId;
730            private long _groupId;
731            private long _originalGroupId;
732            private boolean _setOriginalGroupId;
733            private long _companyId;
734            private long _originalCompanyId;
735            private boolean _setOriginalCompanyId;
736            private long _userId;
737            private long _originalUserId;
738            private boolean _setOriginalUserId;
739            private String _userName;
740            private Date _createDate;
741            private Date _modifiedDate;
742            private boolean _setModifiedDate;
743            private long _classNameId;
744            private long _originalClassNameId;
745            private boolean _setOriginalClassNameId;
746            private long _classPK;
747            private long _originalClassPK;
748            private boolean _setOriginalClassPK;
749            private String _frequency;
750            private long _columnBitmask;
751            private Subscription _escapedModel;
752    }