001    /**
002     * Copyright (c) 2000-2011 Liferay, Inc. All rights reserved.
003     *
004     * The contents of this file are subject to the terms of the Liferay Enterprise
005     * Subscription License ("License"). You may not use this file except in
006     * compliance with the License. You can obtain a copy of the License by
007     * contacting Liferay, Inc. See the License for the specific language governing
008     * permissions and limitations under the License, including but not limited to
009     * distribution rights of the Software.
010     *
011     *
012     *
013     */
014    
015    package com.liferay.portlet.asset.model.impl;
016    
017    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.json.JSON;
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.model.CacheModel;
025    import com.liferay.portal.model.impl.BaseModelImpl;
026    import com.liferay.portal.service.ServiceContext;
027    import com.liferay.portal.util.PortalUtil;
028    
029    import com.liferay.portlet.asset.model.AssetTag;
030    import com.liferay.portlet.asset.model.AssetTagModel;
031    import com.liferay.portlet.asset.model.AssetTagSoap;
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.ArrayList;
040    import java.util.Date;
041    import java.util.List;
042    
043    /**
044     * The base model implementation for the AssetTag service. Represents a row in the "AssetTag" database table, with each column mapped to a property of this class.
045     *
046     * <p>
047     * This implementation and its corresponding interface {@link com.liferay.portlet.asset.model.AssetTagModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link AssetTagImpl}.
048     * </p>
049     *
050     * @author Brian Wing Shun Chan
051     * @see AssetTagImpl
052     * @see com.liferay.portlet.asset.model.AssetTag
053     * @see com.liferay.portlet.asset.model.AssetTagModel
054     * @generated
055     */
056    @JSON(strict = true)
057    public class AssetTagModelImpl extends BaseModelImpl<AssetTag>
058            implements AssetTagModel {
059            /*
060             * NOTE FOR DEVELOPERS:
061             *
062             * Never modify or reference this class directly. All methods that expect a asset tag model instance should use the {@link com.liferay.portlet.asset.model.AssetTag} interface instead.
063             */
064            public static final String TABLE_NAME = "AssetTag";
065            public static final Object[][] TABLE_COLUMNS = {
066                            { "tagId", Types.BIGINT },
067                            { "groupId", Types.BIGINT },
068                            { "companyId", Types.BIGINT },
069                            { "userId", Types.BIGINT },
070                            { "userName", Types.VARCHAR },
071                            { "createDate", Types.TIMESTAMP },
072                            { "modifiedDate", Types.TIMESTAMP },
073                            { "name", Types.VARCHAR },
074                            { "assetCount", Types.INTEGER }
075                    };
076            public static final String TABLE_SQL_CREATE = "create table AssetTag (tagId LONG not null primary key,groupId LONG,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,name VARCHAR(75) null,assetCount INTEGER)";
077            public static final String TABLE_SQL_DROP = "drop table AssetTag";
078            public static final String ORDER_BY_JPQL = " ORDER BY assetTag.name ASC";
079            public static final String ORDER_BY_SQL = " ORDER BY AssetTag.name ASC";
080            public static final String DATA_SOURCE = "liferayDataSource";
081            public static final String SESSION_FACTORY = "liferaySessionFactory";
082            public static final String TX_MANAGER = "liferayTransactionManager";
083            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
084                                    "value.object.entity.cache.enabled.com.liferay.portlet.asset.model.AssetTag"),
085                            true);
086            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
087                                    "value.object.finder.cache.enabled.com.liferay.portlet.asset.model.AssetTag"),
088                            true);
089            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
090                                    "value.object.column.bitmask.enabled.com.liferay.portlet.asset.model.AssetTag"),
091                            true);
092            public static long GROUPID_COLUMN_BITMASK = 1L;
093    
094            /**
095             * Converts the soap model instance into a normal model instance.
096             *
097             * @param soapModel the soap model instance to convert
098             * @return the normal model instance
099             */
100            public static AssetTag toModel(AssetTagSoap soapModel) {
101                    AssetTag model = new AssetTagImpl();
102    
103                    model.setTagId(soapModel.getTagId());
104                    model.setGroupId(soapModel.getGroupId());
105                    model.setCompanyId(soapModel.getCompanyId());
106                    model.setUserId(soapModel.getUserId());
107                    model.setUserName(soapModel.getUserName());
108                    model.setCreateDate(soapModel.getCreateDate());
109                    model.setModifiedDate(soapModel.getModifiedDate());
110                    model.setName(soapModel.getName());
111                    model.setAssetCount(soapModel.getAssetCount());
112    
113                    return model;
114            }
115    
116            /**
117             * Converts the soap model instances into normal model instances.
118             *
119             * @param soapModels the soap model instances to convert
120             * @return the normal model instances
121             */
122            public static List<AssetTag> toModels(AssetTagSoap[] soapModels) {
123                    List<AssetTag> models = new ArrayList<AssetTag>(soapModels.length);
124    
125                    for (AssetTagSoap soapModel : soapModels) {
126                            models.add(toModel(soapModel));
127                    }
128    
129                    return models;
130            }
131    
132            public static final String MAPPING_TABLE_ASSETENTRIES_ASSETTAGS_NAME = "AssetEntries_AssetTags";
133            public static final Object[][] MAPPING_TABLE_ASSETENTRIES_ASSETTAGS_COLUMNS = {
134                            { "entryId", Types.BIGINT },
135                            { "tagId", Types.BIGINT }
136                    };
137            public static final String MAPPING_TABLE_ASSETENTRIES_ASSETTAGS_SQL_CREATE = "create table AssetEntries_AssetTags (entryId LONG not null,tagId LONG not null,primary key (entryId, tagId))";
138            public static final boolean FINDER_CACHE_ENABLED_ASSETENTRIES_ASSETTAGS = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
139                                    "value.object.finder.cache.enabled.AssetEntries_AssetTags"),
140                            true);
141            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
142                                    "lock.expiration.time.com.liferay.portlet.asset.model.AssetTag"));
143    
144            public AssetTagModelImpl() {
145            }
146    
147            public long getPrimaryKey() {
148                    return _tagId;
149            }
150    
151            public void setPrimaryKey(long primaryKey) {
152                    setTagId(primaryKey);
153            }
154    
155            public Serializable getPrimaryKeyObj() {
156                    return new Long(_tagId);
157            }
158    
159            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
160                    setPrimaryKey(((Long)primaryKeyObj).longValue());
161            }
162    
163            public Class<?> getModelClass() {
164                    return AssetTag.class;
165            }
166    
167            public String getModelClassName() {
168                    return AssetTag.class.getName();
169            }
170    
171            @JSON
172            public long getTagId() {
173                    return _tagId;
174            }
175    
176            public void setTagId(long tagId) {
177                    _tagId = tagId;
178            }
179    
180            @JSON
181            public long getGroupId() {
182                    return _groupId;
183            }
184    
185            public void setGroupId(long groupId) {
186                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
187    
188                    if (!_setOriginalGroupId) {
189                            _setOriginalGroupId = true;
190    
191                            _originalGroupId = _groupId;
192                    }
193    
194                    _groupId = groupId;
195            }
196    
197            public long getOriginalGroupId() {
198                    return _originalGroupId;
199            }
200    
201            @JSON
202            public long getCompanyId() {
203                    return _companyId;
204            }
205    
206            public void setCompanyId(long companyId) {
207                    _companyId = companyId;
208            }
209    
210            @JSON
211            public long getUserId() {
212                    return _userId;
213            }
214    
215            public void setUserId(long userId) {
216                    _userId = userId;
217            }
218    
219            public String getUserUuid() throws SystemException {
220                    return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
221            }
222    
223            public void setUserUuid(String userUuid) {
224                    _userUuid = userUuid;
225            }
226    
227            @JSON
228            public String getUserName() {
229                    if (_userName == null) {
230                            return StringPool.BLANK;
231                    }
232                    else {
233                            return _userName;
234                    }
235            }
236    
237            public void setUserName(String userName) {
238                    _userName = userName;
239            }
240    
241            @JSON
242            public Date getCreateDate() {
243                    return _createDate;
244            }
245    
246            public void setCreateDate(Date createDate) {
247                    _createDate = createDate;
248            }
249    
250            @JSON
251            public Date getModifiedDate() {
252                    return _modifiedDate;
253            }
254    
255            public void setModifiedDate(Date modifiedDate) {
256                    _modifiedDate = modifiedDate;
257            }
258    
259            @JSON
260            public String getName() {
261                    if (_name == null) {
262                            return StringPool.BLANK;
263                    }
264                    else {
265                            return _name;
266                    }
267            }
268    
269            public void setName(String name) {
270                    _name = name;
271            }
272    
273            @JSON
274            public int getAssetCount() {
275                    return _assetCount;
276            }
277    
278            public void setAssetCount(int assetCount) {
279                    _assetCount = assetCount;
280            }
281    
282            public long getColumnBitmask() {
283                    return _columnBitmask;
284            }
285    
286            @Override
287            public AssetTag toEscapedModel() {
288                    if (_escapedModelProxy == null) {
289                            _escapedModelProxy = (AssetTag)ProxyUtil.newProxyInstance(_classLoader,
290                                            _escapedModelProxyInterfaces,
291                                            new AutoEscapeBeanHandler(this));
292                    }
293    
294                    return _escapedModelProxy;
295            }
296    
297            @Override
298            public ExpandoBridge getExpandoBridge() {
299                    if (_expandoBridge == null) {
300                            _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
301                                            AssetTag.class.getName(), getPrimaryKey());
302                    }
303    
304                    return _expandoBridge;
305            }
306    
307            @Override
308            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
309                    getExpandoBridge().setAttributes(serviceContext);
310            }
311    
312            @Override
313            public Object clone() {
314                    AssetTagImpl assetTagImpl = new AssetTagImpl();
315    
316                    assetTagImpl.setTagId(getTagId());
317                    assetTagImpl.setGroupId(getGroupId());
318                    assetTagImpl.setCompanyId(getCompanyId());
319                    assetTagImpl.setUserId(getUserId());
320                    assetTagImpl.setUserName(getUserName());
321                    assetTagImpl.setCreateDate(getCreateDate());
322                    assetTagImpl.setModifiedDate(getModifiedDate());
323                    assetTagImpl.setName(getName());
324                    assetTagImpl.setAssetCount(getAssetCount());
325    
326                    assetTagImpl.resetOriginalValues();
327    
328                    return assetTagImpl;
329            }
330    
331            public int compareTo(AssetTag assetTag) {
332                    int value = 0;
333    
334                    value = getName().compareTo(assetTag.getName());
335    
336                    if (value != 0) {
337                            return value;
338                    }
339    
340                    return 0;
341            }
342    
343            @Override
344            public boolean equals(Object obj) {
345                    if (obj == null) {
346                            return false;
347                    }
348    
349                    AssetTag assetTag = null;
350    
351                    try {
352                            assetTag = (AssetTag)obj;
353                    }
354                    catch (ClassCastException cce) {
355                            return false;
356                    }
357    
358                    long primaryKey = assetTag.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 void resetOriginalValues() {
375                    AssetTagModelImpl assetTagModelImpl = this;
376    
377                    assetTagModelImpl._originalGroupId = assetTagModelImpl._groupId;
378    
379                    assetTagModelImpl._setOriginalGroupId = false;
380    
381                    assetTagModelImpl._columnBitmask = 0;
382            }
383    
384            @Override
385            public CacheModel<AssetTag> toCacheModel() {
386                    AssetTagCacheModel assetTagCacheModel = new AssetTagCacheModel();
387    
388                    assetTagCacheModel.tagId = getTagId();
389    
390                    assetTagCacheModel.groupId = getGroupId();
391    
392                    assetTagCacheModel.companyId = getCompanyId();
393    
394                    assetTagCacheModel.userId = getUserId();
395    
396                    assetTagCacheModel.userName = getUserName();
397    
398                    String userName = assetTagCacheModel.userName;
399    
400                    if ((userName != null) && (userName.length() == 0)) {
401                            assetTagCacheModel.userName = null;
402                    }
403    
404                    Date createDate = getCreateDate();
405    
406                    if (createDate != null) {
407                            assetTagCacheModel.createDate = createDate.getTime();
408                    }
409                    else {
410                            assetTagCacheModel.createDate = Long.MIN_VALUE;
411                    }
412    
413                    Date modifiedDate = getModifiedDate();
414    
415                    if (modifiedDate != null) {
416                            assetTagCacheModel.modifiedDate = modifiedDate.getTime();
417                    }
418                    else {
419                            assetTagCacheModel.modifiedDate = Long.MIN_VALUE;
420                    }
421    
422                    assetTagCacheModel.name = getName();
423    
424                    String name = assetTagCacheModel.name;
425    
426                    if ((name != null) && (name.length() == 0)) {
427                            assetTagCacheModel.name = null;
428                    }
429    
430                    assetTagCacheModel.assetCount = getAssetCount();
431    
432                    return assetTagCacheModel;
433            }
434    
435            @Override
436            public String toString() {
437                    StringBundler sb = new StringBundler(19);
438    
439                    sb.append("{tagId=");
440                    sb.append(getTagId());
441                    sb.append(", groupId=");
442                    sb.append(getGroupId());
443                    sb.append(", companyId=");
444                    sb.append(getCompanyId());
445                    sb.append(", userId=");
446                    sb.append(getUserId());
447                    sb.append(", userName=");
448                    sb.append(getUserName());
449                    sb.append(", createDate=");
450                    sb.append(getCreateDate());
451                    sb.append(", modifiedDate=");
452                    sb.append(getModifiedDate());
453                    sb.append(", name=");
454                    sb.append(getName());
455                    sb.append(", assetCount=");
456                    sb.append(getAssetCount());
457                    sb.append("}");
458    
459                    return sb.toString();
460            }
461    
462            public String toXmlString() {
463                    StringBundler sb = new StringBundler(31);
464    
465                    sb.append("<model><model-name>");
466                    sb.append("com.liferay.portlet.asset.model.AssetTag");
467                    sb.append("</model-name>");
468    
469                    sb.append(
470                            "<column><column-name>tagId</column-name><column-value><![CDATA[");
471                    sb.append(getTagId());
472                    sb.append("]]></column-value></column>");
473                    sb.append(
474                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
475                    sb.append(getGroupId());
476                    sb.append("]]></column-value></column>");
477                    sb.append(
478                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
479                    sb.append(getCompanyId());
480                    sb.append("]]></column-value></column>");
481                    sb.append(
482                            "<column><column-name>userId</column-name><column-value><![CDATA[");
483                    sb.append(getUserId());
484                    sb.append("]]></column-value></column>");
485                    sb.append(
486                            "<column><column-name>userName</column-name><column-value><![CDATA[");
487                    sb.append(getUserName());
488                    sb.append("]]></column-value></column>");
489                    sb.append(
490                            "<column><column-name>createDate</column-name><column-value><![CDATA[");
491                    sb.append(getCreateDate());
492                    sb.append("]]></column-value></column>");
493                    sb.append(
494                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
495                    sb.append(getModifiedDate());
496                    sb.append("]]></column-value></column>");
497                    sb.append(
498                            "<column><column-name>name</column-name><column-value><![CDATA[");
499                    sb.append(getName());
500                    sb.append("]]></column-value></column>");
501                    sb.append(
502                            "<column><column-name>assetCount</column-name><column-value><![CDATA[");
503                    sb.append(getAssetCount());
504                    sb.append("]]></column-value></column>");
505    
506                    sb.append("</model>");
507    
508                    return sb.toString();
509            }
510    
511            private static ClassLoader _classLoader = AssetTag.class.getClassLoader();
512            private static Class<?>[] _escapedModelProxyInterfaces = new Class[] {
513                            AssetTag.class
514                    };
515            private long _tagId;
516            private long _groupId;
517            private long _originalGroupId;
518            private boolean _setOriginalGroupId;
519            private long _companyId;
520            private long _userId;
521            private String _userUuid;
522            private String _userName;
523            private Date _createDate;
524            private Date _modifiedDate;
525            private String _name;
526            private int _assetCount;
527            private transient ExpandoBridge _expandoBridge;
528            private long _columnBitmask;
529            private AssetTag _escapedModelProxy;
530    }