1   /**
2    * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
3    *
4    * This library is free software; you can redistribute it and/or modify it under
5    * the terms of the GNU Lesser General Public License as published by the Free
6    * Software Foundation; either version 2.1 of the License, or (at your option)
7    * any later version.
8    *
9    * This library is distributed in the hope that it will be useful, but WITHOUT
10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11   * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12   * details.
13   */
14  
15  package com.liferay.portal.service.persistence;
16  
17  import com.liferay.portal.NoSuchBrowserTrackerException;
18  import com.liferay.portal.NoSuchModelException;
19  import com.liferay.portal.SystemException;
20  import com.liferay.portal.kernel.annotation.BeanReference;
21  import com.liferay.portal.kernel.cache.CacheRegistry;
22  import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
23  import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
24  import com.liferay.portal.kernel.dao.orm.FinderPath;
25  import com.liferay.portal.kernel.dao.orm.Query;
26  import com.liferay.portal.kernel.dao.orm.QueryPos;
27  import com.liferay.portal.kernel.dao.orm.QueryUtil;
28  import com.liferay.portal.kernel.dao.orm.Session;
29  import com.liferay.portal.kernel.log.Log;
30  import com.liferay.portal.kernel.log.LogFactoryUtil;
31  import com.liferay.portal.kernel.util.GetterUtil;
32  import com.liferay.portal.kernel.util.OrderByComparator;
33  import com.liferay.portal.kernel.util.StringBundler;
34  import com.liferay.portal.kernel.util.StringPool;
35  import com.liferay.portal.kernel.util.StringUtil;
36  import com.liferay.portal.model.BrowserTracker;
37  import com.liferay.portal.model.ModelListener;
38  import com.liferay.portal.model.impl.BrowserTrackerImpl;
39  import com.liferay.portal.model.impl.BrowserTrackerModelImpl;
40  import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
41  
42  import java.io.Serializable;
43  
44  import java.util.ArrayList;
45  import java.util.Collections;
46  import java.util.List;
47  
48  /**
49   * <a href="BrowserTrackerPersistenceImpl.java.html"><b><i>View Source</i></b></a>
50   *
51   * <p>
52   * ServiceBuilder generated this class. Modifications in this class will be
53   * overwritten the next time is generated.
54   * </p>
55   *
56   * @author    Brian Wing Shun Chan
57   * @see       BrowserTrackerPersistence
58   * @see       BrowserTrackerUtil
59   * @generated
60   */
61  public class BrowserTrackerPersistenceImpl extends BasePersistenceImpl<BrowserTracker>
62      implements BrowserTrackerPersistence {
63      public static final String FINDER_CLASS_NAME_ENTITY = BrowserTrackerImpl.class.getName();
64      public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
65          ".List";
66      public static final FinderPath FINDER_PATH_FETCH_BY_USERID = new FinderPath(BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
67              BrowserTrackerModelImpl.FINDER_CACHE_ENABLED,
68              FINDER_CLASS_NAME_ENTITY, "fetchByUserId",
69              new String[] { Long.class.getName() });
70      public static final FinderPath FINDER_PATH_COUNT_BY_USERID = new FinderPath(BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
71              BrowserTrackerModelImpl.FINDER_CACHE_ENABLED,
72              FINDER_CLASS_NAME_LIST, "countByUserId",
73              new String[] { Long.class.getName() });
74      public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
75              BrowserTrackerModelImpl.FINDER_CACHE_ENABLED,
76              FINDER_CLASS_NAME_LIST, "findAll", new String[0]);
77      public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
78              BrowserTrackerModelImpl.FINDER_CACHE_ENABLED,
79              FINDER_CLASS_NAME_LIST, "countAll", new String[0]);
80  
81      public void cacheResult(BrowserTracker browserTracker) {
82          EntityCacheUtil.putResult(BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
83              BrowserTrackerImpl.class, browserTracker.getPrimaryKey(),
84              browserTracker);
85  
86          FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_USERID,
87              new Object[] { new Long(browserTracker.getUserId()) },
88              browserTracker);
89      }
90  
91      public void cacheResult(List<BrowserTracker> browserTrackers) {
92          for (BrowserTracker browserTracker : browserTrackers) {
93              if (EntityCacheUtil.getResult(
94                          BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
95                          BrowserTrackerImpl.class,
96                          browserTracker.getPrimaryKey(), this) == null) {
97                  cacheResult(browserTracker);
98              }
99          }
100     }
101 
102     public void clearCache() {
103         CacheRegistry.clear(BrowserTrackerImpl.class.getName());
104         EntityCacheUtil.clearCache(BrowserTrackerImpl.class.getName());
105         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
106         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
107     }
108 
109     public BrowserTracker create(long browserTrackerId) {
110         BrowserTracker browserTracker = new BrowserTrackerImpl();
111 
112         browserTracker.setNew(true);
113         browserTracker.setPrimaryKey(browserTrackerId);
114 
115         return browserTracker;
116     }
117 
118     public BrowserTracker remove(Serializable primaryKey)
119         throws NoSuchModelException, SystemException {
120         return remove(((Long)primaryKey).longValue());
121     }
122 
123     public BrowserTracker remove(long browserTrackerId)
124         throws NoSuchBrowserTrackerException, SystemException {
125         Session session = null;
126 
127         try {
128             session = openSession();
129 
130             BrowserTracker browserTracker = (BrowserTracker)session.get(BrowserTrackerImpl.class,
131                     new Long(browserTrackerId));
132 
133             if (browserTracker == null) {
134                 if (_log.isWarnEnabled()) {
135                     _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
136                         browserTrackerId);
137                 }
138 
139                 throw new NoSuchBrowserTrackerException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
140                     browserTrackerId);
141             }
142 
143             return remove(browserTracker);
144         }
145         catch (NoSuchBrowserTrackerException nsee) {
146             throw nsee;
147         }
148         catch (Exception e) {
149             throw processException(e);
150         }
151         finally {
152             closeSession(session);
153         }
154     }
155 
156     public BrowserTracker remove(BrowserTracker browserTracker)
157         throws SystemException {
158         for (ModelListener<BrowserTracker> listener : listeners) {
159             listener.onBeforeRemove(browserTracker);
160         }
161 
162         browserTracker = removeImpl(browserTracker);
163 
164         for (ModelListener<BrowserTracker> listener : listeners) {
165             listener.onAfterRemove(browserTracker);
166         }
167 
168         return browserTracker;
169     }
170 
171     protected BrowserTracker removeImpl(BrowserTracker browserTracker)
172         throws SystemException {
173         browserTracker = toUnwrappedModel(browserTracker);
174 
175         Session session = null;
176 
177         try {
178             session = openSession();
179 
180             if (browserTracker.isCachedModel() || BatchSessionUtil.isEnabled()) {
181                 Object staleObject = session.get(BrowserTrackerImpl.class,
182                         browserTracker.getPrimaryKeyObj());
183 
184                 if (staleObject != null) {
185                     session.evict(staleObject);
186                 }
187             }
188 
189             session.delete(browserTracker);
190 
191             session.flush();
192         }
193         catch (Exception e) {
194             throw processException(e);
195         }
196         finally {
197             closeSession(session);
198         }
199 
200         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
201 
202         BrowserTrackerModelImpl browserTrackerModelImpl = (BrowserTrackerModelImpl)browserTracker;
203 
204         FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_USERID,
205             new Object[] { new Long(browserTrackerModelImpl.getOriginalUserId()) });
206 
207         EntityCacheUtil.removeResult(BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
208             BrowserTrackerImpl.class, browserTracker.getPrimaryKey());
209 
210         return browserTracker;
211     }
212 
213     /**
214      * @deprecated Use {@link BasePersistence#update(com.liferay.portal.model.BaseModel, boolean)}.
215      */
216     public BrowserTracker update(BrowserTracker browserTracker)
217         throws SystemException {
218         if (_log.isWarnEnabled()) {
219             _log.warn(
220                 "Using the deprecated update(BrowserTracker browserTracker) method. Use update(BrowserTracker browserTracker, boolean merge) instead.");
221         }
222 
223         return update(browserTracker, false);
224     }
225 
226     public BrowserTracker updateImpl(
227         com.liferay.portal.model.BrowserTracker browserTracker, boolean merge)
228         throws SystemException {
229         browserTracker = toUnwrappedModel(browserTracker);
230 
231         boolean isNew = browserTracker.isNew();
232 
233         BrowserTrackerModelImpl browserTrackerModelImpl = (BrowserTrackerModelImpl)browserTracker;
234 
235         Session session = null;
236 
237         try {
238             session = openSession();
239 
240             BatchSessionUtil.update(session, browserTracker, merge);
241 
242             browserTracker.setNew(false);
243         }
244         catch (Exception e) {
245             throw processException(e);
246         }
247         finally {
248             closeSession(session);
249         }
250 
251         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
252 
253         EntityCacheUtil.putResult(BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
254             BrowserTrackerImpl.class, browserTracker.getPrimaryKey(),
255             browserTracker);
256 
257         if (!isNew &&
258                 (browserTracker.getUserId() != browserTrackerModelImpl.getOriginalUserId())) {
259             FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_USERID,
260                 new Object[] {
261                     new Long(browserTrackerModelImpl.getOriginalUserId())
262                 });
263         }
264 
265         if (isNew ||
266                 (browserTracker.getUserId() != browserTrackerModelImpl.getOriginalUserId())) {
267             FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_USERID,
268                 new Object[] { new Long(browserTracker.getUserId()) },
269                 browserTracker);
270         }
271 
272         return browserTracker;
273     }
274 
275     protected BrowserTracker toUnwrappedModel(BrowserTracker browserTracker) {
276         if (browserTracker instanceof BrowserTrackerImpl) {
277             return browserTracker;
278         }
279 
280         BrowserTrackerImpl browserTrackerImpl = new BrowserTrackerImpl();
281 
282         browserTrackerImpl.setNew(browserTracker.isNew());
283         browserTrackerImpl.setPrimaryKey(browserTracker.getPrimaryKey());
284 
285         browserTrackerImpl.setBrowserTrackerId(browserTracker.getBrowserTrackerId());
286         browserTrackerImpl.setUserId(browserTracker.getUserId());
287         browserTrackerImpl.setBrowserKey(browserTracker.getBrowserKey());
288 
289         return browserTrackerImpl;
290     }
291 
292     public BrowserTracker findByPrimaryKey(Serializable primaryKey)
293         throws NoSuchModelException, SystemException {
294         return findByPrimaryKey(((Long)primaryKey).longValue());
295     }
296 
297     public BrowserTracker findByPrimaryKey(long browserTrackerId)
298         throws NoSuchBrowserTrackerException, SystemException {
299         BrowserTracker browserTracker = fetchByPrimaryKey(browserTrackerId);
300 
301         if (browserTracker == null) {
302             if (_log.isWarnEnabled()) {
303                 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + browserTrackerId);
304             }
305 
306             throw new NoSuchBrowserTrackerException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
307                 browserTrackerId);
308         }
309 
310         return browserTracker;
311     }
312 
313     public BrowserTracker fetchByPrimaryKey(Serializable primaryKey)
314         throws SystemException {
315         return fetchByPrimaryKey(((Long)primaryKey).longValue());
316     }
317 
318     public BrowserTracker fetchByPrimaryKey(long browserTrackerId)
319         throws SystemException {
320         BrowserTracker browserTracker = (BrowserTracker)EntityCacheUtil.getResult(BrowserTrackerModelImpl.ENTITY_CACHE_ENABLED,
321                 BrowserTrackerImpl.class, browserTrackerId, this);
322 
323         if (browserTracker == null) {
324             Session session = null;
325 
326             try {
327                 session = openSession();
328 
329                 browserTracker = (BrowserTracker)session.get(BrowserTrackerImpl.class,
330                         new Long(browserTrackerId));
331             }
332             catch (Exception e) {
333                 throw processException(e);
334             }
335             finally {
336                 if (browserTracker != null) {
337                     cacheResult(browserTracker);
338                 }
339 
340                 closeSession(session);
341             }
342         }
343 
344         return browserTracker;
345     }
346 
347     public BrowserTracker findByUserId(long userId)
348         throws NoSuchBrowserTrackerException, SystemException {
349         BrowserTracker browserTracker = fetchByUserId(userId);
350 
351         if (browserTracker == null) {
352             StringBundler msg = new StringBundler(4);
353 
354             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
355 
356             msg.append("userId=");
357             msg.append(userId);
358 
359             msg.append(StringPool.CLOSE_CURLY_BRACE);
360 
361             if (_log.isWarnEnabled()) {
362                 _log.warn(msg.toString());
363             }
364 
365             throw new NoSuchBrowserTrackerException(msg.toString());
366         }
367 
368         return browserTracker;
369     }
370 
371     public BrowserTracker fetchByUserId(long userId) throws SystemException {
372         return fetchByUserId(userId, true);
373     }
374 
375     public BrowserTracker fetchByUserId(long userId, boolean retrieveFromCache)
376         throws SystemException {
377         Object[] finderArgs = new Object[] { new Long(userId) };
378 
379         Object result = null;
380 
381         if (retrieveFromCache) {
382             result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_USERID,
383                     finderArgs, this);
384         }
385 
386         if (result == null) {
387             Session session = null;
388 
389             try {
390                 session = openSession();
391 
392                 StringBundler query = new StringBundler(2);
393 
394                 query.append(_SQL_SELECT_BROWSERTRACKER_WHERE);
395 
396                 query.append(_FINDER_COLUMN_USERID_USERID_2);
397 
398                 String sql = query.toString();
399 
400                 Query q = session.createQuery(sql);
401 
402                 QueryPos qPos = QueryPos.getInstance(q);
403 
404                 qPos.add(userId);
405 
406                 List<BrowserTracker> list = q.list();
407 
408                 result = list;
409 
410                 BrowserTracker browserTracker = null;
411 
412                 if (list.isEmpty()) {
413                     FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_USERID,
414                         finderArgs, list);
415                 }
416                 else {
417                     browserTracker = list.get(0);
418 
419                     cacheResult(browserTracker);
420 
421                     if ((browserTracker.getUserId() != userId)) {
422                         FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_USERID,
423                             finderArgs, browserTracker);
424                     }
425                 }
426 
427                 return browserTracker;
428             }
429             catch (Exception e) {
430                 throw processException(e);
431             }
432             finally {
433                 if (result == null) {
434                     FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_USERID,
435                         finderArgs, new ArrayList<BrowserTracker>());
436                 }
437 
438                 closeSession(session);
439             }
440         }
441         else {
442             if (result instanceof List<?>) {
443                 return null;
444             }
445             else {
446                 return (BrowserTracker)result;
447             }
448         }
449     }
450 
451     public List<BrowserTracker> findAll() throws SystemException {
452         return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
453     }
454 
455     public List<BrowserTracker> findAll(int start, int end)
456         throws SystemException {
457         return findAll(start, end, null);
458     }
459 
460     public List<BrowserTracker> findAll(int start, int end,
461         OrderByComparator orderByComparator) throws SystemException {
462         Object[] finderArgs = new Object[] {
463                 String.valueOf(start), String.valueOf(end),
464                 String.valueOf(orderByComparator)
465             };
466 
467         List<BrowserTracker> list = (List<BrowserTracker>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
468                 finderArgs, this);
469 
470         if (list == null) {
471             Session session = null;
472 
473             try {
474                 session = openSession();
475 
476                 StringBundler query = null;
477                 String sql = null;
478 
479                 if (orderByComparator != null) {
480                     query = new StringBundler(2 +
481                             (orderByComparator.getOrderByFields().length * 3));
482 
483                     query.append(_SQL_SELECT_BROWSERTRACKER);
484 
485                     appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
486                         orderByComparator);
487 
488                     sql = query.toString();
489                 }
490 
491                 sql = _SQL_SELECT_BROWSERTRACKER;
492 
493                 Query q = session.createQuery(sql);
494 
495                 if (orderByComparator == null) {
496                     list = (List<BrowserTracker>)QueryUtil.list(q,
497                             getDialect(), start, end, false);
498 
499                     Collections.sort(list);
500                 }
501                 else {
502                     list = (List<BrowserTracker>)QueryUtil.list(q,
503                             getDialect(), start, end);
504                 }
505             }
506             catch (Exception e) {
507                 throw processException(e);
508             }
509             finally {
510                 if (list == null) {
511                     list = new ArrayList<BrowserTracker>();
512                 }
513 
514                 cacheResult(list);
515 
516                 FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
517 
518                 closeSession(session);
519             }
520         }
521 
522         return list;
523     }
524 
525     public void removeByUserId(long userId)
526         throws NoSuchBrowserTrackerException, SystemException {
527         BrowserTracker browserTracker = findByUserId(userId);
528 
529         remove(browserTracker);
530     }
531 
532     public void removeAll() throws SystemException {
533         for (BrowserTracker browserTracker : findAll()) {
534             remove(browserTracker);
535         }
536     }
537 
538     public int countByUserId(long userId) throws SystemException {
539         Object[] finderArgs = new Object[] { new Long(userId) };
540 
541         Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_USERID,
542                 finderArgs, this);
543 
544         if (count == null) {
545             Session session = null;
546 
547             try {
548                 session = openSession();
549 
550                 StringBundler query = new StringBundler(2);
551 
552                 query.append(_SQL_COUNT_BROWSERTRACKER_WHERE);
553 
554                 query.append(_FINDER_COLUMN_USERID_USERID_2);
555 
556                 String sql = query.toString();
557 
558                 Query q = session.createQuery(sql);
559 
560                 QueryPos qPos = QueryPos.getInstance(q);
561 
562                 qPos.add(userId);
563 
564                 count = (Long)q.uniqueResult();
565             }
566             catch (Exception e) {
567                 throw processException(e);
568             }
569             finally {
570                 if (count == null) {
571                     count = Long.valueOf(0);
572                 }
573 
574                 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_USERID,
575                     finderArgs, count);
576 
577                 closeSession(session);
578             }
579         }
580 
581         return count.intValue();
582     }
583 
584     public int countAll() throws SystemException {
585         Object[] finderArgs = new Object[0];
586 
587         Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
588                 finderArgs, this);
589 
590         if (count == null) {
591             Session session = null;
592 
593             try {
594                 session = openSession();
595 
596                 Query q = session.createQuery(_SQL_COUNT_BROWSERTRACKER);
597 
598                 count = (Long)q.uniqueResult();
599             }
600             catch (Exception e) {
601                 throw processException(e);
602             }
603             finally {
604                 if (count == null) {
605                     count = Long.valueOf(0);
606                 }
607 
608                 FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
609                     count);
610 
611                 closeSession(session);
612             }
613         }
614 
615         return count.intValue();
616     }
617 
618     public void afterPropertiesSet() {
619         String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
620                     com.liferay.portal.util.PropsUtil.get(
621                         "value.object.listener.com.liferay.portal.model.BrowserTracker")));
622 
623         if (listenerClassNames.length > 0) {
624             try {
625                 List<ModelListener<BrowserTracker>> listenersList = new ArrayList<ModelListener<BrowserTracker>>();
626 
627                 for (String listenerClassName : listenerClassNames) {
628                     listenersList.add((ModelListener<BrowserTracker>)Class.forName(
629                             listenerClassName).newInstance());
630                 }
631 
632                 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
633             }
634             catch (Exception e) {
635                 _log.error(e);
636             }
637         }
638     }
639 
640     @BeanReference(type = AccountPersistence.class)
641     protected AccountPersistence accountPersistence;
642     @BeanReference(type = AddressPersistence.class)
643     protected AddressPersistence addressPersistence;
644     @BeanReference(type = BrowserTrackerPersistence.class)
645     protected BrowserTrackerPersistence browserTrackerPersistence;
646     @BeanReference(type = ClassNamePersistence.class)
647     protected ClassNamePersistence classNamePersistence;
648     @BeanReference(type = CompanyPersistence.class)
649     protected CompanyPersistence companyPersistence;
650     @BeanReference(type = ContactPersistence.class)
651     protected ContactPersistence contactPersistence;
652     @BeanReference(type = CountryPersistence.class)
653     protected CountryPersistence countryPersistence;
654     @BeanReference(type = EmailAddressPersistence.class)
655     protected EmailAddressPersistence emailAddressPersistence;
656     @BeanReference(type = GroupPersistence.class)
657     protected GroupPersistence groupPersistence;
658     @BeanReference(type = ImagePersistence.class)
659     protected ImagePersistence imagePersistence;
660     @BeanReference(type = LayoutPersistence.class)
661     protected LayoutPersistence layoutPersistence;
662     @BeanReference(type = LayoutSetPersistence.class)
663     protected LayoutSetPersistence layoutSetPersistence;
664     @BeanReference(type = ListTypePersistence.class)
665     protected ListTypePersistence listTypePersistence;
666     @BeanReference(type = LockPersistence.class)
667     protected LockPersistence lockPersistence;
668     @BeanReference(type = MembershipRequestPersistence.class)
669     protected MembershipRequestPersistence membershipRequestPersistence;
670     @BeanReference(type = OrganizationPersistence.class)
671     protected OrganizationPersistence organizationPersistence;
672     @BeanReference(type = OrgGroupPermissionPersistence.class)
673     protected OrgGroupPermissionPersistence orgGroupPermissionPersistence;
674     @BeanReference(type = OrgGroupRolePersistence.class)
675     protected OrgGroupRolePersistence orgGroupRolePersistence;
676     @BeanReference(type = OrgLaborPersistence.class)
677     protected OrgLaborPersistence orgLaborPersistence;
678     @BeanReference(type = PasswordPolicyPersistence.class)
679     protected PasswordPolicyPersistence passwordPolicyPersistence;
680     @BeanReference(type = PasswordPolicyRelPersistence.class)
681     protected PasswordPolicyRelPersistence passwordPolicyRelPersistence;
682     @BeanReference(type = PasswordTrackerPersistence.class)
683     protected PasswordTrackerPersistence passwordTrackerPersistence;
684     @BeanReference(type = PermissionPersistence.class)
685     protected PermissionPersistence permissionPersistence;
686     @BeanReference(type = PhonePersistence.class)
687     protected PhonePersistence phonePersistence;
688     @BeanReference(type = PluginSettingPersistence.class)
689     protected PluginSettingPersistence pluginSettingPersistence;
690     @BeanReference(type = PortletPersistence.class)
691     protected PortletPersistence portletPersistence;
692     @BeanReference(type = PortletItemPersistence.class)
693     protected PortletItemPersistence portletItemPersistence;
694     @BeanReference(type = PortletPreferencesPersistence.class)
695     protected PortletPreferencesPersistence portletPreferencesPersistence;
696     @BeanReference(type = RegionPersistence.class)
697     protected RegionPersistence regionPersistence;
698     @BeanReference(type = ReleasePersistence.class)
699     protected ReleasePersistence releasePersistence;
700     @BeanReference(type = ResourcePersistence.class)
701     protected ResourcePersistence resourcePersistence;
702     @BeanReference(type = ResourceActionPersistence.class)
703     protected ResourceActionPersistence resourceActionPersistence;
704     @BeanReference(type = ResourceCodePersistence.class)
705     protected ResourceCodePersistence resourceCodePersistence;
706     @BeanReference(type = ResourcePermissionPersistence.class)
707     protected ResourcePermissionPersistence resourcePermissionPersistence;
708     @BeanReference(type = RolePersistence.class)
709     protected RolePersistence rolePersistence;
710     @BeanReference(type = ServiceComponentPersistence.class)
711     protected ServiceComponentPersistence serviceComponentPersistence;
712     @BeanReference(type = ShardPersistence.class)
713     protected ShardPersistence shardPersistence;
714     @BeanReference(type = SubscriptionPersistence.class)
715     protected SubscriptionPersistence subscriptionPersistence;
716     @BeanReference(type = UserPersistence.class)
717     protected UserPersistence userPersistence;
718     @BeanReference(type = UserGroupPersistence.class)
719     protected UserGroupPersistence userGroupPersistence;
720     @BeanReference(type = UserGroupGroupRolePersistence.class)
721     protected UserGroupGroupRolePersistence userGroupGroupRolePersistence;
722     @BeanReference(type = UserGroupRolePersistence.class)
723     protected UserGroupRolePersistence userGroupRolePersistence;
724     @BeanReference(type = UserIdMapperPersistence.class)
725     protected UserIdMapperPersistence userIdMapperPersistence;
726     @BeanReference(type = UserTrackerPersistence.class)
727     protected UserTrackerPersistence userTrackerPersistence;
728     @BeanReference(type = UserTrackerPathPersistence.class)
729     protected UserTrackerPathPersistence userTrackerPathPersistence;
730     @BeanReference(type = WebDAVPropsPersistence.class)
731     protected WebDAVPropsPersistence webDAVPropsPersistence;
732     @BeanReference(type = WebsitePersistence.class)
733     protected WebsitePersistence websitePersistence;
734     private static final String _SQL_SELECT_BROWSERTRACKER = "SELECT browserTracker FROM BrowserTracker browserTracker";
735     private static final String _SQL_SELECT_BROWSERTRACKER_WHERE = "SELECT browserTracker FROM BrowserTracker browserTracker WHERE ";
736     private static final String _SQL_COUNT_BROWSERTRACKER = "SELECT COUNT(browserTracker) FROM BrowserTracker browserTracker";
737     private static final String _SQL_COUNT_BROWSERTRACKER_WHERE = "SELECT COUNT(browserTracker) FROM BrowserTracker browserTracker WHERE ";
738     private static final String _FINDER_COLUMN_USERID_USERID_2 = "browserTracker.userId = ?";
739     private static final String _ORDER_BY_ENTITY_ALIAS = "browserTracker.";
740     private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No BrowserTracker exists with the primary key ";
741     private static final String _NO_SUCH_ENTITY_WITH_KEY = "No BrowserTracker exists with the key {";
742     private static Log _log = LogFactoryUtil.getLog(BrowserTrackerPersistenceImpl.class);
743 }