1   /**
2    * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   *
12   * 
13   */
14  
15  package com.liferay.portlet.social.service.persistence;
16  
17  import com.liferay.portal.NoSuchModelException;
18  import com.liferay.portal.SystemException;
19  import com.liferay.portal.kernel.annotation.BeanReference;
20  import com.liferay.portal.kernel.cache.CacheRegistry;
21  import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
22  import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
23  import com.liferay.portal.kernel.dao.orm.FinderPath;
24  import com.liferay.portal.kernel.dao.orm.Query;
25  import com.liferay.portal.kernel.dao.orm.QueryPos;
26  import com.liferay.portal.kernel.dao.orm.QueryUtil;
27  import com.liferay.portal.kernel.dao.orm.Session;
28  import com.liferay.portal.kernel.log.Log;
29  import com.liferay.portal.kernel.log.LogFactoryUtil;
30  import com.liferay.portal.kernel.util.GetterUtil;
31  import com.liferay.portal.kernel.util.OrderByComparator;
32  import com.liferay.portal.kernel.util.StringBundler;
33  import com.liferay.portal.kernel.util.StringPool;
34  import com.liferay.portal.kernel.util.StringUtil;
35  import com.liferay.portal.model.ModelListener;
36  import com.liferay.portal.service.persistence.BatchSessionUtil;
37  import com.liferay.portal.service.persistence.GroupPersistence;
38  import com.liferay.portal.service.persistence.LayoutPersistence;
39  import com.liferay.portal.service.persistence.ResourcePersistence;
40  import com.liferay.portal.service.persistence.UserPersistence;
41  import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
42  
43  import com.liferay.portlet.social.NoSuchActivityException;
44  import com.liferay.portlet.social.model.SocialActivity;
45  import com.liferay.portlet.social.model.impl.SocialActivityImpl;
46  import com.liferay.portlet.social.model.impl.SocialActivityModelImpl;
47  
48  import java.io.Serializable;
49  
50  import java.util.ArrayList;
51  import java.util.Collections;
52  import java.util.List;
53  
54  /**
55   * <a href="SocialActivityPersistenceImpl.java.html"><b><i>View Source</i></b></a>
56   *
57   * <p>
58   * ServiceBuilder generated this class. Modifications in this class will be
59   * overwritten the next time is generated.
60   * </p>
61   *
62   * @author    Brian Wing Shun Chan
63   * @see       SocialActivityPersistence
64   * @see       SocialActivityUtil
65   * @generated
66   */
67  public class SocialActivityPersistenceImpl extends BasePersistenceImpl<SocialActivity>
68      implements SocialActivityPersistence {
69      public static final String FINDER_CLASS_NAME_ENTITY = SocialActivityImpl.class.getName();
70      public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
71          ".List";
72      public static final FinderPath FINDER_PATH_FIND_BY_GROUPID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
73              SocialActivityModelImpl.FINDER_CACHE_ENABLED,
74              FINDER_CLASS_NAME_LIST, "findByGroupId",
75              new String[] { Long.class.getName() });
76      public static final FinderPath FINDER_PATH_FIND_BY_OBC_GROUPID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
77              SocialActivityModelImpl.FINDER_CACHE_ENABLED,
78              FINDER_CLASS_NAME_LIST, "findByGroupId",
79              new String[] {
80                  Long.class.getName(),
81                  
82              "java.lang.Integer", "java.lang.Integer",
83                  "com.liferay.portal.kernel.util.OrderByComparator"
84              });
85      public static final FinderPath FINDER_PATH_COUNT_BY_GROUPID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
86              SocialActivityModelImpl.FINDER_CACHE_ENABLED,
87              FINDER_CLASS_NAME_LIST, "countByGroupId",
88              new String[] { Long.class.getName() });
89      public static final FinderPath FINDER_PATH_FIND_BY_COMPANYID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
90              SocialActivityModelImpl.FINDER_CACHE_ENABLED,
91              FINDER_CLASS_NAME_LIST, "findByCompanyId",
92              new String[] { Long.class.getName() });
93      public static final FinderPath FINDER_PATH_FIND_BY_OBC_COMPANYID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
94              SocialActivityModelImpl.FINDER_CACHE_ENABLED,
95              FINDER_CLASS_NAME_LIST, "findByCompanyId",
96              new String[] {
97                  Long.class.getName(),
98                  
99              "java.lang.Integer", "java.lang.Integer",
100                 "com.liferay.portal.kernel.util.OrderByComparator"
101             });
102     public static final FinderPath FINDER_PATH_COUNT_BY_COMPANYID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
103             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
104             FINDER_CLASS_NAME_LIST, "countByCompanyId",
105             new String[] { Long.class.getName() });
106     public static final FinderPath FINDER_PATH_FIND_BY_USERID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
107             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
108             FINDER_CLASS_NAME_LIST, "findByUserId",
109             new String[] { Long.class.getName() });
110     public static final FinderPath FINDER_PATH_FIND_BY_OBC_USERID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
111             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
112             FINDER_CLASS_NAME_LIST, "findByUserId",
113             new String[] {
114                 Long.class.getName(),
115                 
116             "java.lang.Integer", "java.lang.Integer",
117                 "com.liferay.portal.kernel.util.OrderByComparator"
118             });
119     public static final FinderPath FINDER_PATH_COUNT_BY_USERID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
120             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
121             FINDER_CLASS_NAME_LIST, "countByUserId",
122             new String[] { Long.class.getName() });
123     public static final FinderPath FINDER_PATH_FETCH_BY_MIRRORACTIVITYID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
124             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
125             FINDER_CLASS_NAME_ENTITY, "fetchByMirrorActivityId",
126             new String[] { Long.class.getName() });
127     public static final FinderPath FINDER_PATH_COUNT_BY_MIRRORACTIVITYID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
128             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
129             FINDER_CLASS_NAME_LIST, "countByMirrorActivityId",
130             new String[] { Long.class.getName() });
131     public static final FinderPath FINDER_PATH_FIND_BY_CLASSNAMEID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
132             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
133             FINDER_CLASS_NAME_LIST, "findByClassNameId",
134             new String[] { Long.class.getName() });
135     public static final FinderPath FINDER_PATH_FIND_BY_OBC_CLASSNAMEID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
136             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
137             FINDER_CLASS_NAME_LIST, "findByClassNameId",
138             new String[] {
139                 Long.class.getName(),
140                 
141             "java.lang.Integer", "java.lang.Integer",
142                 "com.liferay.portal.kernel.util.OrderByComparator"
143             });
144     public static final FinderPath FINDER_PATH_COUNT_BY_CLASSNAMEID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
145             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
146             FINDER_CLASS_NAME_LIST, "countByClassNameId",
147             new String[] { Long.class.getName() });
148     public static final FinderPath FINDER_PATH_FIND_BY_RECEIVERUSERID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
149             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
150             FINDER_CLASS_NAME_LIST, "findByReceiverUserId",
151             new String[] { Long.class.getName() });
152     public static final FinderPath FINDER_PATH_FIND_BY_OBC_RECEIVERUSERID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
153             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
154             FINDER_CLASS_NAME_LIST, "findByReceiverUserId",
155             new String[] {
156                 Long.class.getName(),
157                 
158             "java.lang.Integer", "java.lang.Integer",
159                 "com.liferay.portal.kernel.util.OrderByComparator"
160             });
161     public static final FinderPath FINDER_PATH_COUNT_BY_RECEIVERUSERID = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
162             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
163             FINDER_CLASS_NAME_LIST, "countByReceiverUserId",
164             new String[] { Long.class.getName() });
165     public static final FinderPath FINDER_PATH_FIND_BY_C_C = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
166             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
167             FINDER_CLASS_NAME_LIST, "findByC_C",
168             new String[] { Long.class.getName(), Long.class.getName() });
169     public static final FinderPath FINDER_PATH_FIND_BY_OBC_C_C = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
170             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
171             FINDER_CLASS_NAME_LIST, "findByC_C",
172             new String[] {
173                 Long.class.getName(), Long.class.getName(),
174                 
175             "java.lang.Integer", "java.lang.Integer",
176                 "com.liferay.portal.kernel.util.OrderByComparator"
177             });
178     public static final FinderPath FINDER_PATH_COUNT_BY_C_C = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
179             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
180             FINDER_CLASS_NAME_LIST, "countByC_C",
181             new String[] { Long.class.getName(), Long.class.getName() });
182     public static final FinderPath FINDER_PATH_FIND_BY_M_C_C = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
183             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
184             FINDER_CLASS_NAME_LIST, "findByM_C_C",
185             new String[] {
186                 Long.class.getName(), Long.class.getName(), Long.class.getName()
187             });
188     public static final FinderPath FINDER_PATH_FIND_BY_OBC_M_C_C = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
189             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
190             FINDER_CLASS_NAME_LIST, "findByM_C_C",
191             new String[] {
192                 Long.class.getName(), Long.class.getName(), Long.class.getName(),
193                 
194             "java.lang.Integer", "java.lang.Integer",
195                 "com.liferay.portal.kernel.util.OrderByComparator"
196             });
197     public static final FinderPath FINDER_PATH_COUNT_BY_M_C_C = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
198             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
199             FINDER_CLASS_NAME_LIST, "countByM_C_C",
200             new String[] {
201                 Long.class.getName(), Long.class.getName(), Long.class.getName()
202             });
203     public static final FinderPath FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
204             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
205             FINDER_CLASS_NAME_ENTITY, "fetchByG_U_CD_C_C_T_R",
206             new String[] {
207                 Long.class.getName(), Long.class.getName(), Long.class.getName(),
208                 Long.class.getName(), Long.class.getName(),
209                 Integer.class.getName(), Long.class.getName()
210             });
211     public static final FinderPath FINDER_PATH_COUNT_BY_G_U_CD_C_C_T_R = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
212             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
213             FINDER_CLASS_NAME_LIST, "countByG_U_CD_C_C_T_R",
214             new String[] {
215                 Long.class.getName(), Long.class.getName(), Long.class.getName(),
216                 Long.class.getName(), Long.class.getName(),
217                 Integer.class.getName(), Long.class.getName()
218             });
219     public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
220             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
221             FINDER_CLASS_NAME_LIST, "findAll", new String[0]);
222     public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
223             SocialActivityModelImpl.FINDER_CACHE_ENABLED,
224             FINDER_CLASS_NAME_LIST, "countAll", new String[0]);
225 
226     public void cacheResult(SocialActivity socialActivity) {
227         EntityCacheUtil.putResult(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
228             SocialActivityImpl.class, socialActivity.getPrimaryKey(),
229             socialActivity);
230 
231         FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_MIRRORACTIVITYID,
232             new Object[] { new Long(socialActivity.getMirrorActivityId()) },
233             socialActivity);
234 
235         FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R,
236             new Object[] {
237                 new Long(socialActivity.getGroupId()),
238                 new Long(socialActivity.getUserId()),
239                 new Long(socialActivity.getCreateDate()),
240                 new Long(socialActivity.getClassNameId()),
241                 new Long(socialActivity.getClassPK()),
242                 new Integer(socialActivity.getType()),
243                 new Long(socialActivity.getReceiverUserId())
244             }, socialActivity);
245     }
246 
247     public void cacheResult(List<SocialActivity> socialActivities) {
248         for (SocialActivity socialActivity : socialActivities) {
249             if (EntityCacheUtil.getResult(
250                         SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
251                         SocialActivityImpl.class,
252                         socialActivity.getPrimaryKey(), this) == null) {
253                 cacheResult(socialActivity);
254             }
255         }
256     }
257 
258     public void clearCache() {
259         CacheRegistry.clear(SocialActivityImpl.class.getName());
260         EntityCacheUtil.clearCache(SocialActivityImpl.class.getName());
261         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
262         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
263     }
264 
265     public SocialActivity create(long activityId) {
266         SocialActivity socialActivity = new SocialActivityImpl();
267 
268         socialActivity.setNew(true);
269         socialActivity.setPrimaryKey(activityId);
270 
271         return socialActivity;
272     }
273 
274     public SocialActivity remove(Serializable primaryKey)
275         throws NoSuchModelException, SystemException {
276         return remove(((Long)primaryKey).longValue());
277     }
278 
279     public SocialActivity remove(long activityId)
280         throws NoSuchActivityException, SystemException {
281         Session session = null;
282 
283         try {
284             session = openSession();
285 
286             SocialActivity socialActivity = (SocialActivity)session.get(SocialActivityImpl.class,
287                     new Long(activityId));
288 
289             if (socialActivity == null) {
290                 if (_log.isWarnEnabled()) {
291                     _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + activityId);
292                 }
293 
294                 throw new NoSuchActivityException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
295                     activityId);
296             }
297 
298             return remove(socialActivity);
299         }
300         catch (NoSuchActivityException nsee) {
301             throw nsee;
302         }
303         catch (Exception e) {
304             throw processException(e);
305         }
306         finally {
307             closeSession(session);
308         }
309     }
310 
311     public SocialActivity remove(SocialActivity socialActivity)
312         throws SystemException {
313         for (ModelListener<SocialActivity> listener : listeners) {
314             listener.onBeforeRemove(socialActivity);
315         }
316 
317         socialActivity = removeImpl(socialActivity);
318 
319         for (ModelListener<SocialActivity> listener : listeners) {
320             listener.onAfterRemove(socialActivity);
321         }
322 
323         return socialActivity;
324     }
325 
326     protected SocialActivity removeImpl(SocialActivity socialActivity)
327         throws SystemException {
328         socialActivity = toUnwrappedModel(socialActivity);
329 
330         Session session = null;
331 
332         try {
333             session = openSession();
334 
335             if (socialActivity.isCachedModel() || BatchSessionUtil.isEnabled()) {
336                 Object staleObject = session.get(SocialActivityImpl.class,
337                         socialActivity.getPrimaryKeyObj());
338 
339                 if (staleObject != null) {
340                     session.evict(staleObject);
341                 }
342             }
343 
344             session.delete(socialActivity);
345 
346             session.flush();
347         }
348         catch (Exception e) {
349             throw processException(e);
350         }
351         finally {
352             closeSession(session);
353         }
354 
355         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
356 
357         SocialActivityModelImpl socialActivityModelImpl = (SocialActivityModelImpl)socialActivity;
358 
359         FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_MIRRORACTIVITYID,
360             new Object[] {
361                 new Long(socialActivityModelImpl.getOriginalMirrorActivityId())
362             });
363 
364         FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R,
365             new Object[] {
366                 new Long(socialActivityModelImpl.getOriginalGroupId()),
367                 new Long(socialActivityModelImpl.getOriginalUserId()),
368                 new Long(socialActivityModelImpl.getOriginalCreateDate()),
369                 new Long(socialActivityModelImpl.getOriginalClassNameId()),
370                 new Long(socialActivityModelImpl.getOriginalClassPK()),
371                 new Integer(socialActivityModelImpl.getOriginalType()),
372                 new Long(socialActivityModelImpl.getOriginalReceiverUserId())
373             });
374 
375         EntityCacheUtil.removeResult(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
376             SocialActivityImpl.class, socialActivity.getPrimaryKey());
377 
378         return socialActivity;
379     }
380 
381     /**
382      * @deprecated Use {@link BasePersistence#update(com.liferay.portal.model.BaseModel, boolean)}.
383      */
384     public SocialActivity update(SocialActivity socialActivity)
385         throws SystemException {
386         if (_log.isWarnEnabled()) {
387             _log.warn(
388                 "Using the deprecated update(SocialActivity socialActivity) method. Use update(SocialActivity socialActivity, boolean merge) instead.");
389         }
390 
391         return update(socialActivity, false);
392     }
393 
394     public SocialActivity updateImpl(
395         com.liferay.portlet.social.model.SocialActivity socialActivity,
396         boolean merge) throws SystemException {
397         socialActivity = toUnwrappedModel(socialActivity);
398 
399         boolean isNew = socialActivity.isNew();
400 
401         SocialActivityModelImpl socialActivityModelImpl = (SocialActivityModelImpl)socialActivity;
402 
403         Session session = null;
404 
405         try {
406             session = openSession();
407 
408             BatchSessionUtil.update(session, socialActivity, merge);
409 
410             socialActivity.setNew(false);
411         }
412         catch (Exception e) {
413             throw processException(e);
414         }
415         finally {
416             closeSession(session);
417         }
418 
419         FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
420 
421         EntityCacheUtil.putResult(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
422             SocialActivityImpl.class, socialActivity.getPrimaryKey(),
423             socialActivity);
424 
425         if (!isNew &&
426                 (socialActivity.getMirrorActivityId() != socialActivityModelImpl.getOriginalMirrorActivityId())) {
427             FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_MIRRORACTIVITYID,
428                 new Object[] {
429                     new Long(socialActivityModelImpl.getOriginalMirrorActivityId())
430                 });
431         }
432 
433         if (isNew ||
434                 (socialActivity.getMirrorActivityId() != socialActivityModelImpl.getOriginalMirrorActivityId())) {
435             FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_MIRRORACTIVITYID,
436                 new Object[] { new Long(socialActivity.getMirrorActivityId()) },
437                 socialActivity);
438         }
439 
440         if (!isNew &&
441                 ((socialActivity.getGroupId() != socialActivityModelImpl.getOriginalGroupId()) ||
442                 (socialActivity.getUserId() != socialActivityModelImpl.getOriginalUserId()) ||
443                 (socialActivity.getCreateDate() != socialActivityModelImpl.getOriginalCreateDate()) ||
444                 (socialActivity.getClassNameId() != socialActivityModelImpl.getOriginalClassNameId()) ||
445                 (socialActivity.getClassPK() != socialActivityModelImpl.getOriginalClassPK()) ||
446                 (socialActivity.getType() != socialActivityModelImpl.getOriginalType()) ||
447                 (socialActivity.getReceiverUserId() != socialActivityModelImpl.getOriginalReceiverUserId()))) {
448             FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R,
449                 new Object[] {
450                     new Long(socialActivityModelImpl.getOriginalGroupId()),
451                     new Long(socialActivityModelImpl.getOriginalUserId()),
452                     new Long(socialActivityModelImpl.getOriginalCreateDate()),
453                     new Long(socialActivityModelImpl.getOriginalClassNameId()),
454                     new Long(socialActivityModelImpl.getOriginalClassPK()),
455                     new Integer(socialActivityModelImpl.getOriginalType()),
456                     new Long(socialActivityModelImpl.getOriginalReceiverUserId())
457                 });
458         }
459 
460         if (isNew ||
461                 ((socialActivity.getGroupId() != socialActivityModelImpl.getOriginalGroupId()) ||
462                 (socialActivity.getUserId() != socialActivityModelImpl.getOriginalUserId()) ||
463                 (socialActivity.getCreateDate() != socialActivityModelImpl.getOriginalCreateDate()) ||
464                 (socialActivity.getClassNameId() != socialActivityModelImpl.getOriginalClassNameId()) ||
465                 (socialActivity.getClassPK() != socialActivityModelImpl.getOriginalClassPK()) ||
466                 (socialActivity.getType() != socialActivityModelImpl.getOriginalType()) ||
467                 (socialActivity.getReceiverUserId() != socialActivityModelImpl.getOriginalReceiverUserId()))) {
468             FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R,
469                 new Object[] {
470                     new Long(socialActivity.getGroupId()),
471                     new Long(socialActivity.getUserId()),
472                     new Long(socialActivity.getCreateDate()),
473                     new Long(socialActivity.getClassNameId()),
474                     new Long(socialActivity.getClassPK()),
475                     new Integer(socialActivity.getType()),
476                     new Long(socialActivity.getReceiverUserId())
477                 }, socialActivity);
478         }
479 
480         return socialActivity;
481     }
482 
483     protected SocialActivity toUnwrappedModel(SocialActivity socialActivity) {
484         if (socialActivity instanceof SocialActivityImpl) {
485             return socialActivity;
486         }
487 
488         SocialActivityImpl socialActivityImpl = new SocialActivityImpl();
489 
490         socialActivityImpl.setNew(socialActivity.isNew());
491         socialActivityImpl.setPrimaryKey(socialActivity.getPrimaryKey());
492 
493         socialActivityImpl.setActivityId(socialActivity.getActivityId());
494         socialActivityImpl.setGroupId(socialActivity.getGroupId());
495         socialActivityImpl.setCompanyId(socialActivity.getCompanyId());
496         socialActivityImpl.setUserId(socialActivity.getUserId());
497         socialActivityImpl.setCreateDate(socialActivity.getCreateDate());
498         socialActivityImpl.setMirrorActivityId(socialActivity.getMirrorActivityId());
499         socialActivityImpl.setClassNameId(socialActivity.getClassNameId());
500         socialActivityImpl.setClassPK(socialActivity.getClassPK());
501         socialActivityImpl.setType(socialActivity.getType());
502         socialActivityImpl.setExtraData(socialActivity.getExtraData());
503         socialActivityImpl.setReceiverUserId(socialActivity.getReceiverUserId());
504 
505         return socialActivityImpl;
506     }
507 
508     public SocialActivity findByPrimaryKey(Serializable primaryKey)
509         throws NoSuchModelException, SystemException {
510         return findByPrimaryKey(((Long)primaryKey).longValue());
511     }
512 
513     public SocialActivity findByPrimaryKey(long activityId)
514         throws NoSuchActivityException, SystemException {
515         SocialActivity socialActivity = fetchByPrimaryKey(activityId);
516 
517         if (socialActivity == null) {
518             if (_log.isWarnEnabled()) {
519                 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + activityId);
520             }
521 
522             throw new NoSuchActivityException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
523                 activityId);
524         }
525 
526         return socialActivity;
527     }
528 
529     public SocialActivity fetchByPrimaryKey(Serializable primaryKey)
530         throws SystemException {
531         return fetchByPrimaryKey(((Long)primaryKey).longValue());
532     }
533 
534     public SocialActivity fetchByPrimaryKey(long activityId)
535         throws SystemException {
536         SocialActivity socialActivity = (SocialActivity)EntityCacheUtil.getResult(SocialActivityModelImpl.ENTITY_CACHE_ENABLED,
537                 SocialActivityImpl.class, activityId, this);
538 
539         if (socialActivity == null) {
540             Session session = null;
541 
542             try {
543                 session = openSession();
544 
545                 socialActivity = (SocialActivity)session.get(SocialActivityImpl.class,
546                         new Long(activityId));
547             }
548             catch (Exception e) {
549                 throw processException(e);
550             }
551             finally {
552                 if (socialActivity != null) {
553                     cacheResult(socialActivity);
554                 }
555 
556                 closeSession(session);
557             }
558         }
559 
560         return socialActivity;
561     }
562 
563     public List<SocialActivity> findByGroupId(long groupId)
564         throws SystemException {
565         Object[] finderArgs = new Object[] { new Long(groupId) };
566 
567         List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_GROUPID,
568                 finderArgs, this);
569 
570         if (list == null) {
571             Session session = null;
572 
573             try {
574                 session = openSession();
575 
576                 StringBundler query = new StringBundler(3);
577 
578                 query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
579 
580                 query.append(_FINDER_COLUMN_GROUPID_GROUPID_2);
581 
582                 query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
583 
584                 String sql = query.toString();
585 
586                 Query q = session.createQuery(sql);
587 
588                 QueryPos qPos = QueryPos.getInstance(q);
589 
590                 qPos.add(groupId);
591 
592                 list = q.list();
593             }
594             catch (Exception e) {
595                 throw processException(e);
596             }
597             finally {
598                 if (list == null) {
599                     list = new ArrayList<SocialActivity>();
600                 }
601 
602                 cacheResult(list);
603 
604                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_GROUPID,
605                     finderArgs, list);
606 
607                 closeSession(session);
608             }
609         }
610 
611         return list;
612     }
613 
614     public List<SocialActivity> findByGroupId(long groupId, int start, int end)
615         throws SystemException {
616         return findByGroupId(groupId, start, end, null);
617     }
618 
619     public List<SocialActivity> findByGroupId(long groupId, int start, int end,
620         OrderByComparator orderByComparator) throws SystemException {
621         Object[] finderArgs = new Object[] {
622                 new Long(groupId),
623                 
624                 String.valueOf(start), String.valueOf(end),
625                 String.valueOf(orderByComparator)
626             };
627 
628         List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_GROUPID,
629                 finderArgs, this);
630 
631         if (list == null) {
632             Session session = null;
633 
634             try {
635                 session = openSession();
636 
637                 StringBundler query = null;
638 
639                 if (orderByComparator != null) {
640                     query = new StringBundler(3 +
641                             (orderByComparator.getOrderByFields().length * 3));
642                 }
643                 else {
644                     query = new StringBundler(3);
645                 }
646 
647                 query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
648 
649                 query.append(_FINDER_COLUMN_GROUPID_GROUPID_2);
650 
651                 if (orderByComparator != null) {
652                     appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
653                         orderByComparator);
654                 }
655 
656                 else {
657                     query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
658                 }
659 
660                 String sql = query.toString();
661 
662                 Query q = session.createQuery(sql);
663 
664                 QueryPos qPos = QueryPos.getInstance(q);
665 
666                 qPos.add(groupId);
667 
668                 list = (List<SocialActivity>)QueryUtil.list(q, getDialect(),
669                         start, end);
670             }
671             catch (Exception e) {
672                 throw processException(e);
673             }
674             finally {
675                 if (list == null) {
676                     list = new ArrayList<SocialActivity>();
677                 }
678 
679                 cacheResult(list);
680 
681                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_GROUPID,
682                     finderArgs, list);
683 
684                 closeSession(session);
685             }
686         }
687 
688         return list;
689     }
690 
691     public SocialActivity findByGroupId_First(long groupId,
692         OrderByComparator orderByComparator)
693         throws NoSuchActivityException, SystemException {
694         List<SocialActivity> list = findByGroupId(groupId, 0, 1,
695                 orderByComparator);
696 
697         if (list.isEmpty()) {
698             StringBundler msg = new StringBundler(4);
699 
700             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
701 
702             msg.append("groupId=");
703             msg.append(groupId);
704 
705             msg.append(StringPool.CLOSE_CURLY_BRACE);
706 
707             throw new NoSuchActivityException(msg.toString());
708         }
709         else {
710             return list.get(0);
711         }
712     }
713 
714     public SocialActivity findByGroupId_Last(long groupId,
715         OrderByComparator orderByComparator)
716         throws NoSuchActivityException, SystemException {
717         int count = countByGroupId(groupId);
718 
719         List<SocialActivity> list = findByGroupId(groupId, count - 1, count,
720                 orderByComparator);
721 
722         if (list.isEmpty()) {
723             StringBundler msg = new StringBundler(4);
724 
725             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
726 
727             msg.append("groupId=");
728             msg.append(groupId);
729 
730             msg.append(StringPool.CLOSE_CURLY_BRACE);
731 
732             throw new NoSuchActivityException(msg.toString());
733         }
734         else {
735             return list.get(0);
736         }
737     }
738 
739     public SocialActivity[] findByGroupId_PrevAndNext(long activityId,
740         long groupId, OrderByComparator orderByComparator)
741         throws NoSuchActivityException, SystemException {
742         SocialActivity socialActivity = findByPrimaryKey(activityId);
743 
744         int count = countByGroupId(groupId);
745 
746         Session session = null;
747 
748         try {
749             session = openSession();
750 
751             StringBundler query = null;
752 
753             if (orderByComparator != null) {
754                 query = new StringBundler(3 +
755                         (orderByComparator.getOrderByFields().length * 3));
756             }
757             else {
758                 query = new StringBundler(3);
759             }
760 
761             query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
762 
763             query.append(_FINDER_COLUMN_GROUPID_GROUPID_2);
764 
765             if (orderByComparator != null) {
766                 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
767                     orderByComparator);
768             }
769 
770             else {
771                 query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
772             }
773 
774             String sql = query.toString();
775 
776             Query q = session.createQuery(sql);
777 
778             QueryPos qPos = QueryPos.getInstance(q);
779 
780             qPos.add(groupId);
781 
782             Object[] objArray = QueryUtil.getPrevAndNext(q, count,
783                     orderByComparator, socialActivity);
784 
785             SocialActivity[] array = new SocialActivityImpl[3];
786 
787             array[0] = (SocialActivity)objArray[0];
788             array[1] = (SocialActivity)objArray[1];
789             array[2] = (SocialActivity)objArray[2];
790 
791             return array;
792         }
793         catch (Exception e) {
794             throw processException(e);
795         }
796         finally {
797             closeSession(session);
798         }
799     }
800 
801     public List<SocialActivity> findByCompanyId(long companyId)
802         throws SystemException {
803         Object[] finderArgs = new Object[] { new Long(companyId) };
804 
805         List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_COMPANYID,
806                 finderArgs, this);
807 
808         if (list == null) {
809             Session session = null;
810 
811             try {
812                 session = openSession();
813 
814                 StringBundler query = new StringBundler(3);
815 
816                 query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
817 
818                 query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
819 
820                 query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
821 
822                 String sql = query.toString();
823 
824                 Query q = session.createQuery(sql);
825 
826                 QueryPos qPos = QueryPos.getInstance(q);
827 
828                 qPos.add(companyId);
829 
830                 list = q.list();
831             }
832             catch (Exception e) {
833                 throw processException(e);
834             }
835             finally {
836                 if (list == null) {
837                     list = new ArrayList<SocialActivity>();
838                 }
839 
840                 cacheResult(list);
841 
842                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_COMPANYID,
843                     finderArgs, list);
844 
845                 closeSession(session);
846             }
847         }
848 
849         return list;
850     }
851 
852     public List<SocialActivity> findByCompanyId(long companyId, int start,
853         int end) throws SystemException {
854         return findByCompanyId(companyId, start, end, null);
855     }
856 
857     public List<SocialActivity> findByCompanyId(long companyId, int start,
858         int end, OrderByComparator orderByComparator) throws SystemException {
859         Object[] finderArgs = new Object[] {
860                 new Long(companyId),
861                 
862                 String.valueOf(start), String.valueOf(end),
863                 String.valueOf(orderByComparator)
864             };
865 
866         List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_COMPANYID,
867                 finderArgs, this);
868 
869         if (list == null) {
870             Session session = null;
871 
872             try {
873                 session = openSession();
874 
875                 StringBundler query = null;
876 
877                 if (orderByComparator != null) {
878                     query = new StringBundler(3 +
879                             (orderByComparator.getOrderByFields().length * 3));
880                 }
881                 else {
882                     query = new StringBundler(3);
883                 }
884 
885                 query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
886 
887                 query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
888 
889                 if (orderByComparator != null) {
890                     appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
891                         orderByComparator);
892                 }
893 
894                 else {
895                     query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
896                 }
897 
898                 String sql = query.toString();
899 
900                 Query q = session.createQuery(sql);
901 
902                 QueryPos qPos = QueryPos.getInstance(q);
903 
904                 qPos.add(companyId);
905 
906                 list = (List<SocialActivity>)QueryUtil.list(q, getDialect(),
907                         start, end);
908             }
909             catch (Exception e) {
910                 throw processException(e);
911             }
912             finally {
913                 if (list == null) {
914                     list = new ArrayList<SocialActivity>();
915                 }
916 
917                 cacheResult(list);
918 
919                 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_COMPANYID,
920                     finderArgs, list);
921 
922                 closeSession(session);
923             }
924         }
925 
926         return list;
927     }
928 
929     public SocialActivity findByCompanyId_First(long companyId,
930         OrderByComparator orderByComparator)
931         throws NoSuchActivityException, SystemException {
932         List<SocialActivity> list = findByCompanyId(companyId, 0, 1,
933                 orderByComparator);
934 
935         if (list.isEmpty()) {
936             StringBundler msg = new StringBundler(4);
937 
938             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
939 
940             msg.append("companyId=");
941             msg.append(companyId);
942 
943             msg.append(StringPool.CLOSE_CURLY_BRACE);
944 
945             throw new NoSuchActivityException(msg.toString());
946         }
947         else {
948             return list.get(0);
949         }
950     }
951 
952     public SocialActivity findByCompanyId_Last(long companyId,
953         OrderByComparator orderByComparator)
954         throws NoSuchActivityException, SystemException {
955         int count = countByCompanyId(companyId);
956 
957         List<SocialActivity> list = findByCompanyId(companyId, count - 1,
958                 count, orderByComparator);
959 
960         if (list.isEmpty()) {
961             StringBundler msg = new StringBundler(4);
962 
963             msg.append(_NO_SUCH_ENTITY_WITH_KEY);
964 
965             msg.append("companyId=");
966             msg.append(companyId);
967 
968             msg.append(StringPool.CLOSE_CURLY_BRACE);
969 
970             throw new NoSuchActivityException(msg.toString());
971         }
972         else {
973             return list.get(0);
974         }
975     }
976 
977     public SocialActivity[] findByCompanyId_PrevAndNext(long activityId,
978         long companyId, OrderByComparator orderByComparator)
979         throws NoSuchActivityException, SystemException {
980         SocialActivity socialActivity = findByPrimaryKey(activityId);
981 
982         int count = countByCompanyId(companyId);
983 
984         Session session = null;
985 
986         try {
987             session = openSession();
988 
989             StringBundler query = null;
990 
991             if (orderByComparator != null) {
992                 query = new StringBundler(3 +
993                         (orderByComparator.getOrderByFields().length * 3));
994             }
995             else {
996                 query = new StringBundler(3);
997             }
998 
999             query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1000
1001            query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
1002
1003            if (orderByComparator != null) {
1004                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1005                    orderByComparator);
1006            }
1007
1008            else {
1009                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1010            }
1011
1012            String sql = query.toString();
1013
1014            Query q = session.createQuery(sql);
1015
1016            QueryPos qPos = QueryPos.getInstance(q);
1017
1018            qPos.add(companyId);
1019
1020            Object[] objArray = QueryUtil.getPrevAndNext(q, count,
1021                    orderByComparator, socialActivity);
1022
1023            SocialActivity[] array = new SocialActivityImpl[3];
1024
1025            array[0] = (SocialActivity)objArray[0];
1026            array[1] = (SocialActivity)objArray[1];
1027            array[2] = (SocialActivity)objArray[2];
1028
1029            return array;
1030        }
1031        catch (Exception e) {
1032            throw processException(e);
1033        }
1034        finally {
1035            closeSession(session);
1036        }
1037    }
1038
1039    public List<SocialActivity> findByUserId(long userId)
1040        throws SystemException {
1041        Object[] finderArgs = new Object[] { new Long(userId) };
1042
1043        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_USERID,
1044                finderArgs, this);
1045
1046        if (list == null) {
1047            Session session = null;
1048
1049            try {
1050                session = openSession();
1051
1052                StringBundler query = new StringBundler(3);
1053
1054                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1055
1056                query.append(_FINDER_COLUMN_USERID_USERID_2);
1057
1058                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1059
1060                String sql = query.toString();
1061
1062                Query q = session.createQuery(sql);
1063
1064                QueryPos qPos = QueryPos.getInstance(q);
1065
1066                qPos.add(userId);
1067
1068                list = q.list();
1069            }
1070            catch (Exception e) {
1071                throw processException(e);
1072            }
1073            finally {
1074                if (list == null) {
1075                    list = new ArrayList<SocialActivity>();
1076                }
1077
1078                cacheResult(list);
1079
1080                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_USERID,
1081                    finderArgs, list);
1082
1083                closeSession(session);
1084            }
1085        }
1086
1087        return list;
1088    }
1089
1090    public List<SocialActivity> findByUserId(long userId, int start, int end)
1091        throws SystemException {
1092        return findByUserId(userId, start, end, null);
1093    }
1094
1095    public List<SocialActivity> findByUserId(long userId, int start, int end,
1096        OrderByComparator orderByComparator) throws SystemException {
1097        Object[] finderArgs = new Object[] {
1098                new Long(userId),
1099                
1100                String.valueOf(start), String.valueOf(end),
1101                String.valueOf(orderByComparator)
1102            };
1103
1104        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_USERID,
1105                finderArgs, this);
1106
1107        if (list == null) {
1108            Session session = null;
1109
1110            try {
1111                session = openSession();
1112
1113                StringBundler query = null;
1114
1115                if (orderByComparator != null) {
1116                    query = new StringBundler(3 +
1117                            (orderByComparator.getOrderByFields().length * 3));
1118                }
1119                else {
1120                    query = new StringBundler(3);
1121                }
1122
1123                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1124
1125                query.append(_FINDER_COLUMN_USERID_USERID_2);
1126
1127                if (orderByComparator != null) {
1128                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1129                        orderByComparator);
1130                }
1131
1132                else {
1133                    query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1134                }
1135
1136                String sql = query.toString();
1137
1138                Query q = session.createQuery(sql);
1139
1140                QueryPos qPos = QueryPos.getInstance(q);
1141
1142                qPos.add(userId);
1143
1144                list = (List<SocialActivity>)QueryUtil.list(q, getDialect(),
1145                        start, end);
1146            }
1147            catch (Exception e) {
1148                throw processException(e);
1149            }
1150            finally {
1151                if (list == null) {
1152                    list = new ArrayList<SocialActivity>();
1153                }
1154
1155                cacheResult(list);
1156
1157                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_USERID,
1158                    finderArgs, list);
1159
1160                closeSession(session);
1161            }
1162        }
1163
1164        return list;
1165    }
1166
1167    public SocialActivity findByUserId_First(long userId,
1168        OrderByComparator orderByComparator)
1169        throws NoSuchActivityException, SystemException {
1170        List<SocialActivity> list = findByUserId(userId, 0, 1, orderByComparator);
1171
1172        if (list.isEmpty()) {
1173            StringBundler msg = new StringBundler(4);
1174
1175            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1176
1177            msg.append("userId=");
1178            msg.append(userId);
1179
1180            msg.append(StringPool.CLOSE_CURLY_BRACE);
1181
1182            throw new NoSuchActivityException(msg.toString());
1183        }
1184        else {
1185            return list.get(0);
1186        }
1187    }
1188
1189    public SocialActivity findByUserId_Last(long userId,
1190        OrderByComparator orderByComparator)
1191        throws NoSuchActivityException, SystemException {
1192        int count = countByUserId(userId);
1193
1194        List<SocialActivity> list = findByUserId(userId, count - 1, count,
1195                orderByComparator);
1196
1197        if (list.isEmpty()) {
1198            StringBundler msg = new StringBundler(4);
1199
1200            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1201
1202            msg.append("userId=");
1203            msg.append(userId);
1204
1205            msg.append(StringPool.CLOSE_CURLY_BRACE);
1206
1207            throw new NoSuchActivityException(msg.toString());
1208        }
1209        else {
1210            return list.get(0);
1211        }
1212    }
1213
1214    public SocialActivity[] findByUserId_PrevAndNext(long activityId,
1215        long userId, OrderByComparator orderByComparator)
1216        throws NoSuchActivityException, SystemException {
1217        SocialActivity socialActivity = findByPrimaryKey(activityId);
1218
1219        int count = countByUserId(userId);
1220
1221        Session session = null;
1222
1223        try {
1224            session = openSession();
1225
1226            StringBundler query = null;
1227
1228            if (orderByComparator != null) {
1229                query = new StringBundler(3 +
1230                        (orderByComparator.getOrderByFields().length * 3));
1231            }
1232            else {
1233                query = new StringBundler(3);
1234            }
1235
1236            query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1237
1238            query.append(_FINDER_COLUMN_USERID_USERID_2);
1239
1240            if (orderByComparator != null) {
1241                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1242                    orderByComparator);
1243            }
1244
1245            else {
1246                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1247            }
1248
1249            String sql = query.toString();
1250
1251            Query q = session.createQuery(sql);
1252
1253            QueryPos qPos = QueryPos.getInstance(q);
1254
1255            qPos.add(userId);
1256
1257            Object[] objArray = QueryUtil.getPrevAndNext(q, count,
1258                    orderByComparator, socialActivity);
1259
1260            SocialActivity[] array = new SocialActivityImpl[3];
1261
1262            array[0] = (SocialActivity)objArray[0];
1263            array[1] = (SocialActivity)objArray[1];
1264            array[2] = (SocialActivity)objArray[2];
1265
1266            return array;
1267        }
1268        catch (Exception e) {
1269            throw processException(e);
1270        }
1271        finally {
1272            closeSession(session);
1273        }
1274    }
1275
1276    public SocialActivity findByMirrorActivityId(long mirrorActivityId)
1277        throws NoSuchActivityException, SystemException {
1278        SocialActivity socialActivity = fetchByMirrorActivityId(mirrorActivityId);
1279
1280        if (socialActivity == null) {
1281            StringBundler msg = new StringBundler(4);
1282
1283            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1284
1285            msg.append("mirrorActivityId=");
1286            msg.append(mirrorActivityId);
1287
1288            msg.append(StringPool.CLOSE_CURLY_BRACE);
1289
1290            if (_log.isWarnEnabled()) {
1291                _log.warn(msg.toString());
1292            }
1293
1294            throw new NoSuchActivityException(msg.toString());
1295        }
1296
1297        return socialActivity;
1298    }
1299
1300    public SocialActivity fetchByMirrorActivityId(long mirrorActivityId)
1301        throws SystemException {
1302        return fetchByMirrorActivityId(mirrorActivityId, true);
1303    }
1304
1305    public SocialActivity fetchByMirrorActivityId(long mirrorActivityId,
1306        boolean retrieveFromCache) throws SystemException {
1307        Object[] finderArgs = new Object[] { new Long(mirrorActivityId) };
1308
1309        Object result = null;
1310
1311        if (retrieveFromCache) {
1312            result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_MIRRORACTIVITYID,
1313                    finderArgs, this);
1314        }
1315
1316        if (result == null) {
1317            Session session = null;
1318
1319            try {
1320                session = openSession();
1321
1322                StringBundler query = new StringBundler(3);
1323
1324                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1325
1326                query.append(_FINDER_COLUMN_MIRRORACTIVITYID_MIRRORACTIVITYID_2);
1327
1328                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1329
1330                String sql = query.toString();
1331
1332                Query q = session.createQuery(sql);
1333
1334                QueryPos qPos = QueryPos.getInstance(q);
1335
1336                qPos.add(mirrorActivityId);
1337
1338                List<SocialActivity> list = q.list();
1339
1340                result = list;
1341
1342                SocialActivity socialActivity = null;
1343
1344                if (list.isEmpty()) {
1345                    FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_MIRRORACTIVITYID,
1346                        finderArgs, list);
1347                }
1348                else {
1349                    socialActivity = list.get(0);
1350
1351                    cacheResult(socialActivity);
1352
1353                    if ((socialActivity.getMirrorActivityId() != mirrorActivityId)) {
1354                        FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_MIRRORACTIVITYID,
1355                            finderArgs, socialActivity);
1356                    }
1357                }
1358
1359                return socialActivity;
1360            }
1361            catch (Exception e) {
1362                throw processException(e);
1363            }
1364            finally {
1365                if (result == null) {
1366                    FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_MIRRORACTIVITYID,
1367                        finderArgs, new ArrayList<SocialActivity>());
1368                }
1369
1370                closeSession(session);
1371            }
1372        }
1373        else {
1374            if (result instanceof List<?>) {
1375                return null;
1376            }
1377            else {
1378                return (SocialActivity)result;
1379            }
1380        }
1381    }
1382
1383    public List<SocialActivity> findByClassNameId(long classNameId)
1384        throws SystemException {
1385        Object[] finderArgs = new Object[] { new Long(classNameId) };
1386
1387        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_CLASSNAMEID,
1388                finderArgs, this);
1389
1390        if (list == null) {
1391            Session session = null;
1392
1393            try {
1394                session = openSession();
1395
1396                StringBundler query = new StringBundler(3);
1397
1398                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1399
1400                query.append(_FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2);
1401
1402                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1403
1404                String sql = query.toString();
1405
1406                Query q = session.createQuery(sql);
1407
1408                QueryPos qPos = QueryPos.getInstance(q);
1409
1410                qPos.add(classNameId);
1411
1412                list = q.list();
1413            }
1414            catch (Exception e) {
1415                throw processException(e);
1416            }
1417            finally {
1418                if (list == null) {
1419                    list = new ArrayList<SocialActivity>();
1420                }
1421
1422                cacheResult(list);
1423
1424                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_CLASSNAMEID,
1425                    finderArgs, list);
1426
1427                closeSession(session);
1428            }
1429        }
1430
1431        return list;
1432    }
1433
1434    public List<SocialActivity> findByClassNameId(long classNameId, int start,
1435        int end) throws SystemException {
1436        return findByClassNameId(classNameId, start, end, null);
1437    }
1438
1439    public List<SocialActivity> findByClassNameId(long classNameId, int start,
1440        int end, OrderByComparator orderByComparator) throws SystemException {
1441        Object[] finderArgs = new Object[] {
1442                new Long(classNameId),
1443                
1444                String.valueOf(start), String.valueOf(end),
1445                String.valueOf(orderByComparator)
1446            };
1447
1448        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_CLASSNAMEID,
1449                finderArgs, this);
1450
1451        if (list == null) {
1452            Session session = null;
1453
1454            try {
1455                session = openSession();
1456
1457                StringBundler query = null;
1458
1459                if (orderByComparator != null) {
1460                    query = new StringBundler(3 +
1461                            (orderByComparator.getOrderByFields().length * 3));
1462                }
1463                else {
1464                    query = new StringBundler(3);
1465                }
1466
1467                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1468
1469                query.append(_FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2);
1470
1471                if (orderByComparator != null) {
1472                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1473                        orderByComparator);
1474                }
1475
1476                else {
1477                    query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1478                }
1479
1480                String sql = query.toString();
1481
1482                Query q = session.createQuery(sql);
1483
1484                QueryPos qPos = QueryPos.getInstance(q);
1485
1486                qPos.add(classNameId);
1487
1488                list = (List<SocialActivity>)QueryUtil.list(q, getDialect(),
1489                        start, end);
1490            }
1491            catch (Exception e) {
1492                throw processException(e);
1493            }
1494            finally {
1495                if (list == null) {
1496                    list = new ArrayList<SocialActivity>();
1497                }
1498
1499                cacheResult(list);
1500
1501                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_CLASSNAMEID,
1502                    finderArgs, list);
1503
1504                closeSession(session);
1505            }
1506        }
1507
1508        return list;
1509    }
1510
1511    public SocialActivity findByClassNameId_First(long classNameId,
1512        OrderByComparator orderByComparator)
1513        throws NoSuchActivityException, SystemException {
1514        List<SocialActivity> list = findByClassNameId(classNameId, 0, 1,
1515                orderByComparator);
1516
1517        if (list.isEmpty()) {
1518            StringBundler msg = new StringBundler(4);
1519
1520            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1521
1522            msg.append("classNameId=");
1523            msg.append(classNameId);
1524
1525            msg.append(StringPool.CLOSE_CURLY_BRACE);
1526
1527            throw new NoSuchActivityException(msg.toString());
1528        }
1529        else {
1530            return list.get(0);
1531        }
1532    }
1533
1534    public SocialActivity findByClassNameId_Last(long classNameId,
1535        OrderByComparator orderByComparator)
1536        throws NoSuchActivityException, SystemException {
1537        int count = countByClassNameId(classNameId);
1538
1539        List<SocialActivity> list = findByClassNameId(classNameId, count - 1,
1540                count, orderByComparator);
1541
1542        if (list.isEmpty()) {
1543            StringBundler msg = new StringBundler(4);
1544
1545            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1546
1547            msg.append("classNameId=");
1548            msg.append(classNameId);
1549
1550            msg.append(StringPool.CLOSE_CURLY_BRACE);
1551
1552            throw new NoSuchActivityException(msg.toString());
1553        }
1554        else {
1555            return list.get(0);
1556        }
1557    }
1558
1559    public SocialActivity[] findByClassNameId_PrevAndNext(long activityId,
1560        long classNameId, OrderByComparator orderByComparator)
1561        throws NoSuchActivityException, SystemException {
1562        SocialActivity socialActivity = findByPrimaryKey(activityId);
1563
1564        int count = countByClassNameId(classNameId);
1565
1566        Session session = null;
1567
1568        try {
1569            session = openSession();
1570
1571            StringBundler query = null;
1572
1573            if (orderByComparator != null) {
1574                query = new StringBundler(3 +
1575                        (orderByComparator.getOrderByFields().length * 3));
1576            }
1577            else {
1578                query = new StringBundler(3);
1579            }
1580
1581            query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1582
1583            query.append(_FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2);
1584
1585            if (orderByComparator != null) {
1586                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1587                    orderByComparator);
1588            }
1589
1590            else {
1591                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1592            }
1593
1594            String sql = query.toString();
1595
1596            Query q = session.createQuery(sql);
1597
1598            QueryPos qPos = QueryPos.getInstance(q);
1599
1600            qPos.add(classNameId);
1601
1602            Object[] objArray = QueryUtil.getPrevAndNext(q, count,
1603                    orderByComparator, socialActivity);
1604
1605            SocialActivity[] array = new SocialActivityImpl[3];
1606
1607            array[0] = (SocialActivity)objArray[0];
1608            array[1] = (SocialActivity)objArray[1];
1609            array[2] = (SocialActivity)objArray[2];
1610
1611            return array;
1612        }
1613        catch (Exception e) {
1614            throw processException(e);
1615        }
1616        finally {
1617            closeSession(session);
1618        }
1619    }
1620
1621    public List<SocialActivity> findByReceiverUserId(long receiverUserId)
1622        throws SystemException {
1623        Object[] finderArgs = new Object[] { new Long(receiverUserId) };
1624
1625        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_RECEIVERUSERID,
1626                finderArgs, this);
1627
1628        if (list == null) {
1629            Session session = null;
1630
1631            try {
1632                session = openSession();
1633
1634                StringBundler query = new StringBundler(3);
1635
1636                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1637
1638                query.append(_FINDER_COLUMN_RECEIVERUSERID_RECEIVERUSERID_2);
1639
1640                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1641
1642                String sql = query.toString();
1643
1644                Query q = session.createQuery(sql);
1645
1646                QueryPos qPos = QueryPos.getInstance(q);
1647
1648                qPos.add(receiverUserId);
1649
1650                list = q.list();
1651            }
1652            catch (Exception e) {
1653                throw processException(e);
1654            }
1655            finally {
1656                if (list == null) {
1657                    list = new ArrayList<SocialActivity>();
1658                }
1659
1660                cacheResult(list);
1661
1662                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_RECEIVERUSERID,
1663                    finderArgs, list);
1664
1665                closeSession(session);
1666            }
1667        }
1668
1669        return list;
1670    }
1671
1672    public List<SocialActivity> findByReceiverUserId(long receiverUserId,
1673        int start, int end) throws SystemException {
1674        return findByReceiverUserId(receiverUserId, start, end, null);
1675    }
1676
1677    public List<SocialActivity> findByReceiverUserId(long receiverUserId,
1678        int start, int end, OrderByComparator orderByComparator)
1679        throws SystemException {
1680        Object[] finderArgs = new Object[] {
1681                new Long(receiverUserId),
1682                
1683                String.valueOf(start), String.valueOf(end),
1684                String.valueOf(orderByComparator)
1685            };
1686
1687        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_RECEIVERUSERID,
1688                finderArgs, this);
1689
1690        if (list == null) {
1691            Session session = null;
1692
1693            try {
1694                session = openSession();
1695
1696                StringBundler query = null;
1697
1698                if (orderByComparator != null) {
1699                    query = new StringBundler(3 +
1700                            (orderByComparator.getOrderByFields().length * 3));
1701                }
1702                else {
1703                    query = new StringBundler(3);
1704                }
1705
1706                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1707
1708                query.append(_FINDER_COLUMN_RECEIVERUSERID_RECEIVERUSERID_2);
1709
1710                if (orderByComparator != null) {
1711                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1712                        orderByComparator);
1713                }
1714
1715                else {
1716                    query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1717                }
1718
1719                String sql = query.toString();
1720
1721                Query q = session.createQuery(sql);
1722
1723                QueryPos qPos = QueryPos.getInstance(q);
1724
1725                qPos.add(receiverUserId);
1726
1727                list = (List<SocialActivity>)QueryUtil.list(q, getDialect(),
1728                        start, end);
1729            }
1730            catch (Exception e) {
1731                throw processException(e);
1732            }
1733            finally {
1734                if (list == null) {
1735                    list = new ArrayList<SocialActivity>();
1736                }
1737
1738                cacheResult(list);
1739
1740                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_RECEIVERUSERID,
1741                    finderArgs, list);
1742
1743                closeSession(session);
1744            }
1745        }
1746
1747        return list;
1748    }
1749
1750    public SocialActivity findByReceiverUserId_First(long receiverUserId,
1751        OrderByComparator orderByComparator)
1752        throws NoSuchActivityException, SystemException {
1753        List<SocialActivity> list = findByReceiverUserId(receiverUserId, 0, 1,
1754                orderByComparator);
1755
1756        if (list.isEmpty()) {
1757            StringBundler msg = new StringBundler(4);
1758
1759            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1760
1761            msg.append("receiverUserId=");
1762            msg.append(receiverUserId);
1763
1764            msg.append(StringPool.CLOSE_CURLY_BRACE);
1765
1766            throw new NoSuchActivityException(msg.toString());
1767        }
1768        else {
1769            return list.get(0);
1770        }
1771    }
1772
1773    public SocialActivity findByReceiverUserId_Last(long receiverUserId,
1774        OrderByComparator orderByComparator)
1775        throws NoSuchActivityException, SystemException {
1776        int count = countByReceiverUserId(receiverUserId);
1777
1778        List<SocialActivity> list = findByReceiverUserId(receiverUserId,
1779                count - 1, count, orderByComparator);
1780
1781        if (list.isEmpty()) {
1782            StringBundler msg = new StringBundler(4);
1783
1784            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1785
1786            msg.append("receiverUserId=");
1787            msg.append(receiverUserId);
1788
1789            msg.append(StringPool.CLOSE_CURLY_BRACE);
1790
1791            throw new NoSuchActivityException(msg.toString());
1792        }
1793        else {
1794            return list.get(0);
1795        }
1796    }
1797
1798    public SocialActivity[] findByReceiverUserId_PrevAndNext(long activityId,
1799        long receiverUserId, OrderByComparator orderByComparator)
1800        throws NoSuchActivityException, SystemException {
1801        SocialActivity socialActivity = findByPrimaryKey(activityId);
1802
1803        int count = countByReceiverUserId(receiverUserId);
1804
1805        Session session = null;
1806
1807        try {
1808            session = openSession();
1809
1810            StringBundler query = null;
1811
1812            if (orderByComparator != null) {
1813                query = new StringBundler(3 +
1814                        (orderByComparator.getOrderByFields().length * 3));
1815            }
1816            else {
1817                query = new StringBundler(3);
1818            }
1819
1820            query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1821
1822            query.append(_FINDER_COLUMN_RECEIVERUSERID_RECEIVERUSERID_2);
1823
1824            if (orderByComparator != null) {
1825                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1826                    orderByComparator);
1827            }
1828
1829            else {
1830                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1831            }
1832
1833            String sql = query.toString();
1834
1835            Query q = session.createQuery(sql);
1836
1837            QueryPos qPos = QueryPos.getInstance(q);
1838
1839            qPos.add(receiverUserId);
1840
1841            Object[] objArray = QueryUtil.getPrevAndNext(q, count,
1842                    orderByComparator, socialActivity);
1843
1844            SocialActivity[] array = new SocialActivityImpl[3];
1845
1846            array[0] = (SocialActivity)objArray[0];
1847            array[1] = (SocialActivity)objArray[1];
1848            array[2] = (SocialActivity)objArray[2];
1849
1850            return array;
1851        }
1852        catch (Exception e) {
1853            throw processException(e);
1854        }
1855        finally {
1856            closeSession(session);
1857        }
1858    }
1859
1860    public List<SocialActivity> findByC_C(long classNameId, long classPK)
1861        throws SystemException {
1862        Object[] finderArgs = new Object[] {
1863                new Long(classNameId), new Long(classPK)
1864            };
1865
1866        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_C_C,
1867                finderArgs, this);
1868
1869        if (list == null) {
1870            Session session = null;
1871
1872            try {
1873                session = openSession();
1874
1875                StringBundler query = new StringBundler(4);
1876
1877                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1878
1879                query.append(_FINDER_COLUMN_C_C_CLASSNAMEID_2);
1880
1881                query.append(_FINDER_COLUMN_C_C_CLASSPK_2);
1882
1883                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1884
1885                String sql = query.toString();
1886
1887                Query q = session.createQuery(sql);
1888
1889                QueryPos qPos = QueryPos.getInstance(q);
1890
1891                qPos.add(classNameId);
1892
1893                qPos.add(classPK);
1894
1895                list = q.list();
1896            }
1897            catch (Exception e) {
1898                throw processException(e);
1899            }
1900            finally {
1901                if (list == null) {
1902                    list = new ArrayList<SocialActivity>();
1903                }
1904
1905                cacheResult(list);
1906
1907                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_C_C, finderArgs,
1908                    list);
1909
1910                closeSession(session);
1911            }
1912        }
1913
1914        return list;
1915    }
1916
1917    public List<SocialActivity> findByC_C(long classNameId, long classPK,
1918        int start, int end) throws SystemException {
1919        return findByC_C(classNameId, classPK, start, end, null);
1920    }
1921
1922    public List<SocialActivity> findByC_C(long classNameId, long classPK,
1923        int start, int end, OrderByComparator orderByComparator)
1924        throws SystemException {
1925        Object[] finderArgs = new Object[] {
1926                new Long(classNameId), new Long(classPK),
1927                
1928                String.valueOf(start), String.valueOf(end),
1929                String.valueOf(orderByComparator)
1930            };
1931
1932        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_C_C,
1933                finderArgs, this);
1934
1935        if (list == null) {
1936            Session session = null;
1937
1938            try {
1939                session = openSession();
1940
1941                StringBundler query = null;
1942
1943                if (orderByComparator != null) {
1944                    query = new StringBundler(4 +
1945                            (orderByComparator.getOrderByFields().length * 3));
1946                }
1947                else {
1948                    query = new StringBundler(4);
1949                }
1950
1951                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
1952
1953                query.append(_FINDER_COLUMN_C_C_CLASSNAMEID_2);
1954
1955                query.append(_FINDER_COLUMN_C_C_CLASSPK_2);
1956
1957                if (orderByComparator != null) {
1958                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1959                        orderByComparator);
1960                }
1961
1962                else {
1963                    query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
1964                }
1965
1966                String sql = query.toString();
1967
1968                Query q = session.createQuery(sql);
1969
1970                QueryPos qPos = QueryPos.getInstance(q);
1971
1972                qPos.add(classNameId);
1973
1974                qPos.add(classPK);
1975
1976                list = (List<SocialActivity>)QueryUtil.list(q, getDialect(),
1977                        start, end);
1978            }
1979            catch (Exception e) {
1980                throw processException(e);
1981            }
1982            finally {
1983                if (list == null) {
1984                    list = new ArrayList<SocialActivity>();
1985                }
1986
1987                cacheResult(list);
1988
1989                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_C_C,
1990                    finderArgs, list);
1991
1992                closeSession(session);
1993            }
1994        }
1995
1996        return list;
1997    }
1998
1999    public SocialActivity findByC_C_First(long classNameId, long classPK,
2000        OrderByComparator orderByComparator)
2001        throws NoSuchActivityException, SystemException {
2002        List<SocialActivity> list = findByC_C(classNameId, classPK, 0, 1,
2003                orderByComparator);
2004
2005        if (list.isEmpty()) {
2006            StringBundler msg = new StringBundler(6);
2007
2008            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2009
2010            msg.append("classNameId=");
2011            msg.append(classNameId);
2012
2013            msg.append(", classPK=");
2014            msg.append(classPK);
2015
2016            msg.append(StringPool.CLOSE_CURLY_BRACE);
2017
2018            throw new NoSuchActivityException(msg.toString());
2019        }
2020        else {
2021            return list.get(0);
2022        }
2023    }
2024
2025    public SocialActivity findByC_C_Last(long classNameId, long classPK,
2026        OrderByComparator orderByComparator)
2027        throws NoSuchActivityException, SystemException {
2028        int count = countByC_C(classNameId, classPK);
2029
2030        List<SocialActivity> list = findByC_C(classNameId, classPK, count - 1,
2031                count, orderByComparator);
2032
2033        if (list.isEmpty()) {
2034            StringBundler msg = new StringBundler(6);
2035
2036            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2037
2038            msg.append("classNameId=");
2039            msg.append(classNameId);
2040
2041            msg.append(", classPK=");
2042            msg.append(classPK);
2043
2044            msg.append(StringPool.CLOSE_CURLY_BRACE);
2045
2046            throw new NoSuchActivityException(msg.toString());
2047        }
2048        else {
2049            return list.get(0);
2050        }
2051    }
2052
2053    public SocialActivity[] findByC_C_PrevAndNext(long activityId,
2054        long classNameId, long classPK, OrderByComparator orderByComparator)
2055        throws NoSuchActivityException, SystemException {
2056        SocialActivity socialActivity = findByPrimaryKey(activityId);
2057
2058        int count = countByC_C(classNameId, classPK);
2059
2060        Session session = null;
2061
2062        try {
2063            session = openSession();
2064
2065            StringBundler query = null;
2066
2067            if (orderByComparator != null) {
2068                query = new StringBundler(4 +
2069                        (orderByComparator.getOrderByFields().length * 3));
2070            }
2071            else {
2072                query = new StringBundler(4);
2073            }
2074
2075            query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
2076
2077            query.append(_FINDER_COLUMN_C_C_CLASSNAMEID_2);
2078
2079            query.append(_FINDER_COLUMN_C_C_CLASSPK_2);
2080
2081            if (orderByComparator != null) {
2082                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
2083                    orderByComparator);
2084            }
2085
2086            else {
2087                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
2088            }
2089
2090            String sql = query.toString();
2091
2092            Query q = session.createQuery(sql);
2093
2094            QueryPos qPos = QueryPos.getInstance(q);
2095
2096            qPos.add(classNameId);
2097
2098            qPos.add(classPK);
2099
2100            Object[] objArray = QueryUtil.getPrevAndNext(q, count,
2101                    orderByComparator, socialActivity);
2102
2103            SocialActivity[] array = new SocialActivityImpl[3];
2104
2105            array[0] = (SocialActivity)objArray[0];
2106            array[1] = (SocialActivity)objArray[1];
2107            array[2] = (SocialActivity)objArray[2];
2108
2109            return array;
2110        }
2111        catch (Exception e) {
2112            throw processException(e);
2113        }
2114        finally {
2115            closeSession(session);
2116        }
2117    }
2118
2119    public List<SocialActivity> findByM_C_C(long mirrorActivityId,
2120        long classNameId, long classPK) throws SystemException {
2121        Object[] finderArgs = new Object[] {
2122                new Long(mirrorActivityId), new Long(classNameId),
2123                new Long(classPK)
2124            };
2125
2126        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_M_C_C,
2127                finderArgs, this);
2128
2129        if (list == null) {
2130            Session session = null;
2131
2132            try {
2133                session = openSession();
2134
2135                StringBundler query = new StringBundler(5);
2136
2137                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
2138
2139                query.append(_FINDER_COLUMN_M_C_C_MIRRORACTIVITYID_2);
2140
2141                query.append(_FINDER_COLUMN_M_C_C_CLASSNAMEID_2);
2142
2143                query.append(_FINDER_COLUMN_M_C_C_CLASSPK_2);
2144
2145                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
2146
2147                String sql = query.toString();
2148
2149                Query q = session.createQuery(sql);
2150
2151                QueryPos qPos = QueryPos.getInstance(q);
2152
2153                qPos.add(mirrorActivityId);
2154
2155                qPos.add(classNameId);
2156
2157                qPos.add(classPK);
2158
2159                list = q.list();
2160            }
2161            catch (Exception e) {
2162                throw processException(e);
2163            }
2164            finally {
2165                if (list == null) {
2166                    list = new ArrayList<SocialActivity>();
2167                }
2168
2169                cacheResult(list);
2170
2171                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_M_C_C,
2172                    finderArgs, list);
2173
2174                closeSession(session);
2175            }
2176        }
2177
2178        return list;
2179    }
2180
2181    public List<SocialActivity> findByM_C_C(long mirrorActivityId,
2182        long classNameId, long classPK, int start, int end)
2183        throws SystemException {
2184        return findByM_C_C(mirrorActivityId, classNameId, classPK, start, end,
2185            null);
2186    }
2187
2188    public List<SocialActivity> findByM_C_C(long mirrorActivityId,
2189        long classNameId, long classPK, int start, int end,
2190        OrderByComparator orderByComparator) throws SystemException {
2191        Object[] finderArgs = new Object[] {
2192                new Long(mirrorActivityId), new Long(classNameId),
2193                new Long(classPK),
2194                
2195                String.valueOf(start), String.valueOf(end),
2196                String.valueOf(orderByComparator)
2197            };
2198
2199        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_M_C_C,
2200                finderArgs, this);
2201
2202        if (list == null) {
2203            Session session = null;
2204
2205            try {
2206                session = openSession();
2207
2208                StringBundler query = null;
2209
2210                if (orderByComparator != null) {
2211                    query = new StringBundler(5 +
2212                            (orderByComparator.getOrderByFields().length * 3));
2213                }
2214                else {
2215                    query = new StringBundler(5);
2216                }
2217
2218                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
2219
2220                query.append(_FINDER_COLUMN_M_C_C_MIRRORACTIVITYID_2);
2221
2222                query.append(_FINDER_COLUMN_M_C_C_CLASSNAMEID_2);
2223
2224                query.append(_FINDER_COLUMN_M_C_C_CLASSPK_2);
2225
2226                if (orderByComparator != null) {
2227                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
2228                        orderByComparator);
2229                }
2230
2231                else {
2232                    query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
2233                }
2234
2235                String sql = query.toString();
2236
2237                Query q = session.createQuery(sql);
2238
2239                QueryPos qPos = QueryPos.getInstance(q);
2240
2241                qPos.add(mirrorActivityId);
2242
2243                qPos.add(classNameId);
2244
2245                qPos.add(classPK);
2246
2247                list = (List<SocialActivity>)QueryUtil.list(q, getDialect(),
2248                        start, end);
2249            }
2250            catch (Exception e) {
2251                throw processException(e);
2252            }
2253            finally {
2254                if (list == null) {
2255                    list = new ArrayList<SocialActivity>();
2256                }
2257
2258                cacheResult(list);
2259
2260                FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_M_C_C,
2261                    finderArgs, list);
2262
2263                closeSession(session);
2264            }
2265        }
2266
2267        return list;
2268    }
2269
2270    public SocialActivity findByM_C_C_First(long mirrorActivityId,
2271        long classNameId, long classPK, OrderByComparator orderByComparator)
2272        throws NoSuchActivityException, SystemException {
2273        List<SocialActivity> list = findByM_C_C(mirrorActivityId, classNameId,
2274                classPK, 0, 1, orderByComparator);
2275
2276        if (list.isEmpty()) {
2277            StringBundler msg = new StringBundler(8);
2278
2279            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2280
2281            msg.append("mirrorActivityId=");
2282            msg.append(mirrorActivityId);
2283
2284            msg.append(", classNameId=");
2285            msg.append(classNameId);
2286
2287            msg.append(", classPK=");
2288            msg.append(classPK);
2289
2290            msg.append(StringPool.CLOSE_CURLY_BRACE);
2291
2292            throw new NoSuchActivityException(msg.toString());
2293        }
2294        else {
2295            return list.get(0);
2296        }
2297    }
2298
2299    public SocialActivity findByM_C_C_Last(long mirrorActivityId,
2300        long classNameId, long classPK, OrderByComparator orderByComparator)
2301        throws NoSuchActivityException, SystemException {
2302        int count = countByM_C_C(mirrorActivityId, classNameId, classPK);
2303
2304        List<SocialActivity> list = findByM_C_C(mirrorActivityId, classNameId,
2305                classPK, count - 1, count, orderByComparator);
2306
2307        if (list.isEmpty()) {
2308            StringBundler msg = new StringBundler(8);
2309
2310            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2311
2312            msg.append("mirrorActivityId=");
2313            msg.append(mirrorActivityId);
2314
2315            msg.append(", classNameId=");
2316            msg.append(classNameId);
2317
2318            msg.append(", classPK=");
2319            msg.append(classPK);
2320
2321            msg.append(StringPool.CLOSE_CURLY_BRACE);
2322
2323            throw new NoSuchActivityException(msg.toString());
2324        }
2325        else {
2326            return list.get(0);
2327        }
2328    }
2329
2330    public SocialActivity[] findByM_C_C_PrevAndNext(long activityId,
2331        long mirrorActivityId, long classNameId, long classPK,
2332        OrderByComparator orderByComparator)
2333        throws NoSuchActivityException, SystemException {
2334        SocialActivity socialActivity = findByPrimaryKey(activityId);
2335
2336        int count = countByM_C_C(mirrorActivityId, classNameId, classPK);
2337
2338        Session session = null;
2339
2340        try {
2341            session = openSession();
2342
2343            StringBundler query = null;
2344
2345            if (orderByComparator != null) {
2346                query = new StringBundler(5 +
2347                        (orderByComparator.getOrderByFields().length * 3));
2348            }
2349            else {
2350                query = new StringBundler(5);
2351            }
2352
2353            query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
2354
2355            query.append(_FINDER_COLUMN_M_C_C_MIRRORACTIVITYID_2);
2356
2357            query.append(_FINDER_COLUMN_M_C_C_CLASSNAMEID_2);
2358
2359            query.append(_FINDER_COLUMN_M_C_C_CLASSPK_2);
2360
2361            if (orderByComparator != null) {
2362                appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
2363                    orderByComparator);
2364            }
2365
2366            else {
2367                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
2368            }
2369
2370            String sql = query.toString();
2371
2372            Query q = session.createQuery(sql);
2373
2374            QueryPos qPos = QueryPos.getInstance(q);
2375
2376            qPos.add(mirrorActivityId);
2377
2378            qPos.add(classNameId);
2379
2380            qPos.add(classPK);
2381
2382            Object[] objArray = QueryUtil.getPrevAndNext(q, count,
2383                    orderByComparator, socialActivity);
2384
2385            SocialActivity[] array = new SocialActivityImpl[3];
2386
2387            array[0] = (SocialActivity)objArray[0];
2388            array[1] = (SocialActivity)objArray[1];
2389            array[2] = (SocialActivity)objArray[2];
2390
2391            return array;
2392        }
2393        catch (Exception e) {
2394            throw processException(e);
2395        }
2396        finally {
2397            closeSession(session);
2398        }
2399    }
2400
2401    public SocialActivity findByG_U_CD_C_C_T_R(long groupId, long userId,
2402        long createDate, long classNameId, long classPK, int type,
2403        long receiverUserId) throws NoSuchActivityException, SystemException {
2404        SocialActivity socialActivity = fetchByG_U_CD_C_C_T_R(groupId, userId,
2405                createDate, classNameId, classPK, type, receiverUserId);
2406
2407        if (socialActivity == null) {
2408            StringBundler msg = new StringBundler(16);
2409
2410            msg.append(_NO_SUCH_ENTITY_WITH_KEY);
2411
2412            msg.append("groupId=");
2413            msg.append(groupId);
2414
2415            msg.append(", userId=");
2416            msg.append(userId);
2417
2418            msg.append(", createDate=");
2419            msg.append(createDate);
2420
2421            msg.append(", classNameId=");
2422            msg.append(classNameId);
2423
2424            msg.append(", classPK=");
2425            msg.append(classPK);
2426
2427            msg.append(", type=");
2428            msg.append(type);
2429
2430            msg.append(", receiverUserId=");
2431            msg.append(receiverUserId);
2432
2433            msg.append(StringPool.CLOSE_CURLY_BRACE);
2434
2435            if (_log.isWarnEnabled()) {
2436                _log.warn(msg.toString());
2437            }
2438
2439            throw new NoSuchActivityException(msg.toString());
2440        }
2441
2442        return socialActivity;
2443    }
2444
2445    public SocialActivity fetchByG_U_CD_C_C_T_R(long groupId, long userId,
2446        long createDate, long classNameId, long classPK, int type,
2447        long receiverUserId) throws SystemException {
2448        return fetchByG_U_CD_C_C_T_R(groupId, userId, createDate, classNameId,
2449            classPK, type, receiverUserId, true);
2450    }
2451
2452    public SocialActivity fetchByG_U_CD_C_C_T_R(long groupId, long userId,
2453        long createDate, long classNameId, long classPK, int type,
2454        long receiverUserId, boolean retrieveFromCache)
2455        throws SystemException {
2456        Object[] finderArgs = new Object[] {
2457                new Long(groupId), new Long(userId), new Long(createDate),
2458                new Long(classNameId), new Long(classPK), new Integer(type),
2459                new Long(receiverUserId)
2460            };
2461
2462        Object result = null;
2463
2464        if (retrieveFromCache) {
2465            result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R,
2466                    finderArgs, this);
2467        }
2468
2469        if (result == null) {
2470            Session session = null;
2471
2472            try {
2473                session = openSession();
2474
2475                StringBundler query = new StringBundler(9);
2476
2477                query.append(_SQL_SELECT_SOCIALACTIVITY_WHERE);
2478
2479                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_GROUPID_2);
2480
2481                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_USERID_2);
2482
2483                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_CREATEDATE_2);
2484
2485                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_CLASSNAMEID_2);
2486
2487                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_CLASSPK_2);
2488
2489                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_TYPE_2);
2490
2491                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_RECEIVERUSERID_2);
2492
2493                query.append(SocialActivityModelImpl.ORDER_BY_JPQL);
2494
2495                String sql = query.toString();
2496
2497                Query q = session.createQuery(sql);
2498
2499                QueryPos qPos = QueryPos.getInstance(q);
2500
2501                qPos.add(groupId);
2502
2503                qPos.add(userId);
2504
2505                qPos.add(createDate);
2506
2507                qPos.add(classNameId);
2508
2509                qPos.add(classPK);
2510
2511                qPos.add(type);
2512
2513                qPos.add(receiverUserId);
2514
2515                List<SocialActivity> list = q.list();
2516
2517                result = list;
2518
2519                SocialActivity socialActivity = null;
2520
2521                if (list.isEmpty()) {
2522                    FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R,
2523                        finderArgs, list);
2524                }
2525                else {
2526                    socialActivity = list.get(0);
2527
2528                    cacheResult(socialActivity);
2529
2530                    if ((socialActivity.getGroupId() != groupId) ||
2531                            (socialActivity.getUserId() != userId) ||
2532                            (socialActivity.getCreateDate() != createDate) ||
2533                            (socialActivity.getClassNameId() != classNameId) ||
2534                            (socialActivity.getClassPK() != classPK) ||
2535                            (socialActivity.getType() != type) ||
2536                            (socialActivity.getReceiverUserId() != receiverUserId)) {
2537                        FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R,
2538                            finderArgs, socialActivity);
2539                    }
2540                }
2541
2542                return socialActivity;
2543            }
2544            catch (Exception e) {
2545                throw processException(e);
2546            }
2547            finally {
2548                if (result == null) {
2549                    FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U_CD_C_C_T_R,
2550                        finderArgs, new ArrayList<SocialActivity>());
2551                }
2552
2553                closeSession(session);
2554            }
2555        }
2556        else {
2557            if (result instanceof List<?>) {
2558                return null;
2559            }
2560            else {
2561                return (SocialActivity)result;
2562            }
2563        }
2564    }
2565
2566    public List<SocialActivity> findAll() throws SystemException {
2567        return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
2568    }
2569
2570    public List<SocialActivity> findAll(int start, int end)
2571        throws SystemException {
2572        return findAll(start, end, null);
2573    }
2574
2575    public List<SocialActivity> findAll(int start, int end,
2576        OrderByComparator orderByComparator) throws SystemException {
2577        Object[] finderArgs = new Object[] {
2578                String.valueOf(start), String.valueOf(end),
2579                String.valueOf(orderByComparator)
2580            };
2581
2582        List<SocialActivity> list = (List<SocialActivity>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
2583                finderArgs, this);
2584
2585        if (list == null) {
2586            Session session = null;
2587
2588            try {
2589                session = openSession();
2590
2591                StringBundler query = null;
2592                String sql = null;
2593
2594                if (orderByComparator != null) {
2595                    query = new StringBundler(2 +
2596                            (orderByComparator.getOrderByFields().length * 3));
2597
2598                    query.append(_SQL_SELECT_SOCIALACTIVITY);
2599
2600                    appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
2601                        orderByComparator);
2602
2603                    sql = query.toString();
2604                }
2605
2606                else {
2607                    sql = _SQL_SELECT_SOCIALACTIVITY.concat(SocialActivityModelImpl.ORDER_BY_JPQL);
2608                }
2609
2610                Query q = session.createQuery(sql);
2611
2612                if (orderByComparator == null) {
2613                    list = (List<SocialActivity>)QueryUtil.list(q,
2614                            getDialect(), start, end, false);
2615
2616                    Collections.sort(list);
2617                }
2618                else {
2619                    list = (List<SocialActivity>)QueryUtil.list(q,
2620                            getDialect(), start, end);
2621                }
2622            }
2623            catch (Exception e) {
2624                throw processException(e);
2625            }
2626            finally {
2627                if (list == null) {
2628                    list = new ArrayList<SocialActivity>();
2629                }
2630
2631                cacheResult(list);
2632
2633                FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
2634
2635                closeSession(session);
2636            }
2637        }
2638
2639        return list;
2640    }
2641
2642    public void removeByGroupId(long groupId) throws SystemException {
2643        for (SocialActivity socialActivity : findByGroupId(groupId)) {
2644            remove(socialActivity);
2645        }
2646    }
2647
2648    public void removeByCompanyId(long companyId) throws SystemException {
2649        for (SocialActivity socialActivity : findByCompanyId(companyId)) {
2650            remove(socialActivity);
2651        }
2652    }
2653
2654    public void removeByUserId(long userId) throws SystemException {
2655        for (SocialActivity socialActivity : findByUserId(userId)) {
2656            remove(socialActivity);
2657        }
2658    }
2659
2660    public void removeByMirrorActivityId(long mirrorActivityId)
2661        throws NoSuchActivityException, SystemException {
2662        SocialActivity socialActivity = findByMirrorActivityId(mirrorActivityId);
2663
2664        remove(socialActivity);
2665    }
2666
2667    public void removeByClassNameId(long classNameId) throws SystemException {
2668        for (SocialActivity socialActivity : findByClassNameId(classNameId)) {
2669            remove(socialActivity);
2670        }
2671    }
2672
2673    public void removeByReceiverUserId(long receiverUserId)
2674        throws SystemException {
2675        for (SocialActivity socialActivity : findByReceiverUserId(
2676                receiverUserId)) {
2677            remove(socialActivity);
2678        }
2679    }
2680
2681    public void removeByC_C(long classNameId, long classPK)
2682        throws SystemException {
2683        for (SocialActivity socialActivity : findByC_C(classNameId, classPK)) {
2684            remove(socialActivity);
2685        }
2686    }
2687
2688    public void removeByM_C_C(long mirrorActivityId, long classNameId,
2689        long classPK) throws SystemException {
2690        for (SocialActivity socialActivity : findByM_C_C(mirrorActivityId,
2691                classNameId, classPK)) {
2692            remove(socialActivity);
2693        }
2694    }
2695
2696    public void removeByG_U_CD_C_C_T_R(long groupId, long userId,
2697        long createDate, long classNameId, long classPK, int type,
2698        long receiverUserId) throws NoSuchActivityException, SystemException {
2699        SocialActivity socialActivity = findByG_U_CD_C_C_T_R(groupId, userId,
2700                createDate, classNameId, classPK, type, receiverUserId);
2701
2702        remove(socialActivity);
2703    }
2704
2705    public void removeAll() throws SystemException {
2706        for (SocialActivity socialActivity : findAll()) {
2707            remove(socialActivity);
2708        }
2709    }
2710
2711    public int countByGroupId(long groupId) throws SystemException {
2712        Object[] finderArgs = new Object[] { new Long(groupId) };
2713
2714        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_GROUPID,
2715                finderArgs, this);
2716
2717        if (count == null) {
2718            Session session = null;
2719
2720            try {
2721                session = openSession();
2722
2723                StringBundler query = new StringBundler(2);
2724
2725                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
2726
2727                query.append(_FINDER_COLUMN_GROUPID_GROUPID_2);
2728
2729                String sql = query.toString();
2730
2731                Query q = session.createQuery(sql);
2732
2733                QueryPos qPos = QueryPos.getInstance(q);
2734
2735                qPos.add(groupId);
2736
2737                count = (Long)q.uniqueResult();
2738            }
2739            catch (Exception e) {
2740                throw processException(e);
2741            }
2742            finally {
2743                if (count == null) {
2744                    count = Long.valueOf(0);
2745                }
2746
2747                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_GROUPID,
2748                    finderArgs, count);
2749
2750                closeSession(session);
2751            }
2752        }
2753
2754        return count.intValue();
2755    }
2756
2757    public int countByCompanyId(long companyId) throws SystemException {
2758        Object[] finderArgs = new Object[] { new Long(companyId) };
2759
2760        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_COMPANYID,
2761                finderArgs, this);
2762
2763        if (count == null) {
2764            Session session = null;
2765
2766            try {
2767                session = openSession();
2768
2769                StringBundler query = new StringBundler(2);
2770
2771                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
2772
2773                query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
2774
2775                String sql = query.toString();
2776
2777                Query q = session.createQuery(sql);
2778
2779                QueryPos qPos = QueryPos.getInstance(q);
2780
2781                qPos.add(companyId);
2782
2783                count = (Long)q.uniqueResult();
2784            }
2785            catch (Exception e) {
2786                throw processException(e);
2787            }
2788            finally {
2789                if (count == null) {
2790                    count = Long.valueOf(0);
2791                }
2792
2793                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_COMPANYID,
2794                    finderArgs, count);
2795
2796                closeSession(session);
2797            }
2798        }
2799
2800        return count.intValue();
2801    }
2802
2803    public int countByUserId(long userId) throws SystemException {
2804        Object[] finderArgs = new Object[] { new Long(userId) };
2805
2806        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_USERID,
2807                finderArgs, this);
2808
2809        if (count == null) {
2810            Session session = null;
2811
2812            try {
2813                session = openSession();
2814
2815                StringBundler query = new StringBundler(2);
2816
2817                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
2818
2819                query.append(_FINDER_COLUMN_USERID_USERID_2);
2820
2821                String sql = query.toString();
2822
2823                Query q = session.createQuery(sql);
2824
2825                QueryPos qPos = QueryPos.getInstance(q);
2826
2827                qPos.add(userId);
2828
2829                count = (Long)q.uniqueResult();
2830            }
2831            catch (Exception e) {
2832                throw processException(e);
2833            }
2834            finally {
2835                if (count == null) {
2836                    count = Long.valueOf(0);
2837                }
2838
2839                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_USERID,
2840                    finderArgs, count);
2841
2842                closeSession(session);
2843            }
2844        }
2845
2846        return count.intValue();
2847    }
2848
2849    public int countByMirrorActivityId(long mirrorActivityId)
2850        throws SystemException {
2851        Object[] finderArgs = new Object[] { new Long(mirrorActivityId) };
2852
2853        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_MIRRORACTIVITYID,
2854                finderArgs, this);
2855
2856        if (count == null) {
2857            Session session = null;
2858
2859            try {
2860                session = openSession();
2861
2862                StringBundler query = new StringBundler(2);
2863
2864                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
2865
2866                query.append(_FINDER_COLUMN_MIRRORACTIVITYID_MIRRORACTIVITYID_2);
2867
2868                String sql = query.toString();
2869
2870                Query q = session.createQuery(sql);
2871
2872                QueryPos qPos = QueryPos.getInstance(q);
2873
2874                qPos.add(mirrorActivityId);
2875
2876                count = (Long)q.uniqueResult();
2877            }
2878            catch (Exception e) {
2879                throw processException(e);
2880            }
2881            finally {
2882                if (count == null) {
2883                    count = Long.valueOf(0);
2884                }
2885
2886                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_MIRRORACTIVITYID,
2887                    finderArgs, count);
2888
2889                closeSession(session);
2890            }
2891        }
2892
2893        return count.intValue();
2894    }
2895
2896    public int countByClassNameId(long classNameId) throws SystemException {
2897        Object[] finderArgs = new Object[] { new Long(classNameId) };
2898
2899        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_CLASSNAMEID,
2900                finderArgs, this);
2901
2902        if (count == null) {
2903            Session session = null;
2904
2905            try {
2906                session = openSession();
2907
2908                StringBundler query = new StringBundler(2);
2909
2910                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
2911
2912                query.append(_FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2);
2913
2914                String sql = query.toString();
2915
2916                Query q = session.createQuery(sql);
2917
2918                QueryPos qPos = QueryPos.getInstance(q);
2919
2920                qPos.add(classNameId);
2921
2922                count = (Long)q.uniqueResult();
2923            }
2924            catch (Exception e) {
2925                throw processException(e);
2926            }
2927            finally {
2928                if (count == null) {
2929                    count = Long.valueOf(0);
2930                }
2931
2932                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_CLASSNAMEID,
2933                    finderArgs, count);
2934
2935                closeSession(session);
2936            }
2937        }
2938
2939        return count.intValue();
2940    }
2941
2942    public int countByReceiverUserId(long receiverUserId)
2943        throws SystemException {
2944        Object[] finderArgs = new Object[] { new Long(receiverUserId) };
2945
2946        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_RECEIVERUSERID,
2947                finderArgs, this);
2948
2949        if (count == null) {
2950            Session session = null;
2951
2952            try {
2953                session = openSession();
2954
2955                StringBundler query = new StringBundler(2);
2956
2957                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
2958
2959                query.append(_FINDER_COLUMN_RECEIVERUSERID_RECEIVERUSERID_2);
2960
2961                String sql = query.toString();
2962
2963                Query q = session.createQuery(sql);
2964
2965                QueryPos qPos = QueryPos.getInstance(q);
2966
2967                qPos.add(receiverUserId);
2968
2969                count = (Long)q.uniqueResult();
2970            }
2971            catch (Exception e) {
2972                throw processException(e);
2973            }
2974            finally {
2975                if (count == null) {
2976                    count = Long.valueOf(0);
2977                }
2978
2979                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_RECEIVERUSERID,
2980                    finderArgs, count);
2981
2982                closeSession(session);
2983            }
2984        }
2985
2986        return count.intValue();
2987    }
2988
2989    public int countByC_C(long classNameId, long classPK)
2990        throws SystemException {
2991        Object[] finderArgs = new Object[] {
2992                new Long(classNameId), new Long(classPK)
2993            };
2994
2995        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_C_C,
2996                finderArgs, this);
2997
2998        if (count == null) {
2999            Session session = null;
3000
3001            try {
3002                session = openSession();
3003
3004                StringBundler query = new StringBundler(3);
3005
3006                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
3007
3008                query.append(_FINDER_COLUMN_C_C_CLASSNAMEID_2);
3009
3010                query.append(_FINDER_COLUMN_C_C_CLASSPK_2);
3011
3012                String sql = query.toString();
3013
3014                Query q = session.createQuery(sql);
3015
3016                QueryPos qPos = QueryPos.getInstance(q);
3017
3018                qPos.add(classNameId);
3019
3020                qPos.add(classPK);
3021
3022                count = (Long)q.uniqueResult();
3023            }
3024            catch (Exception e) {
3025                throw processException(e);
3026            }
3027            finally {
3028                if (count == null) {
3029                    count = Long.valueOf(0);
3030                }
3031
3032                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_C_C, finderArgs,
3033                    count);
3034
3035                closeSession(session);
3036            }
3037        }
3038
3039        return count.intValue();
3040    }
3041
3042    public int countByM_C_C(long mirrorActivityId, long classNameId,
3043        long classPK) throws SystemException {
3044        Object[] finderArgs = new Object[] {
3045                new Long(mirrorActivityId), new Long(classNameId),
3046                new Long(classPK)
3047            };
3048
3049        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_M_C_C,
3050                finderArgs, this);
3051
3052        if (count == null) {
3053            Session session = null;
3054
3055            try {
3056                session = openSession();
3057
3058                StringBundler query = new StringBundler(4);
3059
3060                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
3061
3062                query.append(_FINDER_COLUMN_M_C_C_MIRRORACTIVITYID_2);
3063
3064                query.append(_FINDER_COLUMN_M_C_C_CLASSNAMEID_2);
3065
3066                query.append(_FINDER_COLUMN_M_C_C_CLASSPK_2);
3067
3068                String sql = query.toString();
3069
3070                Query q = session.createQuery(sql);
3071
3072                QueryPos qPos = QueryPos.getInstance(q);
3073
3074                qPos.add(mirrorActivityId);
3075
3076                qPos.add(classNameId);
3077
3078                qPos.add(classPK);
3079
3080                count = (Long)q.uniqueResult();
3081            }
3082            catch (Exception e) {
3083                throw processException(e);
3084            }
3085            finally {
3086                if (count == null) {
3087                    count = Long.valueOf(0);
3088                }
3089
3090                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_M_C_C,
3091                    finderArgs, count);
3092
3093                closeSession(session);
3094            }
3095        }
3096
3097        return count.intValue();
3098    }
3099
3100    public int countByG_U_CD_C_C_T_R(long groupId, long userId,
3101        long createDate, long classNameId, long classPK, int type,
3102        long receiverUserId) throws SystemException {
3103        Object[] finderArgs = new Object[] {
3104                new Long(groupId), new Long(userId), new Long(createDate),
3105                new Long(classNameId), new Long(classPK), new Integer(type),
3106                new Long(receiverUserId)
3107            };
3108
3109        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_G_U_CD_C_C_T_R,
3110                finderArgs, this);
3111
3112        if (count == null) {
3113            Session session = null;
3114
3115            try {
3116                session = openSession();
3117
3118                StringBundler query = new StringBundler(8);
3119
3120                query.append(_SQL_COUNT_SOCIALACTIVITY_WHERE);
3121
3122                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_GROUPID_2);
3123
3124                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_USERID_2);
3125
3126                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_CREATEDATE_2);
3127
3128                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_CLASSNAMEID_2);
3129
3130                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_CLASSPK_2);
3131
3132                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_TYPE_2);
3133
3134                query.append(_FINDER_COLUMN_G_U_CD_C_C_T_R_RECEIVERUSERID_2);
3135
3136                String sql = query.toString();
3137
3138                Query q = session.createQuery(sql);
3139
3140                QueryPos qPos = QueryPos.getInstance(q);
3141
3142                qPos.add(groupId);
3143
3144                qPos.add(userId);
3145
3146                qPos.add(createDate);
3147
3148                qPos.add(classNameId);
3149
3150                qPos.add(classPK);
3151
3152                qPos.add(type);
3153
3154                qPos.add(receiverUserId);
3155
3156                count = (Long)q.uniqueResult();
3157            }
3158            catch (Exception e) {
3159                throw processException(e);
3160            }
3161            finally {
3162                if (count == null) {
3163                    count = Long.valueOf(0);
3164                }
3165
3166                FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_G_U_CD_C_C_T_R,
3167                    finderArgs, count);
3168
3169                closeSession(session);
3170            }
3171        }
3172
3173        return count.intValue();
3174    }
3175
3176    public int countAll() throws SystemException {
3177        Object[] finderArgs = new Object[0];
3178
3179        Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
3180                finderArgs, this);
3181
3182        if (count == null) {
3183            Session session = null;
3184
3185            try {
3186                session = openSession();
3187
3188                Query q = session.createQuery(_SQL_COUNT_SOCIALACTIVITY);
3189
3190                count = (Long)q.uniqueResult();
3191            }
3192            catch (Exception e) {
3193                throw processException(e);
3194            }
3195            finally {
3196                if (count == null) {
3197                    count = Long.valueOf(0);
3198                }
3199
3200                FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
3201                    count);
3202
3203                closeSession(session);
3204            }
3205        }
3206
3207        return count.intValue();
3208    }
3209
3210    public void afterPropertiesSet() {
3211        String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
3212                    com.liferay.portal.util.PropsUtil.get(
3213                        "value.object.listener.com.liferay.portlet.social.model.SocialActivity")));
3214
3215        if (listenerClassNames.length > 0) {
3216            try {
3217                List<ModelListener<SocialActivity>> listenersList = new ArrayList<ModelListener<SocialActivity>>();
3218
3219                for (String listenerClassName : listenerClassNames) {
3220                    listenersList.add((ModelListener<SocialActivity>)Class.forName(
3221                            listenerClassName).newInstance());
3222                }
3223
3224                listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
3225            }
3226            catch (Exception e) {
3227                _log.error(e);
3228            }
3229        }
3230    }
3231
3232    @BeanReference(type = SocialActivityPersistence.class)
3233    protected SocialActivityPersistence socialActivityPersistence;
3234    @BeanReference(type = SocialRelationPersistence.class)
3235    protected SocialRelationPersistence socialRelationPersistence;
3236    @BeanReference(type = SocialRequestPersistence.class)
3237    protected SocialRequestPersistence socialRequestPersistence;
3238    @BeanReference(type = GroupPersistence.class)
3239    protected GroupPersistence groupPersistence;
3240    @BeanReference(type = LayoutPersistence.class)
3241    protected LayoutPersistence layoutPersistence;
3242    @BeanReference(type = ResourcePersistence.class)
3243    protected ResourcePersistence resourcePersistence;
3244    @BeanReference(type = UserPersistence.class)
3245    protected UserPersistence userPersistence;
3246    private static final String _SQL_SELECT_SOCIALACTIVITY = "SELECT socialActivity FROM SocialActivity socialActivity";
3247    private static final String _SQL_SELECT_SOCIALACTIVITY_WHERE = "SELECT socialActivity FROM SocialActivity socialActivity WHERE ";
3248    private static final String _SQL_COUNT_SOCIALACTIVITY = "SELECT COUNT(socialActivity) FROM SocialActivity socialActivity";
3249    private static final String _SQL_COUNT_SOCIALACTIVITY_WHERE = "SELECT COUNT(socialActivity) FROM SocialActivity socialActivity WHERE ";
3250    private static final String _FINDER_COLUMN_GROUPID_GROUPID_2 = "socialActivity.groupId = ?";
3251    private static final String _FINDER_COLUMN_COMPANYID_COMPANYID_2 = "socialActivity.companyId = ?";
3252    private static final String _FINDER_COLUMN_USERID_USERID_2 = "socialActivity.userId = ?";
3253    private static final String _FINDER_COLUMN_MIRRORACTIVITYID_MIRRORACTIVITYID_2 =
3254        "socialActivity.mirrorActivityId = ?";
3255    private static final String _FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2 = "socialActivity.classNameId = ?";
3256    private static final String _FINDER_COLUMN_RECEIVERUSERID_RECEIVERUSERID_2 = "socialActivity.receiverUserId = ?";
3257    private static final String _FINDER_COLUMN_C_C_CLASSNAMEID_2 = "socialActivity.classNameId = ? AND ";
3258    private static final String _FINDER_COLUMN_C_C_CLASSPK_2 = "socialActivity.classPK = ?";
3259    private static final String _FINDER_COLUMN_M_C_C_MIRRORACTIVITYID_2 = "socialActivity.mirrorActivityId = ? AND ";
3260    private static final String _FINDER_COLUMN_M_C_C_CLASSNAMEID_2 = "socialActivity.classNameId = ? AND ";
3261    private static final String _FINDER_COLUMN_M_C_C_CLASSPK_2 = "socialActivity.classPK = ?";
3262    private static final String _FINDER_COLUMN_G_U_CD_C_C_T_R_GROUPID_2 = "socialActivity.groupId = ? AND ";
3263    private static final String _FINDER_COLUMN_G_U_CD_C_C_T_R_USERID_2 = "socialActivity.userId = ? AND ";
3264    private static final String _FINDER_COLUMN_G_U_CD_C_C_T_R_CREATEDATE_2 = "socialActivity.createDate = ? AND ";
3265    private static final String _FINDER_COLUMN_G_U_CD_C_C_T_R_CLASSNAMEID_2 = "socialActivity.classNameId = ? AND ";
3266    private static final String _FINDER_COLUMN_G_U_CD_C_C_T_R_CLASSPK_2 = "socialActivity.classPK = ? AND ";
3267    private static final String _FINDER_COLUMN_G_U_CD_C_C_T_R_TYPE_2 = "socialActivity.type = ? AND ";
3268    private static final String _FINDER_COLUMN_G_U_CD_C_C_T_R_RECEIVERUSERID_2 = "socialActivity.receiverUserId = ?";
3269    private static final String _ORDER_BY_ENTITY_ALIAS = "socialActivity.";
3270    private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No SocialActivity exists with the primary key ";
3271    private static final String _NO_SUCH_ENTITY_WITH_KEY = "No SocialActivity exists with the key {";
3272    private static Log _log = LogFactoryUtil.getLog(SocialActivityPersistenceImpl.class);
3273}