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.kernel.util.StringPool;
023    import com.liferay.portal.model.CacheModel;
024    import com.liferay.portal.model.UserTracker;
025    import com.liferay.portal.model.UserTrackerModel;
026    import com.liferay.portal.service.ServiceContext;
027    import com.liferay.portal.util.PortalUtil;
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.Date;
037    
038    /**
039     * The base model implementation for the UserTracker service. Represents a row in the "UserTracker" database table, with each column mapped to a property of this class.
040     *
041     * <p>
042     * This implementation and its corresponding interface {@link com.liferay.portal.model.UserTrackerModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link UserTrackerImpl}.
043     * </p>
044     *
045     * @author Brian Wing Shun Chan
046     * @see UserTrackerImpl
047     * @see com.liferay.portal.model.UserTracker
048     * @see com.liferay.portal.model.UserTrackerModel
049     * @generated
050     */
051    public class UserTrackerModelImpl extends BaseModelImpl<UserTracker>
052            implements UserTrackerModel {
053            /*
054             * NOTE FOR DEVELOPERS:
055             *
056             * Never modify or reference this class directly. All methods that expect a user tracker model instance should use the {@link com.liferay.portal.model.UserTracker} interface instead.
057             */
058            public static final String TABLE_NAME = "UserTracker";
059            public static final Object[][] TABLE_COLUMNS = {
060                            { "userTrackerId", Types.BIGINT },
061                            { "companyId", Types.BIGINT },
062                            { "userId", Types.BIGINT },
063                            { "modifiedDate", Types.TIMESTAMP },
064                            { "sessionId", Types.VARCHAR },
065                            { "remoteAddr", Types.VARCHAR },
066                            { "remoteHost", Types.VARCHAR },
067                            { "userAgent", Types.VARCHAR }
068                    };
069            public static final String TABLE_SQL_CREATE = "create table UserTracker (userTrackerId LONG not null primary key,companyId LONG,userId LONG,modifiedDate DATE null,sessionId VARCHAR(200) null,remoteAddr VARCHAR(75) null,remoteHost VARCHAR(75) null,userAgent VARCHAR(200) null)";
070            public static final String TABLE_SQL_DROP = "drop table UserTracker";
071            public static final String DATA_SOURCE = "liferayDataSource";
072            public static final String SESSION_FACTORY = "liferaySessionFactory";
073            public static final String TX_MANAGER = "liferayTransactionManager";
074            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
075                                    "value.object.entity.cache.enabled.com.liferay.portal.model.UserTracker"),
076                            true);
077            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
078                                    "value.object.finder.cache.enabled.com.liferay.portal.model.UserTracker"),
079                            true);
080            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
081                                    "value.object.column.bitmask.enabled.com.liferay.portal.model.UserTracker"),
082                            true);
083            public static long COMPANYID_COLUMN_BITMASK = 1L;
084            public static long SESSIONID_COLUMN_BITMASK = 2L;
085            public static long USERID_COLUMN_BITMASK = 4L;
086            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
087                                    "lock.expiration.time.com.liferay.portal.model.UserTracker"));
088    
089            public UserTrackerModelImpl() {
090            }
091    
092            public long getPrimaryKey() {
093                    return _userTrackerId;
094            }
095    
096            public void setPrimaryKey(long primaryKey) {
097                    setUserTrackerId(primaryKey);
098            }
099    
100            public Serializable getPrimaryKeyObj() {
101                    return new Long(_userTrackerId);
102            }
103    
104            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
105                    setPrimaryKey(((Long)primaryKeyObj).longValue());
106            }
107    
108            public Class<?> getModelClass() {
109                    return UserTracker.class;
110            }
111    
112            public String getModelClassName() {
113                    return UserTracker.class.getName();
114            }
115    
116            public long getUserTrackerId() {
117                    return _userTrackerId;
118            }
119    
120            public void setUserTrackerId(long userTrackerId) {
121                    _userTrackerId = userTrackerId;
122            }
123    
124            public long getCompanyId() {
125                    return _companyId;
126            }
127    
128            public void setCompanyId(long companyId) {
129                    _columnBitmask |= COMPANYID_COLUMN_BITMASK;
130    
131                    if (!_setOriginalCompanyId) {
132                            _setOriginalCompanyId = true;
133    
134                            _originalCompanyId = _companyId;
135                    }
136    
137                    _companyId = companyId;
138            }
139    
140            public long getOriginalCompanyId() {
141                    return _originalCompanyId;
142            }
143    
144            public long getUserId() {
145                    return _userId;
146            }
147    
148            public void setUserId(long userId) {
149                    _columnBitmask |= USERID_COLUMN_BITMASK;
150    
151                    if (!_setOriginalUserId) {
152                            _setOriginalUserId = true;
153    
154                            _originalUserId = _userId;
155                    }
156    
157                    _userId = userId;
158            }
159    
160            public String getUserUuid() throws SystemException {
161                    return PortalUtil.getUserValue(getUserId(), "uuid", _userUuid);
162            }
163    
164            public void setUserUuid(String userUuid) {
165                    _userUuid = userUuid;
166            }
167    
168            public long getOriginalUserId() {
169                    return _originalUserId;
170            }
171    
172            public Date getModifiedDate() {
173                    return _modifiedDate;
174            }
175    
176            public void setModifiedDate(Date modifiedDate) {
177                    _modifiedDate = modifiedDate;
178            }
179    
180            public String getSessionId() {
181                    if (_sessionId == null) {
182                            return StringPool.BLANK;
183                    }
184                    else {
185                            return _sessionId;
186                    }
187            }
188    
189            public void setSessionId(String sessionId) {
190                    _columnBitmask |= SESSIONID_COLUMN_BITMASK;
191    
192                    if (_originalSessionId == null) {
193                            _originalSessionId = _sessionId;
194                    }
195    
196                    _sessionId = sessionId;
197            }
198    
199            public String getOriginalSessionId() {
200                    return GetterUtil.getString(_originalSessionId);
201            }
202    
203            public String getRemoteAddr() {
204                    if (_remoteAddr == null) {
205                            return StringPool.BLANK;
206                    }
207                    else {
208                            return _remoteAddr;
209                    }
210            }
211    
212            public void setRemoteAddr(String remoteAddr) {
213                    _remoteAddr = remoteAddr;
214            }
215    
216            public String getRemoteHost() {
217                    if (_remoteHost == null) {
218                            return StringPool.BLANK;
219                    }
220                    else {
221                            return _remoteHost;
222                    }
223            }
224    
225            public void setRemoteHost(String remoteHost) {
226                    _remoteHost = remoteHost;
227            }
228    
229            public String getUserAgent() {
230                    if (_userAgent == null) {
231                            return StringPool.BLANK;
232                    }
233                    else {
234                            return _userAgent;
235                    }
236            }
237    
238            public void setUserAgent(String userAgent) {
239                    _userAgent = userAgent;
240            }
241    
242            public long getColumnBitmask() {
243                    return _columnBitmask;
244            }
245    
246            @Override
247            public UserTracker toEscapedModel() {
248                    if (_escapedModelProxy == null) {
249                            _escapedModelProxy = (UserTracker)ProxyUtil.newProxyInstance(_classLoader,
250                                            _escapedModelProxyInterfaces,
251                                            new AutoEscapeBeanHandler(this));
252                    }
253    
254                    return _escapedModelProxy;
255            }
256    
257            @Override
258            public ExpandoBridge getExpandoBridge() {
259                    if (_expandoBridge == null) {
260                            _expandoBridge = ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
261                                            UserTracker.class.getName(), getPrimaryKey());
262                    }
263    
264                    return _expandoBridge;
265            }
266    
267            @Override
268            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
269                    getExpandoBridge().setAttributes(serviceContext);
270            }
271    
272            @Override
273            public Object clone() {
274                    UserTrackerImpl userTrackerImpl = new UserTrackerImpl();
275    
276                    userTrackerImpl.setUserTrackerId(getUserTrackerId());
277                    userTrackerImpl.setCompanyId(getCompanyId());
278                    userTrackerImpl.setUserId(getUserId());
279                    userTrackerImpl.setModifiedDate(getModifiedDate());
280                    userTrackerImpl.setSessionId(getSessionId());
281                    userTrackerImpl.setRemoteAddr(getRemoteAddr());
282                    userTrackerImpl.setRemoteHost(getRemoteHost());
283                    userTrackerImpl.setUserAgent(getUserAgent());
284    
285                    userTrackerImpl.resetOriginalValues();
286    
287                    return userTrackerImpl;
288            }
289    
290            public int compareTo(UserTracker userTracker) {
291                    long primaryKey = userTracker.getPrimaryKey();
292    
293                    if (getPrimaryKey() < primaryKey) {
294                            return -1;
295                    }
296                    else if (getPrimaryKey() > primaryKey) {
297                            return 1;
298                    }
299                    else {
300                            return 0;
301                    }
302            }
303    
304            @Override
305            public boolean equals(Object obj) {
306                    if (obj == null) {
307                            return false;
308                    }
309    
310                    UserTracker userTracker = null;
311    
312                    try {
313                            userTracker = (UserTracker)obj;
314                    }
315                    catch (ClassCastException cce) {
316                            return false;
317                    }
318    
319                    long primaryKey = userTracker.getPrimaryKey();
320    
321                    if (getPrimaryKey() == primaryKey) {
322                            return true;
323                    }
324                    else {
325                            return false;
326                    }
327            }
328    
329            @Override
330            public int hashCode() {
331                    return (int)getPrimaryKey();
332            }
333    
334            @Override
335            public void resetOriginalValues() {
336                    UserTrackerModelImpl userTrackerModelImpl = this;
337    
338                    userTrackerModelImpl._originalCompanyId = userTrackerModelImpl._companyId;
339    
340                    userTrackerModelImpl._setOriginalCompanyId = false;
341    
342                    userTrackerModelImpl._originalUserId = userTrackerModelImpl._userId;
343    
344                    userTrackerModelImpl._setOriginalUserId = false;
345    
346                    userTrackerModelImpl._originalSessionId = userTrackerModelImpl._sessionId;
347    
348                    userTrackerModelImpl._columnBitmask = 0;
349            }
350    
351            @Override
352            public CacheModel<UserTracker> toCacheModel() {
353                    UserTrackerCacheModel userTrackerCacheModel = new UserTrackerCacheModel();
354    
355                    userTrackerCacheModel.userTrackerId = getUserTrackerId();
356    
357                    userTrackerCacheModel.companyId = getCompanyId();
358    
359                    userTrackerCacheModel.userId = getUserId();
360    
361                    Date modifiedDate = getModifiedDate();
362    
363                    if (modifiedDate != null) {
364                            userTrackerCacheModel.modifiedDate = modifiedDate.getTime();
365                    }
366                    else {
367                            userTrackerCacheModel.modifiedDate = Long.MIN_VALUE;
368                    }
369    
370                    userTrackerCacheModel.sessionId = getSessionId();
371    
372                    String sessionId = userTrackerCacheModel.sessionId;
373    
374                    if ((sessionId != null) && (sessionId.length() == 0)) {
375                            userTrackerCacheModel.sessionId = null;
376                    }
377    
378                    userTrackerCacheModel.remoteAddr = getRemoteAddr();
379    
380                    String remoteAddr = userTrackerCacheModel.remoteAddr;
381    
382                    if ((remoteAddr != null) && (remoteAddr.length() == 0)) {
383                            userTrackerCacheModel.remoteAddr = null;
384                    }
385    
386                    userTrackerCacheModel.remoteHost = getRemoteHost();
387    
388                    String remoteHost = userTrackerCacheModel.remoteHost;
389    
390                    if ((remoteHost != null) && (remoteHost.length() == 0)) {
391                            userTrackerCacheModel.remoteHost = null;
392                    }
393    
394                    userTrackerCacheModel.userAgent = getUserAgent();
395    
396                    String userAgent = userTrackerCacheModel.userAgent;
397    
398                    if ((userAgent != null) && (userAgent.length() == 0)) {
399                            userTrackerCacheModel.userAgent = null;
400                    }
401    
402                    return userTrackerCacheModel;
403            }
404    
405            @Override
406            public String toString() {
407                    StringBundler sb = new StringBundler(17);
408    
409                    sb.append("{userTrackerId=");
410                    sb.append(getUserTrackerId());
411                    sb.append(", companyId=");
412                    sb.append(getCompanyId());
413                    sb.append(", userId=");
414                    sb.append(getUserId());
415                    sb.append(", modifiedDate=");
416                    sb.append(getModifiedDate());
417                    sb.append(", sessionId=");
418                    sb.append(getSessionId());
419                    sb.append(", remoteAddr=");
420                    sb.append(getRemoteAddr());
421                    sb.append(", remoteHost=");
422                    sb.append(getRemoteHost());
423                    sb.append(", userAgent=");
424                    sb.append(getUserAgent());
425                    sb.append("}");
426    
427                    return sb.toString();
428            }
429    
430            public String toXmlString() {
431                    StringBundler sb = new StringBundler(28);
432    
433                    sb.append("<model><model-name>");
434                    sb.append("com.liferay.portal.model.UserTracker");
435                    sb.append("</model-name>");
436    
437                    sb.append(
438                            "<column><column-name>userTrackerId</column-name><column-value><![CDATA[");
439                    sb.append(getUserTrackerId());
440                    sb.append("]]></column-value></column>");
441                    sb.append(
442                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
443                    sb.append(getCompanyId());
444                    sb.append("]]></column-value></column>");
445                    sb.append(
446                            "<column><column-name>userId</column-name><column-value><![CDATA[");
447                    sb.append(getUserId());
448                    sb.append("]]></column-value></column>");
449                    sb.append(
450                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
451                    sb.append(getModifiedDate());
452                    sb.append("]]></column-value></column>");
453                    sb.append(
454                            "<column><column-name>sessionId</column-name><column-value><![CDATA[");
455                    sb.append(getSessionId());
456                    sb.append("]]></column-value></column>");
457                    sb.append(
458                            "<column><column-name>remoteAddr</column-name><column-value><![CDATA[");
459                    sb.append(getRemoteAddr());
460                    sb.append("]]></column-value></column>");
461                    sb.append(
462                            "<column><column-name>remoteHost</column-name><column-value><![CDATA[");
463                    sb.append(getRemoteHost());
464                    sb.append("]]></column-value></column>");
465                    sb.append(
466                            "<column><column-name>userAgent</column-name><column-value><![CDATA[");
467                    sb.append(getUserAgent());
468                    sb.append("]]></column-value></column>");
469    
470                    sb.append("</model>");
471    
472                    return sb.toString();
473            }
474    
475            private static ClassLoader _classLoader = UserTracker.class.getClassLoader();
476            private static Class<?>[] _escapedModelProxyInterfaces = new Class[] {
477                            UserTracker.class
478                    };
479            private long _userTrackerId;
480            private long _companyId;
481            private long _originalCompanyId;
482            private boolean _setOriginalCompanyId;
483            private long _userId;
484            private String _userUuid;
485            private long _originalUserId;
486            private boolean _setOriginalUserId;
487            private Date _modifiedDate;
488            private String _sessionId;
489            private String _originalSessionId;
490            private String _remoteAddr;
491            private String _remoteHost;
492            private String _userAgent;
493            private transient ExpandoBridge _expandoBridge;
494            private long _columnBitmask;
495            private UserTracker _escapedModelProxy;
496    }