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