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