1
14
15 package com.liferay.portlet.social.service.persistence;
16
17 import com.liferay.portal.NoSuchModelException;
18 import com.liferay.portal.kernel.annotation.BeanReference;
19 import com.liferay.portal.kernel.cache.CacheRegistry;
20 import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
21 import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
22 import com.liferay.portal.kernel.dao.orm.FinderPath;
23 import com.liferay.portal.kernel.dao.orm.Query;
24 import com.liferay.portal.kernel.dao.orm.QueryPos;
25 import com.liferay.portal.kernel.dao.orm.QueryUtil;
26 import com.liferay.portal.kernel.dao.orm.Session;
27 import com.liferay.portal.kernel.exception.SystemException;
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.InstanceFactory;
32 import com.liferay.portal.kernel.util.OrderByComparator;
33 import com.liferay.portal.kernel.util.StringBundler;
34 import com.liferay.portal.kernel.util.StringPool;
35 import com.liferay.portal.kernel.util.StringUtil;
36 import com.liferay.portal.model.ModelListener;
37 import com.liferay.portal.service.persistence.BatchSessionUtil;
38 import com.liferay.portal.service.persistence.ResourcePersistence;
39 import com.liferay.portal.service.persistence.UserPersistence;
40 import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
41
42 import com.liferay.portlet.social.NoSuchEquityUserException;
43 import com.liferay.portlet.social.model.SocialEquityUser;
44 import com.liferay.portlet.social.model.impl.SocialEquityUserImpl;
45 import com.liferay.portlet.social.model.impl.SocialEquityUserModelImpl;
46
47 import java.io.Serializable;
48
49 import java.util.ArrayList;
50 import java.util.Collections;
51 import java.util.List;
52
53
66 public class SocialEquityUserPersistenceImpl extends BasePersistenceImpl<SocialEquityUser>
67 implements SocialEquityUserPersistence {
68 public static final String FINDER_CLASS_NAME_ENTITY = SocialEquityUserImpl.class.getName();
69 public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
70 ".List";
71 public static final FinderPath FINDER_PATH_FIND_BY_USERID = new FinderPath(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
72 SocialEquityUserModelImpl.FINDER_CACHE_ENABLED,
73 FINDER_CLASS_NAME_LIST, "findByUserId",
74 new String[] {
75 Long.class.getName(),
76
77 "java.lang.Integer", "java.lang.Integer",
78 "com.liferay.portal.kernel.util.OrderByComparator"
79 });
80 public static final FinderPath FINDER_PATH_COUNT_BY_USERID = new FinderPath(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
81 SocialEquityUserModelImpl.FINDER_CACHE_ENABLED,
82 FINDER_CLASS_NAME_LIST, "countByUserId",
83 new String[] { Long.class.getName() });
84 public static final FinderPath FINDER_PATH_FETCH_BY_G_U = new FinderPath(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
85 SocialEquityUserModelImpl.FINDER_CACHE_ENABLED,
86 FINDER_CLASS_NAME_ENTITY, "fetchByG_U",
87 new String[] { Long.class.getName(), Long.class.getName() });
88 public static final FinderPath FINDER_PATH_COUNT_BY_G_U = new FinderPath(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
89 SocialEquityUserModelImpl.FINDER_CACHE_ENABLED,
90 FINDER_CLASS_NAME_LIST, "countByG_U",
91 new String[] { Long.class.getName(), Long.class.getName() });
92 public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
93 SocialEquityUserModelImpl.FINDER_CACHE_ENABLED,
94 FINDER_CLASS_NAME_LIST, "findAll", new String[0]);
95 public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
96 SocialEquityUserModelImpl.FINDER_CACHE_ENABLED,
97 FINDER_CLASS_NAME_LIST, "countAll", new String[0]);
98
99 public void cacheResult(SocialEquityUser socialEquityUser) {
100 EntityCacheUtil.putResult(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
101 SocialEquityUserImpl.class, socialEquityUser.getPrimaryKey(),
102 socialEquityUser);
103
104 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U,
105 new Object[] {
106 new Long(socialEquityUser.getGroupId()),
107 new Long(socialEquityUser.getUserId())
108 }, socialEquityUser);
109 }
110
111 public void cacheResult(List<SocialEquityUser> socialEquityUsers) {
112 for (SocialEquityUser socialEquityUser : socialEquityUsers) {
113 if (EntityCacheUtil.getResult(
114 SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
115 SocialEquityUserImpl.class,
116 socialEquityUser.getPrimaryKey(), this) == null) {
117 cacheResult(socialEquityUser);
118 }
119 }
120 }
121
122 public void clearCache() {
123 CacheRegistry.clear(SocialEquityUserImpl.class.getName());
124 EntityCacheUtil.clearCache(SocialEquityUserImpl.class.getName());
125 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
126 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
127 }
128
129 public void clearCache(SocialEquityUser socialEquityUser) {
130 EntityCacheUtil.removeResult(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
131 SocialEquityUserImpl.class, socialEquityUser.getPrimaryKey());
132
133 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_G_U,
134 new Object[] {
135 new Long(socialEquityUser.getGroupId()),
136 new Long(socialEquityUser.getUserId())
137 });
138 }
139
140 public SocialEquityUser create(long equityUserId) {
141 SocialEquityUser socialEquityUser = new SocialEquityUserImpl();
142
143 socialEquityUser.setNew(true);
144 socialEquityUser.setPrimaryKey(equityUserId);
145
146 return socialEquityUser;
147 }
148
149 public SocialEquityUser remove(Serializable primaryKey)
150 throws NoSuchModelException, SystemException {
151 return remove(((Long)primaryKey).longValue());
152 }
153
154 public SocialEquityUser remove(long equityUserId)
155 throws NoSuchEquityUserException, SystemException {
156 Session session = null;
157
158 try {
159 session = openSession();
160
161 SocialEquityUser socialEquityUser = (SocialEquityUser)session.get(SocialEquityUserImpl.class,
162 new Long(equityUserId));
163
164 if (socialEquityUser == null) {
165 if (_log.isWarnEnabled()) {
166 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + equityUserId);
167 }
168
169 throw new NoSuchEquityUserException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
170 equityUserId);
171 }
172
173 return remove(socialEquityUser);
174 }
175 catch (NoSuchEquityUserException nsee) {
176 throw nsee;
177 }
178 catch (Exception e) {
179 throw processException(e);
180 }
181 finally {
182 closeSession(session);
183 }
184 }
185
186 public SocialEquityUser remove(SocialEquityUser socialEquityUser)
187 throws SystemException {
188 for (ModelListener<SocialEquityUser> listener : listeners) {
189 listener.onBeforeRemove(socialEquityUser);
190 }
191
192 socialEquityUser = removeImpl(socialEquityUser);
193
194 for (ModelListener<SocialEquityUser> listener : listeners) {
195 listener.onAfterRemove(socialEquityUser);
196 }
197
198 return socialEquityUser;
199 }
200
201 protected SocialEquityUser removeImpl(SocialEquityUser socialEquityUser)
202 throws SystemException {
203 socialEquityUser = toUnwrappedModel(socialEquityUser);
204
205 Session session = null;
206
207 try {
208 session = openSession();
209
210 if (socialEquityUser.isCachedModel() ||
211 BatchSessionUtil.isEnabled()) {
212 Object staleObject = session.get(SocialEquityUserImpl.class,
213 socialEquityUser.getPrimaryKeyObj());
214
215 if (staleObject != null) {
216 session.evict(staleObject);
217 }
218 }
219
220 session.delete(socialEquityUser);
221
222 session.flush();
223 }
224 catch (Exception e) {
225 throw processException(e);
226 }
227 finally {
228 closeSession(session);
229 }
230
231 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
232
233 SocialEquityUserModelImpl socialEquityUserModelImpl = (SocialEquityUserModelImpl)socialEquityUser;
234
235 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_G_U,
236 new Object[] {
237 new Long(socialEquityUserModelImpl.getOriginalGroupId()),
238 new Long(socialEquityUserModelImpl.getOriginalUserId())
239 });
240
241 EntityCacheUtil.removeResult(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
242 SocialEquityUserImpl.class, socialEquityUser.getPrimaryKey());
243
244 return socialEquityUser;
245 }
246
247 public SocialEquityUser updateImpl(
248 com.liferay.portlet.social.model.SocialEquityUser socialEquityUser,
249 boolean merge) throws SystemException {
250 socialEquityUser = toUnwrappedModel(socialEquityUser);
251
252 boolean isNew = socialEquityUser.isNew();
253
254 SocialEquityUserModelImpl socialEquityUserModelImpl = (SocialEquityUserModelImpl)socialEquityUser;
255
256 Session session = null;
257
258 try {
259 session = openSession();
260
261 BatchSessionUtil.update(session, socialEquityUser, merge);
262
263 socialEquityUser.setNew(false);
264 }
265 catch (Exception e) {
266 throw processException(e);
267 }
268 finally {
269 closeSession(session);
270 }
271
272 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
273
274 EntityCacheUtil.putResult(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
275 SocialEquityUserImpl.class, socialEquityUser.getPrimaryKey(),
276 socialEquityUser);
277
278 if (!isNew &&
279 ((socialEquityUser.getGroupId() != socialEquityUserModelImpl.getOriginalGroupId()) ||
280 (socialEquityUser.getUserId() != socialEquityUserModelImpl.getOriginalUserId()))) {
281 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_G_U,
282 new Object[] {
283 new Long(socialEquityUserModelImpl.getOriginalGroupId()),
284 new Long(socialEquityUserModelImpl.getOriginalUserId())
285 });
286 }
287
288 if (isNew ||
289 ((socialEquityUser.getGroupId() != socialEquityUserModelImpl.getOriginalGroupId()) ||
290 (socialEquityUser.getUserId() != socialEquityUserModelImpl.getOriginalUserId()))) {
291 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U,
292 new Object[] {
293 new Long(socialEquityUser.getGroupId()),
294 new Long(socialEquityUser.getUserId())
295 }, socialEquityUser);
296 }
297
298 return socialEquityUser;
299 }
300
301 protected SocialEquityUser toUnwrappedModel(
302 SocialEquityUser socialEquityUser) {
303 if (socialEquityUser instanceof SocialEquityUserImpl) {
304 return socialEquityUser;
305 }
306
307 SocialEquityUserImpl socialEquityUserImpl = new SocialEquityUserImpl();
308
309 socialEquityUserImpl.setNew(socialEquityUser.isNew());
310 socialEquityUserImpl.setPrimaryKey(socialEquityUser.getPrimaryKey());
311
312 socialEquityUserImpl.setEquityUserId(socialEquityUser.getEquityUserId());
313 socialEquityUserImpl.setGroupId(socialEquityUser.getGroupId());
314 socialEquityUserImpl.setCompanyId(socialEquityUser.getCompanyId());
315 socialEquityUserImpl.setUserId(socialEquityUser.getUserId());
316 socialEquityUserImpl.setContributionEquity(socialEquityUser.getContributionEquity());
317 socialEquityUserImpl.setParticipationK(socialEquityUser.getParticipationK());
318 socialEquityUserImpl.setParticipationB(socialEquityUser.getParticipationB());
319 socialEquityUserImpl.setParticipationEquity(socialEquityUser.getParticipationEquity());
320 socialEquityUserImpl.setPersonalEquity(socialEquityUser.getPersonalEquity());
321
322 return socialEquityUserImpl;
323 }
324
325 public SocialEquityUser findByPrimaryKey(Serializable primaryKey)
326 throws NoSuchModelException, SystemException {
327 return findByPrimaryKey(((Long)primaryKey).longValue());
328 }
329
330 public SocialEquityUser findByPrimaryKey(long equityUserId)
331 throws NoSuchEquityUserException, SystemException {
332 SocialEquityUser socialEquityUser = fetchByPrimaryKey(equityUserId);
333
334 if (socialEquityUser == null) {
335 if (_log.isWarnEnabled()) {
336 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + equityUserId);
337 }
338
339 throw new NoSuchEquityUserException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
340 equityUserId);
341 }
342
343 return socialEquityUser;
344 }
345
346 public SocialEquityUser fetchByPrimaryKey(Serializable primaryKey)
347 throws SystemException {
348 return fetchByPrimaryKey(((Long)primaryKey).longValue());
349 }
350
351 public SocialEquityUser fetchByPrimaryKey(long equityUserId)
352 throws SystemException {
353 SocialEquityUser socialEquityUser = (SocialEquityUser)EntityCacheUtil.getResult(SocialEquityUserModelImpl.ENTITY_CACHE_ENABLED,
354 SocialEquityUserImpl.class, equityUserId, this);
355
356 if (socialEquityUser == null) {
357 Session session = null;
358
359 try {
360 session = openSession();
361
362 socialEquityUser = (SocialEquityUser)session.get(SocialEquityUserImpl.class,
363 new Long(equityUserId));
364 }
365 catch (Exception e) {
366 throw processException(e);
367 }
368 finally {
369 if (socialEquityUser != null) {
370 cacheResult(socialEquityUser);
371 }
372
373 closeSession(session);
374 }
375 }
376
377 return socialEquityUser;
378 }
379
380 public List<SocialEquityUser> findByUserId(long userId)
381 throws SystemException {
382 return findByUserId(userId, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
383 }
384
385 public List<SocialEquityUser> findByUserId(long userId, int start, int end)
386 throws SystemException {
387 return findByUserId(userId, start, end, null);
388 }
389
390 public List<SocialEquityUser> findByUserId(long userId, int start, int end,
391 OrderByComparator orderByComparator) throws SystemException {
392 Object[] finderArgs = new Object[] {
393 new Long(userId),
394
395 String.valueOf(start), String.valueOf(end),
396 String.valueOf(orderByComparator)
397 };
398
399 List<SocialEquityUser> list = (List<SocialEquityUser>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_USERID,
400 finderArgs, this);
401
402 if (list == null) {
403 Session session = null;
404
405 try {
406 session = openSession();
407
408 StringBundler query = null;
409
410 if (orderByComparator != null) {
411 query = new StringBundler(3 +
412 (orderByComparator.getOrderByFields().length * 3));
413 }
414 else {
415 query = new StringBundler(2);
416 }
417
418 query.append(_SQL_SELECT_SOCIALEQUITYUSER_WHERE);
419
420 query.append(_FINDER_COLUMN_USERID_USERID_2);
421
422 if (orderByComparator != null) {
423 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
424 orderByComparator);
425 }
426
427 String sql = query.toString();
428
429 Query q = session.createQuery(sql);
430
431 QueryPos qPos = QueryPos.getInstance(q);
432
433 qPos.add(userId);
434
435 list = (List<SocialEquityUser>)QueryUtil.list(q, getDialect(),
436 start, end);
437 }
438 catch (Exception e) {
439 throw processException(e);
440 }
441 finally {
442 if (list == null) {
443 list = new ArrayList<SocialEquityUser>();
444 }
445
446 cacheResult(list);
447
448 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_USERID,
449 finderArgs, list);
450
451 closeSession(session);
452 }
453 }
454
455 return list;
456 }
457
458 public SocialEquityUser findByUserId_First(long userId,
459 OrderByComparator orderByComparator)
460 throws NoSuchEquityUserException, SystemException {
461 List<SocialEquityUser> list = findByUserId(userId, 0, 1,
462 orderByComparator);
463
464 if (list.isEmpty()) {
465 StringBundler msg = new StringBundler(4);
466
467 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
468
469 msg.append("userId=");
470 msg.append(userId);
471
472 msg.append(StringPool.CLOSE_CURLY_BRACE);
473
474 throw new NoSuchEquityUserException(msg.toString());
475 }
476 else {
477 return list.get(0);
478 }
479 }
480
481 public SocialEquityUser findByUserId_Last(long userId,
482 OrderByComparator orderByComparator)
483 throws NoSuchEquityUserException, SystemException {
484 int count = countByUserId(userId);
485
486 List<SocialEquityUser> list = findByUserId(userId, count - 1, count,
487 orderByComparator);
488
489 if (list.isEmpty()) {
490 StringBundler msg = new StringBundler(4);
491
492 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
493
494 msg.append("userId=");
495 msg.append(userId);
496
497 msg.append(StringPool.CLOSE_CURLY_BRACE);
498
499 throw new NoSuchEquityUserException(msg.toString());
500 }
501 else {
502 return list.get(0);
503 }
504 }
505
506 public SocialEquityUser[] findByUserId_PrevAndNext(long equityUserId,
507 long userId, OrderByComparator orderByComparator)
508 throws NoSuchEquityUserException, SystemException {
509 SocialEquityUser socialEquityUser = findByPrimaryKey(equityUserId);
510
511 Session session = null;
512
513 try {
514 session = openSession();
515
516 SocialEquityUser[] array = new SocialEquityUserImpl[3];
517
518 array[0] = getByUserId_PrevAndNext(session, socialEquityUser,
519 userId, orderByComparator, true);
520
521 array[1] = socialEquityUser;
522
523 array[2] = getByUserId_PrevAndNext(session, socialEquityUser,
524 userId, orderByComparator, false);
525
526 return array;
527 }
528 catch (Exception e) {
529 throw processException(e);
530 }
531 finally {
532 closeSession(session);
533 }
534 }
535
536 protected SocialEquityUser getByUserId_PrevAndNext(Session session,
537 SocialEquityUser socialEquityUser, long userId,
538 OrderByComparator orderByComparator, boolean previous) {
539 StringBundler query = null;
540
541 if (orderByComparator != null) {
542 query = new StringBundler(6 +
543 (orderByComparator.getOrderByFields().length * 6));
544 }
545 else {
546 query = new StringBundler(3);
547 }
548
549 query.append(_SQL_SELECT_SOCIALEQUITYUSER_WHERE);
550
551 query.append(_FINDER_COLUMN_USERID_USERID_2);
552
553 if (orderByComparator != null) {
554 String[] orderByFields = orderByComparator.getOrderByFields();
555
556 if (orderByFields.length > 0) {
557 query.append(WHERE_AND);
558 }
559
560 for (int i = 0; i < orderByFields.length; i++) {
561 query.append(_ORDER_BY_ENTITY_ALIAS);
562 query.append(orderByFields[i]);
563
564 if ((i + 1) < orderByFields.length) {
565 if (orderByComparator.isAscending() ^ previous) {
566 query.append(WHERE_GREATER_THAN_HAS_NEXT);
567 }
568 else {
569 query.append(WHERE_LESSER_THAN_HAS_NEXT);
570 }
571 }
572 else {
573 if (orderByComparator.isAscending() ^ previous) {
574 query.append(WHERE_GREATER_THAN);
575 }
576 else {
577 query.append(WHERE_LESSER_THAN);
578 }
579 }
580 }
581
582 query.append(ORDER_BY_CLAUSE);
583
584 for (int i = 0; i < orderByFields.length; i++) {
585 query.append(_ORDER_BY_ENTITY_ALIAS);
586 query.append(orderByFields[i]);
587
588 if ((i + 1) < orderByFields.length) {
589 if (orderByComparator.isAscending() ^ previous) {
590 query.append(ORDER_BY_ASC_HAS_NEXT);
591 }
592 else {
593 query.append(ORDER_BY_DESC_HAS_NEXT);
594 }
595 }
596 else {
597 if (orderByComparator.isAscending() ^ previous) {
598 query.append(ORDER_BY_ASC);
599 }
600 else {
601 query.append(ORDER_BY_DESC);
602 }
603 }
604 }
605 }
606
607 String sql = query.toString();
608
609 Query q = session.createQuery(sql);
610
611 q.setFirstResult(0);
612 q.setMaxResults(2);
613
614 QueryPos qPos = QueryPos.getInstance(q);
615
616 qPos.add(userId);
617
618 if (orderByComparator != null) {
619 Object[] values = orderByComparator.getOrderByValues(socialEquityUser);
620
621 for (Object value : values) {
622 qPos.add(value);
623 }
624 }
625
626 List<SocialEquityUser> list = q.list();
627
628 if (list.size() == 2) {
629 return list.get(1);
630 }
631 else {
632 return null;
633 }
634 }
635
636 public SocialEquityUser findByG_U(long groupId, long userId)
637 throws NoSuchEquityUserException, SystemException {
638 SocialEquityUser socialEquityUser = fetchByG_U(groupId, userId);
639
640 if (socialEquityUser == null) {
641 StringBundler msg = new StringBundler(6);
642
643 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
644
645 msg.append("groupId=");
646 msg.append(groupId);
647
648 msg.append(", userId=");
649 msg.append(userId);
650
651 msg.append(StringPool.CLOSE_CURLY_BRACE);
652
653 if (_log.isWarnEnabled()) {
654 _log.warn(msg.toString());
655 }
656
657 throw new NoSuchEquityUserException(msg.toString());
658 }
659
660 return socialEquityUser;
661 }
662
663 public SocialEquityUser fetchByG_U(long groupId, long userId)
664 throws SystemException {
665 return fetchByG_U(groupId, userId, true);
666 }
667
668 public SocialEquityUser fetchByG_U(long groupId, long userId,
669 boolean retrieveFromCache) throws SystemException {
670 Object[] finderArgs = new Object[] { new Long(groupId), new Long(userId) };
671
672 Object result = null;
673
674 if (retrieveFromCache) {
675 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_G_U,
676 finderArgs, this);
677 }
678
679 if (result == null) {
680 Session session = null;
681
682 try {
683 session = openSession();
684
685 StringBundler query = new StringBundler(3);
686
687 query.append(_SQL_SELECT_SOCIALEQUITYUSER_WHERE);
688
689 query.append(_FINDER_COLUMN_G_U_GROUPID_2);
690
691 query.append(_FINDER_COLUMN_G_U_USERID_2);
692
693 String sql = query.toString();
694
695 Query q = session.createQuery(sql);
696
697 QueryPos qPos = QueryPos.getInstance(q);
698
699 qPos.add(groupId);
700
701 qPos.add(userId);
702
703 List<SocialEquityUser> list = q.list();
704
705 result = list;
706
707 SocialEquityUser socialEquityUser = null;
708
709 if (list.isEmpty()) {
710 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U,
711 finderArgs, list);
712 }
713 else {
714 socialEquityUser = list.get(0);
715
716 cacheResult(socialEquityUser);
717
718 if ((socialEquityUser.getGroupId() != groupId) ||
719 (socialEquityUser.getUserId() != userId)) {
720 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U,
721 finderArgs, socialEquityUser);
722 }
723 }
724
725 return socialEquityUser;
726 }
727 catch (Exception e) {
728 throw processException(e);
729 }
730 finally {
731 if (result == null) {
732 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_G_U,
733 finderArgs, new ArrayList<SocialEquityUser>());
734 }
735
736 closeSession(session);
737 }
738 }
739 else {
740 if (result instanceof List<?>) {
741 return null;
742 }
743 else {
744 return (SocialEquityUser)result;
745 }
746 }
747 }
748
749 public List<SocialEquityUser> findAll() throws SystemException {
750 return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
751 }
752
753 public List<SocialEquityUser> findAll(int start, int end)
754 throws SystemException {
755 return findAll(start, end, null);
756 }
757
758 public List<SocialEquityUser> findAll(int start, int end,
759 OrderByComparator orderByComparator) throws SystemException {
760 Object[] finderArgs = new Object[] {
761 String.valueOf(start), String.valueOf(end),
762 String.valueOf(orderByComparator)
763 };
764
765 List<SocialEquityUser> list = (List<SocialEquityUser>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
766 finderArgs, this);
767
768 if (list == null) {
769 Session session = null;
770
771 try {
772 session = openSession();
773
774 StringBundler query = null;
775 String sql = null;
776
777 if (orderByComparator != null) {
778 query = new StringBundler(2 +
779 (orderByComparator.getOrderByFields().length * 3));
780
781 query.append(_SQL_SELECT_SOCIALEQUITYUSER);
782
783 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
784 orderByComparator);
785
786 sql = query.toString();
787 }
788
789 sql = _SQL_SELECT_SOCIALEQUITYUSER;
790
791 Query q = session.createQuery(sql);
792
793 if (orderByComparator == null) {
794 list = (List<SocialEquityUser>)QueryUtil.list(q,
795 getDialect(), start, end, false);
796
797 Collections.sort(list);
798 }
799 else {
800 list = (List<SocialEquityUser>)QueryUtil.list(q,
801 getDialect(), start, end);
802 }
803 }
804 catch (Exception e) {
805 throw processException(e);
806 }
807 finally {
808 if (list == null) {
809 list = new ArrayList<SocialEquityUser>();
810 }
811
812 cacheResult(list);
813
814 FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
815
816 closeSession(session);
817 }
818 }
819
820 return list;
821 }
822
823 public void removeByUserId(long userId) throws SystemException {
824 for (SocialEquityUser socialEquityUser : findByUserId(userId)) {
825 remove(socialEquityUser);
826 }
827 }
828
829 public void removeByG_U(long groupId, long userId)
830 throws NoSuchEquityUserException, SystemException {
831 SocialEquityUser socialEquityUser = findByG_U(groupId, userId);
832
833 remove(socialEquityUser);
834 }
835
836 public void removeAll() throws SystemException {
837 for (SocialEquityUser socialEquityUser : findAll()) {
838 remove(socialEquityUser);
839 }
840 }
841
842 public int countByUserId(long userId) throws SystemException {
843 Object[] finderArgs = new Object[] { new Long(userId) };
844
845 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_USERID,
846 finderArgs, this);
847
848 if (count == null) {
849 Session session = null;
850
851 try {
852 session = openSession();
853
854 StringBundler query = new StringBundler(2);
855
856 query.append(_SQL_COUNT_SOCIALEQUITYUSER_WHERE);
857
858 query.append(_FINDER_COLUMN_USERID_USERID_2);
859
860 String sql = query.toString();
861
862 Query q = session.createQuery(sql);
863
864 QueryPos qPos = QueryPos.getInstance(q);
865
866 qPos.add(userId);
867
868 count = (Long)q.uniqueResult();
869 }
870 catch (Exception e) {
871 throw processException(e);
872 }
873 finally {
874 if (count == null) {
875 count = Long.valueOf(0);
876 }
877
878 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_USERID,
879 finderArgs, count);
880
881 closeSession(session);
882 }
883 }
884
885 return count.intValue();
886 }
887
888 public int countByG_U(long groupId, long userId) throws SystemException {
889 Object[] finderArgs = new Object[] { new Long(groupId), new Long(userId) };
890
891 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_G_U,
892 finderArgs, this);
893
894 if (count == null) {
895 Session session = null;
896
897 try {
898 session = openSession();
899
900 StringBundler query = new StringBundler(3);
901
902 query.append(_SQL_COUNT_SOCIALEQUITYUSER_WHERE);
903
904 query.append(_FINDER_COLUMN_G_U_GROUPID_2);
905
906 query.append(_FINDER_COLUMN_G_U_USERID_2);
907
908 String sql = query.toString();
909
910 Query q = session.createQuery(sql);
911
912 QueryPos qPos = QueryPos.getInstance(q);
913
914 qPos.add(groupId);
915
916 qPos.add(userId);
917
918 count = (Long)q.uniqueResult();
919 }
920 catch (Exception e) {
921 throw processException(e);
922 }
923 finally {
924 if (count == null) {
925 count = Long.valueOf(0);
926 }
927
928 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_G_U, finderArgs,
929 count);
930
931 closeSession(session);
932 }
933 }
934
935 return count.intValue();
936 }
937
938 public int countAll() throws SystemException {
939 Object[] finderArgs = new Object[0];
940
941 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
942 finderArgs, this);
943
944 if (count == null) {
945 Session session = null;
946
947 try {
948 session = openSession();
949
950 Query q = session.createQuery(_SQL_COUNT_SOCIALEQUITYUSER);
951
952 count = (Long)q.uniqueResult();
953 }
954 catch (Exception e) {
955 throw processException(e);
956 }
957 finally {
958 if (count == null) {
959 count = Long.valueOf(0);
960 }
961
962 FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
963 count);
964
965 closeSession(session);
966 }
967 }
968
969 return count.intValue();
970 }
971
972 public void afterPropertiesSet() {
973 String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
974 com.liferay.portal.util.PropsUtil.get(
975 "value.object.listener.com.liferay.portlet.social.model.SocialEquityUser")));
976
977 if (listenerClassNames.length > 0) {
978 try {
979 List<ModelListener<SocialEquityUser>> listenersList = new ArrayList<ModelListener<SocialEquityUser>>();
980
981 for (String listenerClassName : listenerClassNames) {
982 listenersList.add((ModelListener<SocialEquityUser>)InstanceFactory.newInstance(
983 listenerClassName));
984 }
985
986 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
987 }
988 catch (Exception e) {
989 _log.error(e);
990 }
991 }
992 }
993
994 @BeanReference(type = SocialActivityPersistence.class)
995 protected SocialActivityPersistence socialActivityPersistence;
996 @BeanReference(type = SocialEquityAssetEntryPersistence.class)
997 protected SocialEquityAssetEntryPersistence socialEquityAssetEntryPersistence;
998 @BeanReference(type = SocialEquityHistoryPersistence.class)
999 protected SocialEquityHistoryPersistence socialEquityHistoryPersistence;
1000 @BeanReference(type = SocialEquityLogPersistence.class)
1001 protected SocialEquityLogPersistence socialEquityLogPersistence;
1002 @BeanReference(type = SocialEquitySettingPersistence.class)
1003 protected SocialEquitySettingPersistence socialEquitySettingPersistence;
1004 @BeanReference(type = SocialEquityUserPersistence.class)
1005 protected SocialEquityUserPersistence socialEquityUserPersistence;
1006 @BeanReference(type = SocialRelationPersistence.class)
1007 protected SocialRelationPersistence socialRelationPersistence;
1008 @BeanReference(type = SocialRequestPersistence.class)
1009 protected SocialRequestPersistence socialRequestPersistence;
1010 @BeanReference(type = ResourcePersistence.class)
1011 protected ResourcePersistence resourcePersistence;
1012 @BeanReference(type = UserPersistence.class)
1013 protected UserPersistence userPersistence;
1014 private static final String _SQL_SELECT_SOCIALEQUITYUSER = "SELECT socialEquityUser FROM SocialEquityUser socialEquityUser";
1015 private static final String _SQL_SELECT_SOCIALEQUITYUSER_WHERE = "SELECT socialEquityUser FROM SocialEquityUser socialEquityUser WHERE ";
1016 private static final String _SQL_COUNT_SOCIALEQUITYUSER = "SELECT COUNT(socialEquityUser) FROM SocialEquityUser socialEquityUser";
1017 private static final String _SQL_COUNT_SOCIALEQUITYUSER_WHERE = "SELECT COUNT(socialEquityUser) FROM SocialEquityUser socialEquityUser WHERE ";
1018 private static final String _FINDER_COLUMN_USERID_USERID_2 = "socialEquityUser.userId = ?";
1019 private static final String _FINDER_COLUMN_G_U_GROUPID_2 = "socialEquityUser.groupId = ? AND ";
1020 private static final String _FINDER_COLUMN_G_U_USERID_2 = "socialEquityUser.userId = ?";
1021 private static final String _ORDER_BY_ENTITY_ALIAS = "socialEquityUser.";
1022 private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No SocialEquityUser exists with the primary key ";
1023 private static final String _NO_SUCH_ENTITY_WITH_KEY = "No SocialEquityUser exists with the key {";
1024 private static Log _log = LogFactoryUtil.getLog(SocialEquityUserPersistenceImpl.class);
1025}