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.trash.model.impl;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
020    import com.liferay.portal.kernel.util.GetterUtil;
021    import com.liferay.portal.kernel.util.ProxyUtil;
022    import com.liferay.portal.kernel.util.StringBundler;
023    import com.liferay.portal.kernel.util.StringPool;
024    import com.liferay.portal.kernel.util.Validator;
025    import com.liferay.portal.model.CacheModel;
026    import com.liferay.portal.model.impl.BaseModelImpl;
027    import com.liferay.portal.service.ServiceContext;
028    import com.liferay.portal.util.PortalUtil;
029    
030    import com.liferay.portlet.expando.model.ExpandoBridge;
031    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
032    import com.liferay.portlet.trash.model.TrashVersion;
033    import com.liferay.portlet.trash.model.TrashVersionModel;
034    
035    import java.io.Serializable;
036    
037    import java.sql.Types;
038    
039    import java.util.HashMap;
040    import java.util.Map;
041    
042    /**
043     * The base model implementation for the TrashVersion service. Represents a row in the "TrashVersion" database table, with each column mapped to a property of this class.
044     *
045     * <p>
046     * This implementation and its corresponding interface {@link TrashVersionModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link TrashVersionImpl}.
047     * </p>
048     *
049     * @author Brian Wing Shun Chan
050     * @see TrashVersionImpl
051     * @see TrashVersion
052     * @see TrashVersionModel
053     * @generated
054     */
055    @ProviderType
056    public class TrashVersionModelImpl extends BaseModelImpl<TrashVersion>
057            implements TrashVersionModel {
058            /*
059             * NOTE FOR DEVELOPERS:
060             *
061             * Never modify or reference this class directly. All methods that expect a trash version model instance should use the {@link TrashVersion} interface instead.
062             */
063            public static final String TABLE_NAME = "TrashVersion";
064            public static final Object[][] TABLE_COLUMNS = {
065                            { "versionId", Types.BIGINT },
066                            { "companyId", Types.BIGINT },
067                            { "entryId", Types.BIGINT },
068                            { "classNameId", Types.BIGINT },
069                            { "classPK", Types.BIGINT },
070                            { "typeSettings", Types.CLOB },
071                            { "status", Types.INTEGER }
072                    };
073            public static final Map<String, Integer> TABLE_COLUMNS_MAP = new HashMap<String, Integer>();
074    
075            static {
076                    TABLE_COLUMNS_MAP.put("versionId", Types.BIGINT);
077                    TABLE_COLUMNS_MAP.put("companyId", Types.BIGINT);
078                    TABLE_COLUMNS_MAP.put("entryId", Types.BIGINT);
079                    TABLE_COLUMNS_MAP.put("classNameId", Types.BIGINT);
080                    TABLE_COLUMNS_MAP.put("classPK", Types.BIGINT);
081                    TABLE_COLUMNS_MAP.put("typeSettings", Types.CLOB);
082                    TABLE_COLUMNS_MAP.put("status", Types.INTEGER);
083            }
084    
085            public static final String TABLE_SQL_CREATE = "create table TrashVersion (versionId LONG not null primary key,companyId LONG,entryId LONG,classNameId LONG,classPK LONG,typeSettings TEXT null,status INTEGER)";
086            public static final String TABLE_SQL_DROP = "drop table TrashVersion";
087            public static final String ORDER_BY_JPQL = " ORDER BY trashVersion.versionId ASC";
088            public static final String ORDER_BY_SQL = " ORDER BY TrashVersion.versionId ASC";
089            public static final String DATA_SOURCE = "liferayDataSource";
090            public static final String SESSION_FACTORY = "liferaySessionFactory";
091            public static final String TX_MANAGER = "liferayTransactionManager";
092            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
093                                    "value.object.entity.cache.enabled.com.liferay.portlet.trash.model.TrashVersion"),
094                            true);
095            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
096                                    "value.object.finder.cache.enabled.com.liferay.portlet.trash.model.TrashVersion"),
097                            true);
098            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
099                                    "value.object.column.bitmask.enabled.com.liferay.portlet.trash.model.TrashVersion"),
100                            true);
101            public static final long CLASSNAMEID_COLUMN_BITMASK = 1L;
102            public static final long CLASSPK_COLUMN_BITMASK = 2L;
103            public static final long ENTRYID_COLUMN_BITMASK = 4L;
104            public static final long VERSIONID_COLUMN_BITMASK = 8L;
105            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
106                                    "lock.expiration.time.com.liferay.portlet.trash.model.TrashVersion"));
107    
108            public TrashVersionModelImpl() {
109            }
110    
111            @Override
112            public long getPrimaryKey() {
113                    return _versionId;
114            }
115    
116            @Override
117            public void setPrimaryKey(long primaryKey) {
118                    setVersionId(primaryKey);
119            }
120    
121            @Override
122            public Serializable getPrimaryKeyObj() {
123                    return _versionId;
124            }
125    
126            @Override
127            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
128                    setPrimaryKey(((Long)primaryKeyObj).longValue());
129            }
130    
131            @Override
132            public Class<?> getModelClass() {
133                    return TrashVersion.class;
134            }
135    
136            @Override
137            public String getModelClassName() {
138                    return TrashVersion.class.getName();
139            }
140    
141            @Override
142            public Map<String, Object> getModelAttributes() {
143                    Map<String, Object> attributes = new HashMap<String, Object>();
144    
145                    attributes.put("versionId", getVersionId());
146                    attributes.put("companyId", getCompanyId());
147                    attributes.put("entryId", getEntryId());
148                    attributes.put("classNameId", getClassNameId());
149                    attributes.put("classPK", getClassPK());
150                    attributes.put("typeSettings", getTypeSettings());
151                    attributes.put("status", getStatus());
152    
153                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
154                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
155    
156                    return attributes;
157            }
158    
159            @Override
160            public void setModelAttributes(Map<String, Object> attributes) {
161                    Long versionId = (Long)attributes.get("versionId");
162    
163                    if (versionId != null) {
164                            setVersionId(versionId);
165                    }
166    
167                    Long companyId = (Long)attributes.get("companyId");
168    
169                    if (companyId != null) {
170                            setCompanyId(companyId);
171                    }
172    
173                    Long entryId = (Long)attributes.get("entryId");
174    
175                    if (entryId != null) {
176                            setEntryId(entryId);
177                    }
178    
179                    Long classNameId = (Long)attributes.get("classNameId");
180    
181                    if (classNameId != null) {
182                            setClassNameId(classNameId);
183                    }
184    
185                    Long classPK = (Long)attributes.get("classPK");
186    
187                    if (classPK != null) {
188                            setClassPK(classPK);
189                    }
190    
191                    String typeSettings = (String)attributes.get("typeSettings");
192    
193                    if (typeSettings != null) {
194                            setTypeSettings(typeSettings);
195                    }
196    
197                    Integer status = (Integer)attributes.get("status");
198    
199                    if (status != null) {
200                            setStatus(status);
201                    }
202            }
203    
204            @Override
205            public long getVersionId() {
206                    return _versionId;
207            }
208    
209            @Override
210            public void setVersionId(long versionId) {
211                    _versionId = versionId;
212            }
213    
214            @Override
215            public long getCompanyId() {
216                    return _companyId;
217            }
218    
219            @Override
220            public void setCompanyId(long companyId) {
221                    _companyId = companyId;
222            }
223    
224            @Override
225            public long getEntryId() {
226                    return _entryId;
227            }
228    
229            @Override
230            public void setEntryId(long entryId) {
231                    _columnBitmask |= ENTRYID_COLUMN_BITMASK;
232    
233                    if (!_setOriginalEntryId) {
234                            _setOriginalEntryId = true;
235    
236                            _originalEntryId = _entryId;
237                    }
238    
239                    _entryId = entryId;
240            }
241    
242            public long getOriginalEntryId() {
243                    return _originalEntryId;
244            }
245    
246            @Override
247            public String getClassName() {
248                    if (getClassNameId() <= 0) {
249                            return StringPool.BLANK;
250                    }
251    
252                    return PortalUtil.getClassName(getClassNameId());
253            }
254    
255            @Override
256            public void setClassName(String className) {
257                    long classNameId = 0;
258    
259                    if (Validator.isNotNull(className)) {
260                            classNameId = PortalUtil.getClassNameId(className);
261                    }
262    
263                    setClassNameId(classNameId);
264            }
265    
266            @Override
267            public long getClassNameId() {
268                    return _classNameId;
269            }
270    
271            @Override
272            public void setClassNameId(long classNameId) {
273                    _columnBitmask |= CLASSNAMEID_COLUMN_BITMASK;
274    
275                    if (!_setOriginalClassNameId) {
276                            _setOriginalClassNameId = true;
277    
278                            _originalClassNameId = _classNameId;
279                    }
280    
281                    _classNameId = classNameId;
282            }
283    
284            public long getOriginalClassNameId() {
285                    return _originalClassNameId;
286            }
287    
288            @Override
289            public long getClassPK() {
290                    return _classPK;
291            }
292    
293            @Override
294            public void setClassPK(long classPK) {
295                    _columnBitmask |= CLASSPK_COLUMN_BITMASK;
296    
297                    if (!_setOriginalClassPK) {
298                            _setOriginalClassPK = true;
299    
300                            _originalClassPK = _classPK;
301                    }
302    
303                    _classPK = classPK;
304            }
305    
306            public long getOriginalClassPK() {
307                    return _originalClassPK;
308            }
309    
310            @Override
311            public String getTypeSettings() {
312                    if (_typeSettings == null) {
313                            return StringPool.BLANK;
314                    }
315                    else {
316                            return _typeSettings;
317                    }
318            }
319    
320            @Override
321            public void setTypeSettings(String typeSettings) {
322                    _typeSettings = typeSettings;
323            }
324    
325            @Override
326            public int getStatus() {
327                    return _status;
328            }
329    
330            @Override
331            public void setStatus(int status) {
332                    _status = status;
333            }
334    
335            public long getColumnBitmask() {
336                    return _columnBitmask;
337            }
338    
339            @Override
340            public ExpandoBridge getExpandoBridge() {
341                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
342                            TrashVersion.class.getName(), getPrimaryKey());
343            }
344    
345            @Override
346            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
347                    ExpandoBridge expandoBridge = getExpandoBridge();
348    
349                    expandoBridge.setAttributes(serviceContext);
350            }
351    
352            @Override
353            public TrashVersion toEscapedModel() {
354                    if (_escapedModel == null) {
355                            _escapedModel = (TrashVersion)ProxyUtil.newProxyInstance(_classLoader,
356                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
357                    }
358    
359                    return _escapedModel;
360            }
361    
362            @Override
363            public Object clone() {
364                    TrashVersionImpl trashVersionImpl = new TrashVersionImpl();
365    
366                    trashVersionImpl.setVersionId(getVersionId());
367                    trashVersionImpl.setCompanyId(getCompanyId());
368                    trashVersionImpl.setEntryId(getEntryId());
369                    trashVersionImpl.setClassNameId(getClassNameId());
370                    trashVersionImpl.setClassPK(getClassPK());
371                    trashVersionImpl.setTypeSettings(getTypeSettings());
372                    trashVersionImpl.setStatus(getStatus());
373    
374                    trashVersionImpl.resetOriginalValues();
375    
376                    return trashVersionImpl;
377            }
378    
379            @Override
380            public int compareTo(TrashVersion trashVersion) {
381                    long primaryKey = trashVersion.getPrimaryKey();
382    
383                    if (getPrimaryKey() < primaryKey) {
384                            return -1;
385                    }
386                    else if (getPrimaryKey() > primaryKey) {
387                            return 1;
388                    }
389                    else {
390                            return 0;
391                    }
392            }
393    
394            @Override
395            public boolean equals(Object obj) {
396                    if (this == obj) {
397                            return true;
398                    }
399    
400                    if (!(obj instanceof TrashVersion)) {
401                            return false;
402                    }
403    
404                    TrashVersion trashVersion = (TrashVersion)obj;
405    
406                    long primaryKey = trashVersion.getPrimaryKey();
407    
408                    if (getPrimaryKey() == primaryKey) {
409                            return true;
410                    }
411                    else {
412                            return false;
413                    }
414            }
415    
416            @Override
417            public int hashCode() {
418                    return (int)getPrimaryKey();
419            }
420    
421            @Override
422            public boolean isEntityCacheEnabled() {
423                    return ENTITY_CACHE_ENABLED;
424            }
425    
426            @Override
427            public boolean isFinderCacheEnabled() {
428                    return FINDER_CACHE_ENABLED;
429            }
430    
431            @Override
432            public void resetOriginalValues() {
433                    TrashVersionModelImpl trashVersionModelImpl = this;
434    
435                    trashVersionModelImpl._originalEntryId = trashVersionModelImpl._entryId;
436    
437                    trashVersionModelImpl._setOriginalEntryId = false;
438    
439                    trashVersionModelImpl._originalClassNameId = trashVersionModelImpl._classNameId;
440    
441                    trashVersionModelImpl._setOriginalClassNameId = false;
442    
443                    trashVersionModelImpl._originalClassPK = trashVersionModelImpl._classPK;
444    
445                    trashVersionModelImpl._setOriginalClassPK = false;
446    
447                    trashVersionModelImpl._columnBitmask = 0;
448            }
449    
450            @Override
451            public CacheModel<TrashVersion> toCacheModel() {
452                    TrashVersionCacheModel trashVersionCacheModel = new TrashVersionCacheModel();
453    
454                    trashVersionCacheModel.versionId = getVersionId();
455    
456                    trashVersionCacheModel.companyId = getCompanyId();
457    
458                    trashVersionCacheModel.entryId = getEntryId();
459    
460                    trashVersionCacheModel.classNameId = getClassNameId();
461    
462                    trashVersionCacheModel.classPK = getClassPK();
463    
464                    trashVersionCacheModel.typeSettings = getTypeSettings();
465    
466                    String typeSettings = trashVersionCacheModel.typeSettings;
467    
468                    if ((typeSettings != null) && (typeSettings.length() == 0)) {
469                            trashVersionCacheModel.typeSettings = null;
470                    }
471    
472                    trashVersionCacheModel.status = getStatus();
473    
474                    return trashVersionCacheModel;
475            }
476    
477            @Override
478            public String toString() {
479                    StringBundler sb = new StringBundler(15);
480    
481                    sb.append("{versionId=");
482                    sb.append(getVersionId());
483                    sb.append(", companyId=");
484                    sb.append(getCompanyId());
485                    sb.append(", entryId=");
486                    sb.append(getEntryId());
487                    sb.append(", classNameId=");
488                    sb.append(getClassNameId());
489                    sb.append(", classPK=");
490                    sb.append(getClassPK());
491                    sb.append(", typeSettings=");
492                    sb.append(getTypeSettings());
493                    sb.append(", status=");
494                    sb.append(getStatus());
495                    sb.append("}");
496    
497                    return sb.toString();
498            }
499    
500            @Override
501            public String toXmlString() {
502                    StringBundler sb = new StringBundler(25);
503    
504                    sb.append("<model><model-name>");
505                    sb.append("com.liferay.portlet.trash.model.TrashVersion");
506                    sb.append("</model-name>");
507    
508                    sb.append(
509                            "<column><column-name>versionId</column-name><column-value><![CDATA[");
510                    sb.append(getVersionId());
511                    sb.append("]]></column-value></column>");
512                    sb.append(
513                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
514                    sb.append(getCompanyId());
515                    sb.append("]]></column-value></column>");
516                    sb.append(
517                            "<column><column-name>entryId</column-name><column-value><![CDATA[");
518                    sb.append(getEntryId());
519                    sb.append("]]></column-value></column>");
520                    sb.append(
521                            "<column><column-name>classNameId</column-name><column-value><![CDATA[");
522                    sb.append(getClassNameId());
523                    sb.append("]]></column-value></column>");
524                    sb.append(
525                            "<column><column-name>classPK</column-name><column-value><![CDATA[");
526                    sb.append(getClassPK());
527                    sb.append("]]></column-value></column>");
528                    sb.append(
529                            "<column><column-name>typeSettings</column-name><column-value><![CDATA[");
530                    sb.append(getTypeSettings());
531                    sb.append("]]></column-value></column>");
532                    sb.append(
533                            "<column><column-name>status</column-name><column-value><![CDATA[");
534                    sb.append(getStatus());
535                    sb.append("]]></column-value></column>");
536    
537                    sb.append("</model>");
538    
539                    return sb.toString();
540            }
541    
542            private static final ClassLoader _classLoader = TrashVersion.class.getClassLoader();
543            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
544                            TrashVersion.class
545                    };
546            private long _versionId;
547            private long _companyId;
548            private long _entryId;
549            private long _originalEntryId;
550            private boolean _setOriginalEntryId;
551            private long _classNameId;
552            private long _originalClassNameId;
553            private boolean _setOriginalClassNameId;
554            private long _classPK;
555            private long _originalClassPK;
556            private boolean _setOriginalClassPK;
557            private String _typeSettings;
558            private int _status;
559            private long _columnBitmask;
560            private TrashVersion _escapedModel;
561    }