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.asset.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.asset.model.AssetTagStats;
031    import com.liferay.portlet.asset.model.AssetTagStatsModel;
032    import com.liferay.portlet.expando.model.ExpandoBridge;
033    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
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 AssetTagStats service. Represents a row in the "AssetTagStats" database table, with each column mapped to a property of this class.
044     *
045     * <p>
046     * This implementation and its corresponding interface {@link AssetTagStatsModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link AssetTagStatsImpl}.
047     * </p>
048     *
049     * @author Brian Wing Shun Chan
050     * @see AssetTagStatsImpl
051     * @see AssetTagStats
052     * @see AssetTagStatsModel
053     * @generated
054     */
055    @ProviderType
056    public class AssetTagStatsModelImpl extends BaseModelImpl<AssetTagStats>
057            implements AssetTagStatsModel {
058            /*
059             * NOTE FOR DEVELOPERS:
060             *
061             * Never modify or reference this class directly. All methods that expect a asset tag stats model instance should use the {@link AssetTagStats} interface instead.
062             */
063            public static final String TABLE_NAME = "AssetTagStats";
064            public static final Object[][] TABLE_COLUMNS = {
065                            { "tagStatsId", Types.BIGINT },
066                            { "companyId", Types.BIGINT },
067                            { "tagId", Types.BIGINT },
068                            { "classNameId", Types.BIGINT },
069                            { "assetCount", Types.INTEGER }
070                    };
071            public static final Map<String, Integer> TABLE_COLUMNS_MAP = new HashMap<String, Integer>();
072    
073            static {
074                    TABLE_COLUMNS_MAP.put("tagStatsId", Types.BIGINT);
075                    TABLE_COLUMNS_MAP.put("companyId", Types.BIGINT);
076                    TABLE_COLUMNS_MAP.put("tagId", Types.BIGINT);
077                    TABLE_COLUMNS_MAP.put("classNameId", Types.BIGINT);
078                    TABLE_COLUMNS_MAP.put("assetCount", Types.INTEGER);
079            }
080    
081            public static final String TABLE_SQL_CREATE = "create table AssetTagStats (tagStatsId LONG not null primary key,companyId LONG,tagId LONG,classNameId LONG,assetCount INTEGER)";
082            public static final String TABLE_SQL_DROP = "drop table AssetTagStats";
083            public static final String ORDER_BY_JPQL = " ORDER BY assetTagStats.assetCount DESC";
084            public static final String ORDER_BY_SQL = " ORDER BY AssetTagStats.assetCount DESC";
085            public static final String DATA_SOURCE = "liferayDataSource";
086            public static final String SESSION_FACTORY = "liferaySessionFactory";
087            public static final String TX_MANAGER = "liferayTransactionManager";
088            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
089                                    "value.object.entity.cache.enabled.com.liferay.portlet.asset.model.AssetTagStats"),
090                            true);
091            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
092                                    "value.object.finder.cache.enabled.com.liferay.portlet.asset.model.AssetTagStats"),
093                            true);
094            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
095                                    "value.object.column.bitmask.enabled.com.liferay.portlet.asset.model.AssetTagStats"),
096                            true);
097            public static final long CLASSNAMEID_COLUMN_BITMASK = 1L;
098            public static final long TAGID_COLUMN_BITMASK = 2L;
099            public static final long ASSETCOUNT_COLUMN_BITMASK = 4L;
100            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
101                                    "lock.expiration.time.com.liferay.portlet.asset.model.AssetTagStats"));
102    
103            public AssetTagStatsModelImpl() {
104            }
105    
106            @Override
107            public long getPrimaryKey() {
108                    return _tagStatsId;
109            }
110    
111            @Override
112            public void setPrimaryKey(long primaryKey) {
113                    setTagStatsId(primaryKey);
114            }
115    
116            @Override
117            public Serializable getPrimaryKeyObj() {
118                    return _tagStatsId;
119            }
120    
121            @Override
122            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
123                    setPrimaryKey(((Long)primaryKeyObj).longValue());
124            }
125    
126            @Override
127            public Class<?> getModelClass() {
128                    return AssetTagStats.class;
129            }
130    
131            @Override
132            public String getModelClassName() {
133                    return AssetTagStats.class.getName();
134            }
135    
136            @Override
137            public Map<String, Object> getModelAttributes() {
138                    Map<String, Object> attributes = new HashMap<String, Object>();
139    
140                    attributes.put("tagStatsId", getTagStatsId());
141                    attributes.put("companyId", getCompanyId());
142                    attributes.put("tagId", getTagId());
143                    attributes.put("classNameId", getClassNameId());
144                    attributes.put("assetCount", getAssetCount());
145    
146                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
147                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
148    
149                    return attributes;
150            }
151    
152            @Override
153            public void setModelAttributes(Map<String, Object> attributes) {
154                    Long tagStatsId = (Long)attributes.get("tagStatsId");
155    
156                    if (tagStatsId != null) {
157                            setTagStatsId(tagStatsId);
158                    }
159    
160                    Long companyId = (Long)attributes.get("companyId");
161    
162                    if (companyId != null) {
163                            setCompanyId(companyId);
164                    }
165    
166                    Long tagId = (Long)attributes.get("tagId");
167    
168                    if (tagId != null) {
169                            setTagId(tagId);
170                    }
171    
172                    Long classNameId = (Long)attributes.get("classNameId");
173    
174                    if (classNameId != null) {
175                            setClassNameId(classNameId);
176                    }
177    
178                    Integer assetCount = (Integer)attributes.get("assetCount");
179    
180                    if (assetCount != null) {
181                            setAssetCount(assetCount);
182                    }
183            }
184    
185            @Override
186            public long getTagStatsId() {
187                    return _tagStatsId;
188            }
189    
190            @Override
191            public void setTagStatsId(long tagStatsId) {
192                    _tagStatsId = tagStatsId;
193            }
194    
195            @Override
196            public long getCompanyId() {
197                    return _companyId;
198            }
199    
200            @Override
201            public void setCompanyId(long companyId) {
202                    _companyId = companyId;
203            }
204    
205            @Override
206            public long getTagId() {
207                    return _tagId;
208            }
209    
210            @Override
211            public void setTagId(long tagId) {
212                    _columnBitmask |= TAGID_COLUMN_BITMASK;
213    
214                    if (!_setOriginalTagId) {
215                            _setOriginalTagId = true;
216    
217                            _originalTagId = _tagId;
218                    }
219    
220                    _tagId = tagId;
221            }
222    
223            public long getOriginalTagId() {
224                    return _originalTagId;
225            }
226    
227            @Override
228            public String getClassName() {
229                    if (getClassNameId() <= 0) {
230                            return StringPool.BLANK;
231                    }
232    
233                    return PortalUtil.getClassName(getClassNameId());
234            }
235    
236            @Override
237            public void setClassName(String className) {
238                    long classNameId = 0;
239    
240                    if (Validator.isNotNull(className)) {
241                            classNameId = PortalUtil.getClassNameId(className);
242                    }
243    
244                    setClassNameId(classNameId);
245            }
246    
247            @Override
248            public long getClassNameId() {
249                    return _classNameId;
250            }
251    
252            @Override
253            public void setClassNameId(long classNameId) {
254                    _columnBitmask |= CLASSNAMEID_COLUMN_BITMASK;
255    
256                    if (!_setOriginalClassNameId) {
257                            _setOriginalClassNameId = true;
258    
259                            _originalClassNameId = _classNameId;
260                    }
261    
262                    _classNameId = classNameId;
263            }
264    
265            public long getOriginalClassNameId() {
266                    return _originalClassNameId;
267            }
268    
269            @Override
270            public int getAssetCount() {
271                    return _assetCount;
272            }
273    
274            @Override
275            public void setAssetCount(int assetCount) {
276                    _columnBitmask = -1L;
277    
278                    _assetCount = assetCount;
279            }
280    
281            public long getColumnBitmask() {
282                    return _columnBitmask;
283            }
284    
285            @Override
286            public ExpandoBridge getExpandoBridge() {
287                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
288                            AssetTagStats.class.getName(), getPrimaryKey());
289            }
290    
291            @Override
292            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
293                    ExpandoBridge expandoBridge = getExpandoBridge();
294    
295                    expandoBridge.setAttributes(serviceContext);
296            }
297    
298            @Override
299            public AssetTagStats toEscapedModel() {
300                    if (_escapedModel == null) {
301                            _escapedModel = (AssetTagStats)ProxyUtil.newProxyInstance(_classLoader,
302                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
303                    }
304    
305                    return _escapedModel;
306            }
307    
308            @Override
309            public Object clone() {
310                    AssetTagStatsImpl assetTagStatsImpl = new AssetTagStatsImpl();
311    
312                    assetTagStatsImpl.setTagStatsId(getTagStatsId());
313                    assetTagStatsImpl.setCompanyId(getCompanyId());
314                    assetTagStatsImpl.setTagId(getTagId());
315                    assetTagStatsImpl.setClassNameId(getClassNameId());
316                    assetTagStatsImpl.setAssetCount(getAssetCount());
317    
318                    assetTagStatsImpl.resetOriginalValues();
319    
320                    return assetTagStatsImpl;
321            }
322    
323            @Override
324            public int compareTo(AssetTagStats assetTagStats) {
325                    int value = 0;
326    
327                    if (getAssetCount() < assetTagStats.getAssetCount()) {
328                            value = -1;
329                    }
330                    else if (getAssetCount() > assetTagStats.getAssetCount()) {
331                            value = 1;
332                    }
333                    else {
334                            value = 0;
335                    }
336    
337                    value = value * -1;
338    
339                    if (value != 0) {
340                            return value;
341                    }
342    
343                    return 0;
344            }
345    
346            @Override
347            public boolean equals(Object obj) {
348                    if (this == obj) {
349                            return true;
350                    }
351    
352                    if (!(obj instanceof AssetTagStats)) {
353                            return false;
354                    }
355    
356                    AssetTagStats assetTagStats = (AssetTagStats)obj;
357    
358                    long primaryKey = assetTagStats.getPrimaryKey();
359    
360                    if (getPrimaryKey() == primaryKey) {
361                            return true;
362                    }
363                    else {
364                            return false;
365                    }
366            }
367    
368            @Override
369            public int hashCode() {
370                    return (int)getPrimaryKey();
371            }
372    
373            @Override
374            public boolean isEntityCacheEnabled() {
375                    return ENTITY_CACHE_ENABLED;
376            }
377    
378            @Override
379            public boolean isFinderCacheEnabled() {
380                    return FINDER_CACHE_ENABLED;
381            }
382    
383            @Override
384            public void resetOriginalValues() {
385                    AssetTagStatsModelImpl assetTagStatsModelImpl = this;
386    
387                    assetTagStatsModelImpl._originalTagId = assetTagStatsModelImpl._tagId;
388    
389                    assetTagStatsModelImpl._setOriginalTagId = false;
390    
391                    assetTagStatsModelImpl._originalClassNameId = assetTagStatsModelImpl._classNameId;
392    
393                    assetTagStatsModelImpl._setOriginalClassNameId = false;
394    
395                    assetTagStatsModelImpl._columnBitmask = 0;
396            }
397    
398            @Override
399            public CacheModel<AssetTagStats> toCacheModel() {
400                    AssetTagStatsCacheModel assetTagStatsCacheModel = new AssetTagStatsCacheModel();
401    
402                    assetTagStatsCacheModel.tagStatsId = getTagStatsId();
403    
404                    assetTagStatsCacheModel.companyId = getCompanyId();
405    
406                    assetTagStatsCacheModel.tagId = getTagId();
407    
408                    assetTagStatsCacheModel.classNameId = getClassNameId();
409    
410                    assetTagStatsCacheModel.assetCount = getAssetCount();
411    
412                    return assetTagStatsCacheModel;
413            }
414    
415            @Override
416            public String toString() {
417                    StringBundler sb = new StringBundler(11);
418    
419                    sb.append("{tagStatsId=");
420                    sb.append(getTagStatsId());
421                    sb.append(", companyId=");
422                    sb.append(getCompanyId());
423                    sb.append(", tagId=");
424                    sb.append(getTagId());
425                    sb.append(", classNameId=");
426                    sb.append(getClassNameId());
427                    sb.append(", assetCount=");
428                    sb.append(getAssetCount());
429                    sb.append("}");
430    
431                    return sb.toString();
432            }
433    
434            @Override
435            public String toXmlString() {
436                    StringBundler sb = new StringBundler(19);
437    
438                    sb.append("<model><model-name>");
439                    sb.append("com.liferay.portlet.asset.model.AssetTagStats");
440                    sb.append("</model-name>");
441    
442                    sb.append(
443                            "<column><column-name>tagStatsId</column-name><column-value><![CDATA[");
444                    sb.append(getTagStatsId());
445                    sb.append("]]></column-value></column>");
446                    sb.append(
447                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
448                    sb.append(getCompanyId());
449                    sb.append("]]></column-value></column>");
450                    sb.append(
451                            "<column><column-name>tagId</column-name><column-value><![CDATA[");
452                    sb.append(getTagId());
453                    sb.append("]]></column-value></column>");
454                    sb.append(
455                            "<column><column-name>classNameId</column-name><column-value><![CDATA[");
456                    sb.append(getClassNameId());
457                    sb.append("]]></column-value></column>");
458                    sb.append(
459                            "<column><column-name>assetCount</column-name><column-value><![CDATA[");
460                    sb.append(getAssetCount());
461                    sb.append("]]></column-value></column>");
462    
463                    sb.append("</model>");
464    
465                    return sb.toString();
466            }
467    
468            private static final ClassLoader _classLoader = AssetTagStats.class.getClassLoader();
469            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
470                            AssetTagStats.class
471                    };
472            private long _tagStatsId;
473            private long _companyId;
474            private long _tagId;
475            private long _originalTagId;
476            private boolean _setOriginalTagId;
477            private long _classNameId;
478            private long _originalClassNameId;
479            private boolean _setOriginalClassNameId;
480            private int _assetCount;
481            private long _columnBitmask;
482            private AssetTagStats _escapedModel;
483    }