001    /**
002     * Copyright (c) 2000-2012 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 com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
018    import com.liferay.portal.kernel.json.JSON;
019    import com.liferay.portal.kernel.util.GetterUtil;
020    import com.liferay.portal.kernel.util.ProxyUtil;
021    import com.liferay.portal.kernel.util.StringBundler;
022    import com.liferay.portal.kernel.util.StringPool;
023    import com.liferay.portal.model.CacheModel;
024    import com.liferay.portal.model.Resource;
025    import com.liferay.portal.model.ResourceModel;
026    import com.liferay.portal.model.ResourceSoap;
027    import com.liferay.portal.service.ServiceContext;
028    
029    import com.liferay.portlet.expando.model.ExpandoBridge;
030    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
031    
032    import java.io.Serializable;
033    
034    import java.sql.Types;
035    
036    import java.util.ArrayList;
037    import java.util.List;
038    
039    /**
040     * The base model implementation for the Resource service. Represents a row in the "Resource_" database table, with each column mapped to a property of this class.
041     *
042     * <p>
043     * This implementation and its corresponding interface {@link com.liferay.portal.model.ResourceModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link ResourceImpl}.
044     * </p>
045     *
046     * @author Brian Wing Shun Chan
047     * @see ResourceImpl
048     * @see com.liferay.portal.model.Resource
049     * @see com.liferay.portal.model.ResourceModel
050     * @generated
051     */
052    @JSON(strict = true)
053    public class ResourceModelImpl extends BaseModelImpl<Resource>
054            implements ResourceModel {
055            /*
056             * NOTE FOR DEVELOPERS:
057             *
058             * Never modify or reference this class directly. All methods that expect a resource model instance should use the {@link com.liferay.portal.model.Resource} interface instead.
059             */
060            public static final String TABLE_NAME = "Resource_";
061            public static final Object[][] TABLE_COLUMNS = {
062                            { "resourceId", Types.BIGINT },
063                            { "codeId", Types.BIGINT },
064                            { "primKey", Types.VARCHAR }
065                    };
066            public static final String TABLE_SQL_CREATE = "create table Resource_ (resourceId LONG not null primary key,codeId LONG,primKey VARCHAR(255) null)";
067            public static final String TABLE_SQL_DROP = "drop table Resource_";
068            public static final String DATA_SOURCE = "liferayDataSource";
069            public static final String SESSION_FACTORY = "liferaySessionFactory";
070            public static final String TX_MANAGER = "liferayTransactionManager";
071            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
072                                    "value.object.entity.cache.enabled.com.liferay.portal.model.Resource"),
073                            true);
074            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
075                                    "value.object.finder.cache.enabled.com.liferay.portal.model.Resource"),
076                            true);
077            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
078                                    "value.object.column.bitmask.enabled.com.liferay.portal.model.Resource"),
079                            true);
080            public static long CODEID_COLUMN_BITMASK = 1L;
081            public static long PRIMKEY_COLUMN_BITMASK = 2L;
082    
083            /**
084             * Converts the soap model instance into a normal model instance.
085             *
086             * @param soapModel the soap model instance to convert
087             * @return the normal model instance
088             */
089            public static Resource toModel(ResourceSoap soapModel) {
090                    Resource model = new ResourceImpl();
091    
092                    model.setResourceId(soapModel.getResourceId());
093                    model.setCodeId(soapModel.getCodeId());
094                    model.setPrimKey(soapModel.getPrimKey());
095    
096                    return model;
097            }
098    
099            /**
100             * Converts the soap model instances into normal model instances.
101             *
102             * @param soapModels the soap model instances to convert
103             * @return the normal model instances
104             */
105            public static List<Resource> toModels(ResourceSoap[] soapModels) {
106                    List<Resource> models = new ArrayList<Resource>(soapModels.length);
107    
108                    for (ResourceSoap soapModel : soapModels) {
109                            models.add(toModel(soapModel));
110                    }
111    
112                    return models;
113            }
114    
115            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
116                                    "lock.expiration.time.com.liferay.portal.model.Resource"));
117    
118            public ResourceModelImpl() {
119            }
120    
121            public long getPrimaryKey() {
122                    return _resourceId;
123            }
124    
125            public void setPrimaryKey(long primaryKey) {
126                    setResourceId(primaryKey);
127            }
128    
129            public Serializable getPrimaryKeyObj() {
130                    return new Long(_resourceId);
131            }
132    
133            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
134                    setPrimaryKey(((Long)primaryKeyObj).longValue());
135            }
136    
137            public Class<?> getModelClass() {
138                    return Resource.class;
139            }
140    
141            public String getModelClassName() {
142                    return Resource.class.getName();
143            }
144    
145            @JSON
146            public long getResourceId() {
147                    return _resourceId;
148            }
149    
150            public void setResourceId(long resourceId) {
151                    _resourceId = resourceId;
152            }
153    
154            @JSON
155            public long getCodeId() {
156                    return _codeId;
157            }
158    
159            public void setCodeId(long codeId) {
160                    _columnBitmask |= CODEID_COLUMN_BITMASK;
161    
162                    if (!_setOriginalCodeId) {
163                            _setOriginalCodeId = true;
164    
165                            _originalCodeId = _codeId;
166                    }
167    
168                    _codeId = codeId;
169            }
170    
171            public long getOriginalCodeId() {
172                    return _originalCodeId;
173            }
174    
175            @JSON
176            public String getPrimKey() {
177                    if (_primKey == null) {
178                            return StringPool.BLANK;
179                    }
180                    else {
181                            return _primKey;
182                    }
183            }
184    
185            public void setPrimKey(String primKey) {
186                    _columnBitmask |= PRIMKEY_COLUMN_BITMASK;
187    
188                    if (_originalPrimKey == null) {
189                            _originalPrimKey = _primKey;
190                    }
191    
192                    _primKey = primKey;
193            }
194    
195            public String getOriginalPrimKey() {
196                    return GetterUtil.getString(_originalPrimKey);
197            }
198    
199            public long getColumnBitmask() {
200                    return _columnBitmask;
201            }
202    
203            @Override
204            public Resource toEscapedModel() {
205                    if (_escapedModelProxy == null) {
206                            _escapedModelProxy = (Resource)ProxyUtil.newProxyInstance(_classLoader,
207                                            _escapedModelProxyInterfaces,
208                                            new AutoEscapeBeanHandler(this));
209                    }
210    
211                    return _escapedModelProxy;
212            }
213    
214            @Override
215            public ExpandoBridge getExpandoBridge() {
216                    if (_expandoBridge == null) {
217                            _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(0,
218                                            Resource.class.getName(), getPrimaryKey());
219                    }
220    
221                    return _expandoBridge;
222            }
223    
224            @Override
225            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
226                    getExpandoBridge().setAttributes(serviceContext);
227            }
228    
229            @Override
230            public Object clone() {
231                    ResourceImpl resourceImpl = new ResourceImpl();
232    
233                    resourceImpl.setResourceId(getResourceId());
234                    resourceImpl.setCodeId(getCodeId());
235                    resourceImpl.setPrimKey(getPrimKey());
236    
237                    resourceImpl.resetOriginalValues();
238    
239                    return resourceImpl;
240            }
241    
242            public int compareTo(Resource resource) {
243                    long primaryKey = resource.getPrimaryKey();
244    
245                    if (getPrimaryKey() < primaryKey) {
246                            return -1;
247                    }
248                    else if (getPrimaryKey() > primaryKey) {
249                            return 1;
250                    }
251                    else {
252                            return 0;
253                    }
254            }
255    
256            @Override
257            public boolean equals(Object obj) {
258                    if (obj == null) {
259                            return false;
260                    }
261    
262                    Resource resource = null;
263    
264                    try {
265                            resource = (Resource)obj;
266                    }
267                    catch (ClassCastException cce) {
268                            return false;
269                    }
270    
271                    long primaryKey = resource.getPrimaryKey();
272    
273                    if (getPrimaryKey() == primaryKey) {
274                            return true;
275                    }
276                    else {
277                            return false;
278                    }
279            }
280    
281            @Override
282            public int hashCode() {
283                    return (int)getPrimaryKey();
284            }
285    
286            @Override
287            public void resetOriginalValues() {
288                    ResourceModelImpl resourceModelImpl = this;
289    
290                    resourceModelImpl._originalCodeId = resourceModelImpl._codeId;
291    
292                    resourceModelImpl._setOriginalCodeId = false;
293    
294                    resourceModelImpl._originalPrimKey = resourceModelImpl._primKey;
295    
296                    resourceModelImpl._columnBitmask = 0;
297            }
298    
299            @Override
300            public CacheModel<Resource> toCacheModel() {
301                    ResourceCacheModel resourceCacheModel = new ResourceCacheModel();
302    
303                    resourceCacheModel.resourceId = getResourceId();
304    
305                    resourceCacheModel.codeId = getCodeId();
306    
307                    resourceCacheModel.primKey = getPrimKey();
308    
309                    String primKey = resourceCacheModel.primKey;
310    
311                    if ((primKey != null) && (primKey.length() == 0)) {
312                            resourceCacheModel.primKey = null;
313                    }
314    
315                    return resourceCacheModel;
316            }
317    
318            @Override
319            public String toString() {
320                    StringBundler sb = new StringBundler(7);
321    
322                    sb.append("{resourceId=");
323                    sb.append(getResourceId());
324                    sb.append(", codeId=");
325                    sb.append(getCodeId());
326                    sb.append(", primKey=");
327                    sb.append(getPrimKey());
328                    sb.append("}");
329    
330                    return sb.toString();
331            }
332    
333            public String toXmlString() {
334                    StringBundler sb = new StringBundler(13);
335    
336                    sb.append("<model><model-name>");
337                    sb.append("com.liferay.portal.model.Resource");
338                    sb.append("</model-name>");
339    
340                    sb.append(
341                            "<column><column-name>resourceId</column-name><column-value><![CDATA[");
342                    sb.append(getResourceId());
343                    sb.append("]]></column-value></column>");
344                    sb.append(
345                            "<column><column-name>codeId</column-name><column-value><![CDATA[");
346                    sb.append(getCodeId());
347                    sb.append("]]></column-value></column>");
348                    sb.append(
349                            "<column><column-name>primKey</column-name><column-value><![CDATA[");
350                    sb.append(getPrimKey());
351                    sb.append("]]></column-value></column>");
352    
353                    sb.append("</model>");
354    
355                    return sb.toString();
356            }
357    
358            private static ClassLoader _classLoader = Resource.class.getClassLoader();
359            private static Class<?>[] _escapedModelProxyInterfaces = new Class[] {
360                            Resource.class
361                    };
362            private long _resourceId;
363            private long _codeId;
364            private long _originalCodeId;
365            private boolean _setOriginalCodeId;
366            private String _primKey;
367            private String _originalPrimKey;
368            private transient ExpandoBridge _expandoBridge;
369            private long _columnBitmask;
370            private Resource _escapedModelProxy;
371    }