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.exception.SystemException;
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.model.BrowserTracker;
023    import com.liferay.portal.model.BrowserTrackerModel;
024    import com.liferay.portal.model.CacheModel;
025    import com.liferay.portal.service.ServiceContext;
026    import com.liferay.portal.util.PortalUtil;
027    
028    import com.liferay.portlet.expando.model.ExpandoBridge;
029    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
030    
031    import java.io.Serializable;
032    
033    import java.sql.Types;
034    
035    /**
036     * The base model implementation for the BrowserTracker service. Represents a row in the "BrowserTracker" database table, with each column mapped to a property of this class.
037     *
038     * <p>
039     * This implementation and its corresponding interface {@link com.liferay.portal.model.BrowserTrackerModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link BrowserTrackerImpl}.
040     * </p>
041     *
042     * @author Brian Wing Shun Chan
043     * @see BrowserTrackerImpl
044     * @see com.liferay.portal.model.BrowserTracker
045     * @see com.liferay.portal.model.BrowserTrackerModel
046     * @generated
047     */
048    public class BrowserTrackerModelImpl extends BaseModelImpl<BrowserTracker>
049            implements BrowserTrackerModel {
050            /*
051             * NOTE FOR DEVELOPERS:
052             *
053             * Never modify or reference this class directly. All methods that expect a browser tracker model instance should use the {@link com.liferay.portal.model.BrowserTracker} interface instead.
054             */
055            public static final String TABLE_NAME = "BrowserTracker";
056            public static final Object[][] TABLE_COLUMNS = {
057                            { "browserTrackerId", Types.BIGINT },
058                            { "userId", Types.BIGINT },
059                            { "browserKey", Types.BIGINT }
060                    };
061            public static final String TABLE_SQL_CREATE = "create table BrowserTracker (browserTrackerId LONG not null primary key,userId LONG,browserKey LONG)";
062            public static final String TABLE_SQL_DROP = "drop table BrowserTracker";
063            public static final String DATA_SOURCE = "liferayDataSource";
064            public static final String SESSION_FACTORY = "liferaySessionFactory";
065            public static final String TX_MANAGER = "liferayTransactionManager";
066            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
067                                    "value.object.entity.cache.enabled.com.liferay.portal.model.BrowserTracker"),
068                            true);
069            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
070                                    "value.object.finder.cache.enabled.com.liferay.portal.model.BrowserTracker"),
071                            true);
072            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
073                                    "value.object.column.bitmask.enabled.com.liferay.portal.model.BrowserTracker"),
074                            true);
075            public static long USERID_COLUMN_BITMASK = 1L;
076            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
077                                    "lock.expiration.time.com.liferay.portal.model.BrowserTracker"));
078    
079            public BrowserTrackerModelImpl() {
080            }
081    
082            public long getPrimaryKey() {
083                    return _browserTrackerId;
084            }
085    
086            public void setPrimaryKey(long primaryKey) {
087                    setBrowserTrackerId(primaryKey);
088            }
089    
090            public Serializable getPrimaryKeyObj() {
091                    return new Long(_browserTrackerId);
092            }
093    
094            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
095                    setPrimaryKey(((Long)primaryKeyObj).longValue());
096            }
097    
098            public Class<?> getModelClass() {
099                    return BrowserTracker.class;
100            }
101    
102            public String getModelClassName() {
103                    return BrowserTracker.class.getName();
104            }
105    
106            public long getBrowserTrackerId() {
107                    return _browserTrackerId;
108            }
109    
110            public void setBrowserTrackerId(long browserTrackerId) {
111                    _browserTrackerId = browserTrackerId;
112            }
113    
114            public long getUserId() {
115                    return _userId;
116            }
117    
118            public void setUserId(long userId) {
119                    _columnBitmask |= USERID_COLUMN_BITMASK;
120    
121                    if (!_setOriginalUserId) {
122                            _setOriginalUserId = true;
123    
124                            _originalUserId = _userId;
125                    }
126    
127                    _userId = userId;
128            }
129    
130            public String getUserUuid() throws SystemException {
131                    return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
132            }
133    
134            public void setUserUuid(String userUuid) {
135                    _userUuid = userUuid;
136            }
137    
138            public long getOriginalUserId() {
139                    return _originalUserId;
140            }
141    
142            public long getBrowserKey() {
143                    return _browserKey;
144            }
145    
146            public void setBrowserKey(long browserKey) {
147                    _browserKey = browserKey;
148            }
149    
150            public long getColumnBitmask() {
151                    return _columnBitmask;
152            }
153    
154            @Override
155            public BrowserTracker toEscapedModel() {
156                    if (_escapedModelProxy == null) {
157                            _escapedModelProxy = (BrowserTracker)ProxyUtil.newProxyInstance(_classLoader,
158                                            _escapedModelProxyInterfaces,
159                                            new AutoEscapeBeanHandler(this));
160                    }
161    
162                    return _escapedModelProxy;
163            }
164    
165            @Override
166            public ExpandoBridge getExpandoBridge() {
167                    if (_expandoBridge == null) {
168                            _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(0,
169                                            BrowserTracker.class.getName(), getPrimaryKey());
170                    }
171    
172                    return _expandoBridge;
173            }
174    
175            @Override
176            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
177                    getExpandoBridge().setAttributes(serviceContext);
178            }
179    
180            @Override
181            public Object clone() {
182                    BrowserTrackerImpl browserTrackerImpl = new BrowserTrackerImpl();
183    
184                    browserTrackerImpl.setBrowserTrackerId(getBrowserTrackerId());
185                    browserTrackerImpl.setUserId(getUserId());
186                    browserTrackerImpl.setBrowserKey(getBrowserKey());
187    
188                    browserTrackerImpl.resetOriginalValues();
189    
190                    return browserTrackerImpl;
191            }
192    
193            public int compareTo(BrowserTracker browserTracker) {
194                    long primaryKey = browserTracker.getPrimaryKey();
195    
196                    if (getPrimaryKey() < primaryKey) {
197                            return -1;
198                    }
199                    else if (getPrimaryKey() > primaryKey) {
200                            return 1;
201                    }
202                    else {
203                            return 0;
204                    }
205            }
206    
207            @Override
208            public boolean equals(Object obj) {
209                    if (obj == null) {
210                            return false;
211                    }
212    
213                    BrowserTracker browserTracker = null;
214    
215                    try {
216                            browserTracker = (BrowserTracker)obj;
217                    }
218                    catch (ClassCastException cce) {
219                            return false;
220                    }
221    
222                    long primaryKey = browserTracker.getPrimaryKey();
223    
224                    if (getPrimaryKey() == primaryKey) {
225                            return true;
226                    }
227                    else {
228                            return false;
229                    }
230            }
231    
232            @Override
233            public int hashCode() {
234                    return (int)getPrimaryKey();
235            }
236    
237            @Override
238            public void resetOriginalValues() {
239                    BrowserTrackerModelImpl browserTrackerModelImpl = this;
240    
241                    browserTrackerModelImpl._originalUserId = browserTrackerModelImpl._userId;
242    
243                    browserTrackerModelImpl._setOriginalUserId = false;
244    
245                    browserTrackerModelImpl._columnBitmask = 0;
246            }
247    
248            @Override
249            public CacheModel<BrowserTracker> toCacheModel() {
250                    BrowserTrackerCacheModel browserTrackerCacheModel = new BrowserTrackerCacheModel();
251    
252                    browserTrackerCacheModel.browserTrackerId = getBrowserTrackerId();
253    
254                    browserTrackerCacheModel.userId = getUserId();
255    
256                    browserTrackerCacheModel.browserKey = getBrowserKey();
257    
258                    return browserTrackerCacheModel;
259            }
260    
261            @Override
262            public String toString() {
263                    StringBundler sb = new StringBundler(7);
264    
265                    sb.append("{browserTrackerId=");
266                    sb.append(getBrowserTrackerId());
267                    sb.append(", userId=");
268                    sb.append(getUserId());
269                    sb.append(", browserKey=");
270                    sb.append(getBrowserKey());
271                    sb.append("}");
272    
273                    return sb.toString();
274            }
275    
276            public String toXmlString() {
277                    StringBundler sb = new StringBundler(13);
278    
279                    sb.append("<model><model-name>");
280                    sb.append("com.liferay.portal.model.BrowserTracker");
281                    sb.append("</model-name>");
282    
283                    sb.append(
284                            "<column><column-name>browserTrackerId</column-name><column-value><![CDATA[");
285                    sb.append(getBrowserTrackerId());
286                    sb.append("]]></column-value></column>");
287                    sb.append(
288                            "<column><column-name>userId</column-name><column-value><![CDATA[");
289                    sb.append(getUserId());
290                    sb.append("]]></column-value></column>");
291                    sb.append(
292                            "<column><column-name>browserKey</column-name><column-value><![CDATA[");
293                    sb.append(getBrowserKey());
294                    sb.append("]]></column-value></column>");
295    
296                    sb.append("</model>");
297    
298                    return sb.toString();
299            }
300    
301            private static ClassLoader _classLoader = BrowserTracker.class.getClassLoader();
302            private static Class<?>[] _escapedModelProxyInterfaces = new Class[] {
303                            BrowserTracker.class
304                    };
305            private long _browserTrackerId;
306            private long _userId;
307            private String _userUuid;
308            private long _originalUserId;
309            private boolean _setOriginalUserId;
310            private long _browserKey;
311            private transient ExpandoBridge _expandoBridge;
312            private long _columnBitmask;
313            private BrowserTracker _escapedModelProxy;
314    }