1
22
23 package com.liferay.portal.service.impl;
24
25 import com.liferay.portal.PortalException;
26 import com.liferay.portal.SystemException;
27 import com.liferay.portal.model.UserTracker;
28 import com.liferay.portal.model.UserTrackerPath;
29 import com.liferay.portal.service.base.UserTrackerLocalServiceBaseImpl;
30 import com.liferay.portal.util.PropsValues;
31
32 import java.util.Date;
33 import java.util.Iterator;
34 import java.util.List;
35
36
41 public class UserTrackerLocalServiceImpl
42 extends UserTrackerLocalServiceBaseImpl {
43
44 public UserTracker addUserTracker(
45 long companyId, long userId, Date modifiedDate, String sessionId,
46 String remoteAddr, String remoteHost, String userAgent,
47 List<UserTrackerPath> userTrackerPaths)
48 throws SystemException {
49
50 if (PropsValues.SESSION_TRACKER_PERSISTENCE_ENABLED) {
51 long userTrackerId = counterLocalService.increment(
52 UserTracker.class.getName());
53
54 UserTracker userTracker =
55 userTrackerPersistence.create(userTrackerId);
56
57 userTracker.setCompanyId(companyId);
58 userTracker.setUserId(userId);
59 userTracker.setModifiedDate(modifiedDate);
60 userTracker.setSessionId(sessionId);
61 userTracker.setRemoteAddr(remoteAddr);
62 userTracker.setRemoteHost(remoteHost);
63 userTracker.setUserAgent(userAgent);
64
65 userTrackerPersistence.update(userTracker, false);
66
67 Iterator<UserTrackerPath> itr = userTrackerPaths.iterator();
68
69 while (itr.hasNext()) {
70 UserTrackerPath userTrackerPath = itr.next();
71
72 long pathId = counterLocalService.increment(
73 UserTrackerPath.class.getName());
74
75 userTrackerPath.setUserTrackerPathId(pathId);
76 userTrackerPath.setUserTrackerId(userTrackerId);
77
78 userTrackerPathPersistence.update(userTrackerPath, false);
79 }
80
81 return userTracker;
82 }
83 else {
84 return null;
85 }
86 }
87
88 public void deleteUserTracker(long userTrackerId)
89 throws PortalException, SystemException {
90
91
93 userTrackerPathPersistence.removeByUserTrackerId(userTrackerId);
94
95
97 userTrackerPersistence.remove(userTrackerId);
98 }
99
100 public List<UserTracker> getUserTrackers(long companyId, int start, int end)
101 throws SystemException {
102
103 return userTrackerPersistence.findByCompanyId(companyId, start, end);
104 }
105
106 }