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