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.counter.model.impl;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.counter.model.Counter;
020    import com.liferay.counter.model.CounterModel;
021    
022    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
023    import com.liferay.portal.kernel.util.GetterUtil;
024    import com.liferay.portal.kernel.util.ProxyUtil;
025    import com.liferay.portal.kernel.util.StringBundler;
026    import com.liferay.portal.kernel.util.StringPool;
027    import com.liferay.portal.model.CacheModel;
028    import com.liferay.portal.model.impl.BaseModelImpl;
029    
030    import java.io.Serializable;
031    
032    import java.sql.Types;
033    
034    import java.util.HashMap;
035    import java.util.Map;
036    
037    /**
038     * The base model implementation for the Counter service. Represents a row in the "Counter" database table, with each column mapped to a property of this class.
039     *
040     * <p>
041     * This implementation and its corresponding interface {@link CounterModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link CounterImpl}.
042     * </p>
043     *
044     * @author Brian Wing Shun Chan
045     * @see CounterImpl
046     * @see Counter
047     * @see CounterModel
048     * @generated
049     */
050    @ProviderType
051    public class CounterModelImpl extends BaseModelImpl<Counter>
052            implements CounterModel {
053            /*
054             * NOTE FOR DEVELOPERS:
055             *
056             * Never modify or reference this class directly. All methods that expect a counter model instance should use the {@link Counter} interface instead.
057             */
058            public static final String TABLE_NAME = "Counter";
059            public static final Object[][] TABLE_COLUMNS = {
060                            { "name", Types.VARCHAR },
061                            { "currentId", Types.BIGINT }
062                    };
063            public static final Map<String, Integer> TABLE_COLUMNS_MAP = new HashMap<String, Integer>();
064    
065            static {
066                    TABLE_COLUMNS_MAP.put("name", Types.VARCHAR);
067                    TABLE_COLUMNS_MAP.put("currentId", Types.BIGINT);
068            }
069    
070            public static final String TABLE_SQL_CREATE = "create table Counter (name VARCHAR(75) not null primary key,currentId LONG)";
071            public static final String TABLE_SQL_DROP = "drop table Counter";
072            public static final String ORDER_BY_JPQL = " ORDER BY counter.name ASC";
073            public static final String ORDER_BY_SQL = " ORDER BY Counter.name ASC";
074            public static final String DATA_SOURCE = "liferayDataSource";
075            public static final String SESSION_FACTORY = "liferaySessionFactory";
076            public static final String TX_MANAGER = "liferayTransactionManager";
077            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
078                                    "value.object.entity.cache.enabled.com.liferay.counter.model.Counter"),
079                            false);
080            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
081                                    "value.object.finder.cache.enabled.com.liferay.counter.model.Counter"),
082                            false);
083            public static final boolean COLUMN_BITMASK_ENABLED = false;
084            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
085                                    "lock.expiration.time.com.liferay.counter.model.Counter"));
086    
087            public CounterModelImpl() {
088            }
089    
090            @Override
091            public String getPrimaryKey() {
092                    return _name;
093            }
094    
095            @Override
096            public void setPrimaryKey(String primaryKey) {
097                    setName(primaryKey);
098            }
099    
100            @Override
101            public Serializable getPrimaryKeyObj() {
102                    return _name;
103            }
104    
105            @Override
106            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
107                    setPrimaryKey((String)primaryKeyObj);
108            }
109    
110            @Override
111            public Class<?> getModelClass() {
112                    return Counter.class;
113            }
114    
115            @Override
116            public String getModelClassName() {
117                    return Counter.class.getName();
118            }
119    
120            @Override
121            public Map<String, Object> getModelAttributes() {
122                    Map<String, Object> attributes = new HashMap<String, Object>();
123    
124                    attributes.put("name", getName());
125                    attributes.put("currentId", getCurrentId());
126    
127                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
128                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
129    
130                    return attributes;
131            }
132    
133            @Override
134            public void setModelAttributes(Map<String, Object> attributes) {
135                    String name = (String)attributes.get("name");
136    
137                    if (name != null) {
138                            setName(name);
139                    }
140    
141                    Long currentId = (Long)attributes.get("currentId");
142    
143                    if (currentId != null) {
144                            setCurrentId(currentId);
145                    }
146            }
147    
148            @Override
149            public String getName() {
150                    if (_name == null) {
151                            return StringPool.BLANK;
152                    }
153                    else {
154                            return _name;
155                    }
156            }
157    
158            @Override
159            public void setName(String name) {
160                    _name = name;
161            }
162    
163            @Override
164            public long getCurrentId() {
165                    return _currentId;
166            }
167    
168            @Override
169            public void setCurrentId(long currentId) {
170                    _currentId = currentId;
171            }
172    
173            @Override
174            public Counter toEscapedModel() {
175                    if (_escapedModel == null) {
176                            _escapedModel = (Counter)ProxyUtil.newProxyInstance(_classLoader,
177                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
178                    }
179    
180                    return _escapedModel;
181            }
182    
183            @Override
184            public Object clone() {
185                    CounterImpl counterImpl = new CounterImpl();
186    
187                    counterImpl.setName(getName());
188                    counterImpl.setCurrentId(getCurrentId());
189    
190                    counterImpl.resetOriginalValues();
191    
192                    return counterImpl;
193            }
194    
195            @Override
196            public int compareTo(Counter counter) {
197                    String primaryKey = counter.getPrimaryKey();
198    
199                    return getPrimaryKey().compareTo(primaryKey);
200            }
201    
202            @Override
203            public boolean equals(Object obj) {
204                    if (this == obj) {
205                            return true;
206                    }
207    
208                    if (!(obj instanceof Counter)) {
209                            return false;
210                    }
211    
212                    Counter counter = (Counter)obj;
213    
214                    String primaryKey = counter.getPrimaryKey();
215    
216                    if (getPrimaryKey().equals(primaryKey)) {
217                            return true;
218                    }
219                    else {
220                            return false;
221                    }
222            }
223    
224            @Override
225            public int hashCode() {
226                    return getPrimaryKey().hashCode();
227            }
228    
229            @Override
230            public boolean isEntityCacheEnabled() {
231                    return ENTITY_CACHE_ENABLED;
232            }
233    
234            @Override
235            public boolean isFinderCacheEnabled() {
236                    return FINDER_CACHE_ENABLED;
237            }
238    
239            @Override
240            public void resetOriginalValues() {
241            }
242    
243            @Override
244            public CacheModel<Counter> toCacheModel() {
245                    CounterCacheModel counterCacheModel = new CounterCacheModel();
246    
247                    counterCacheModel.name = getName();
248    
249                    String name = counterCacheModel.name;
250    
251                    if ((name != null) && (name.length() == 0)) {
252                            counterCacheModel.name = null;
253                    }
254    
255                    counterCacheModel.currentId = getCurrentId();
256    
257                    return counterCacheModel;
258            }
259    
260            @Override
261            public String toString() {
262                    StringBundler sb = new StringBundler(5);
263    
264                    sb.append("{name=");
265                    sb.append(getName());
266                    sb.append(", currentId=");
267                    sb.append(getCurrentId());
268                    sb.append("}");
269    
270                    return sb.toString();
271            }
272    
273            @Override
274            public String toXmlString() {
275                    StringBundler sb = new StringBundler(10);
276    
277                    sb.append("<model><model-name>");
278                    sb.append("com.liferay.counter.model.Counter");
279                    sb.append("</model-name>");
280    
281                    sb.append(
282                            "<column><column-name>name</column-name><column-value><![CDATA[");
283                    sb.append(getName());
284                    sb.append("]]></column-value></column>");
285                    sb.append(
286                            "<column><column-name>currentId</column-name><column-value><![CDATA[");
287                    sb.append(getCurrentId());
288                    sb.append("]]></column-value></column>");
289    
290                    sb.append("</model>");
291    
292                    return sb.toString();
293            }
294    
295            private static final ClassLoader _classLoader = Counter.class.getClassLoader();
296            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
297                            Counter.class
298                    };
299            private String _name;
300            private long _currentId;
301            private Counter _escapedModel;
302    }