1
22
23 package com.liferay.portal.service.persistence;
24
25 import com.liferay.portal.NoSuchResourcePermissionException;
26 import com.liferay.portal.SystemException;
27 import com.liferay.portal.kernel.annotation.BeanReference;
28 import com.liferay.portal.kernel.cache.CacheRegistry;
29 import com.liferay.portal.kernel.dao.orm.DynamicQuery;
30 import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
31 import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
32 import com.liferay.portal.kernel.dao.orm.FinderPath;
33 import com.liferay.portal.kernel.dao.orm.Query;
34 import com.liferay.portal.kernel.dao.orm.QueryPos;
35 import com.liferay.portal.kernel.dao.orm.QueryUtil;
36 import com.liferay.portal.kernel.dao.orm.Session;
37 import com.liferay.portal.kernel.log.Log;
38 import com.liferay.portal.kernel.log.LogFactoryUtil;
39 import com.liferay.portal.kernel.util.GetterUtil;
40 import com.liferay.portal.kernel.util.OrderByComparator;
41 import com.liferay.portal.kernel.util.StringPool;
42 import com.liferay.portal.kernel.util.StringUtil;
43 import com.liferay.portal.kernel.util.Validator;
44 import com.liferay.portal.model.ModelListener;
45 import com.liferay.portal.model.ResourcePermission;
46 import com.liferay.portal.model.impl.ResourcePermissionImpl;
47 import com.liferay.portal.model.impl.ResourcePermissionModelImpl;
48 import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
49
50 import java.util.ArrayList;
51 import java.util.Collections;
52 import java.util.List;
53
54
60 public class ResourcePermissionPersistenceImpl extends BasePersistenceImpl
61 implements ResourcePermissionPersistence {
62 public static final String FINDER_CLASS_NAME_ENTITY = ResourcePermissionImpl.class.getName();
63 public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
64 ".List";
65 public static final FinderPath FINDER_PATH_FIND_BY_ROLEID = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
66 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
67 FINDER_CLASS_NAME_LIST, "findByRoleId",
68 new String[] { Long.class.getName() });
69 public static final FinderPath FINDER_PATH_FIND_BY_OBC_ROLEID = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
70 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
71 FINDER_CLASS_NAME_LIST, "findByRoleId",
72 new String[] {
73 Long.class.getName(),
74
75 "java.lang.Integer", "java.lang.Integer",
76 "com.liferay.portal.kernel.util.OrderByComparator"
77 });
78 public static final FinderPath FINDER_PATH_COUNT_BY_ROLEID = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
79 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
80 FINDER_CLASS_NAME_LIST, "countByRoleId",
81 new String[] { Long.class.getName() });
82 public static final FinderPath FINDER_PATH_FIND_BY_C_N_S = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
83 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
84 FINDER_CLASS_NAME_LIST, "findByC_N_S",
85 new String[] {
86 Long.class.getName(), String.class.getName(),
87 Integer.class.getName()
88 });
89 public static final FinderPath FINDER_PATH_FIND_BY_OBC_C_N_S = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
90 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
91 FINDER_CLASS_NAME_LIST, "findByC_N_S",
92 new String[] {
93 Long.class.getName(), String.class.getName(),
94 Integer.class.getName(),
95
96 "java.lang.Integer", "java.lang.Integer",
97 "com.liferay.portal.kernel.util.OrderByComparator"
98 });
99 public static final FinderPath FINDER_PATH_COUNT_BY_C_N_S = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
100 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
101 FINDER_CLASS_NAME_LIST, "countByC_N_S",
102 new String[] {
103 Long.class.getName(), String.class.getName(),
104 Integer.class.getName()
105 });
106 public static final FinderPath FINDER_PATH_FIND_BY_C_N_S_P = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
107 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
108 FINDER_CLASS_NAME_LIST, "findByC_N_S_P",
109 new String[] {
110 Long.class.getName(), String.class.getName(),
111 Integer.class.getName(), String.class.getName()
112 });
113 public static final FinderPath FINDER_PATH_FIND_BY_OBC_C_N_S_P = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
114 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
115 FINDER_CLASS_NAME_LIST, "findByC_N_S_P",
116 new String[] {
117 Long.class.getName(), String.class.getName(),
118 Integer.class.getName(), String.class.getName(),
119
120 "java.lang.Integer", "java.lang.Integer",
121 "com.liferay.portal.kernel.util.OrderByComparator"
122 });
123 public static final FinderPath FINDER_PATH_COUNT_BY_C_N_S_P = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
124 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
125 FINDER_CLASS_NAME_LIST, "countByC_N_S_P",
126 new String[] {
127 Long.class.getName(), String.class.getName(),
128 Integer.class.getName(), String.class.getName()
129 });
130 public static final FinderPath FINDER_PATH_FETCH_BY_C_N_S_P_R = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
131 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
132 FINDER_CLASS_NAME_ENTITY, "fetchByC_N_S_P_R",
133 new String[] {
134 Long.class.getName(), String.class.getName(),
135 Integer.class.getName(), String.class.getName(),
136 Long.class.getName()
137 });
138 public static final FinderPath FINDER_PATH_COUNT_BY_C_N_S_P_R = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
139 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
140 FINDER_CLASS_NAME_LIST, "countByC_N_S_P_R",
141 new String[] {
142 Long.class.getName(), String.class.getName(),
143 Integer.class.getName(), String.class.getName(),
144 Long.class.getName()
145 });
146 public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
147 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
148 FINDER_CLASS_NAME_LIST, "findAll", new String[0]);
149 public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
150 ResourcePermissionModelImpl.FINDER_CACHE_ENABLED,
151 FINDER_CLASS_NAME_LIST, "countAll", new String[0]);
152
153 public void cacheResult(ResourcePermission resourcePermission) {
154 EntityCacheUtil.putResult(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
155 ResourcePermissionImpl.class, resourcePermission.getPrimaryKey(),
156 resourcePermission);
157
158 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_C_N_S_P_R,
159 new Object[] {
160 new Long(resourcePermission.getCompanyId()),
161
162 resourcePermission.getName(),
163 new Integer(resourcePermission.getScope()),
164
165 resourcePermission.getPrimKey(),
166 new Long(resourcePermission.getRoleId())
167 }, resourcePermission);
168 }
169
170 public void cacheResult(List<ResourcePermission> resourcePermissions) {
171 for (ResourcePermission resourcePermission : resourcePermissions) {
172 if (EntityCacheUtil.getResult(
173 ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
174 ResourcePermissionImpl.class,
175 resourcePermission.getPrimaryKey(), this) == null) {
176 cacheResult(resourcePermission);
177 }
178 }
179 }
180
181 public void clearCache() {
182 CacheRegistry.clear(ResourcePermissionImpl.class.getName());
183 EntityCacheUtil.clearCache(ResourcePermissionImpl.class.getName());
184 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
185 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
186 }
187
188 public ResourcePermission create(long resourcePermissionId) {
189 ResourcePermission resourcePermission = new ResourcePermissionImpl();
190
191 resourcePermission.setNew(true);
192 resourcePermission.setPrimaryKey(resourcePermissionId);
193
194 return resourcePermission;
195 }
196
197 public ResourcePermission remove(long resourcePermissionId)
198 throws NoSuchResourcePermissionException, SystemException {
199 Session session = null;
200
201 try {
202 session = openSession();
203
204 ResourcePermission resourcePermission = (ResourcePermission)session.get(ResourcePermissionImpl.class,
205 new Long(resourcePermissionId));
206
207 if (resourcePermission == null) {
208 if (_log.isWarnEnabled()) {
209 _log.warn(
210 "No ResourcePermission exists with the primary key " +
211 resourcePermissionId);
212 }
213
214 throw new NoSuchResourcePermissionException(
215 "No ResourcePermission exists with the primary key " +
216 resourcePermissionId);
217 }
218
219 return remove(resourcePermission);
220 }
221 catch (NoSuchResourcePermissionException nsee) {
222 throw nsee;
223 }
224 catch (Exception e) {
225 throw processException(e);
226 }
227 finally {
228 closeSession(session);
229 }
230 }
231
232 public ResourcePermission remove(ResourcePermission resourcePermission)
233 throws SystemException {
234 for (ModelListener<ResourcePermission> listener : listeners) {
235 listener.onBeforeRemove(resourcePermission);
236 }
237
238 resourcePermission = removeImpl(resourcePermission);
239
240 for (ModelListener<ResourcePermission> listener : listeners) {
241 listener.onAfterRemove(resourcePermission);
242 }
243
244 return resourcePermission;
245 }
246
247 protected ResourcePermission removeImpl(
248 ResourcePermission resourcePermission) throws SystemException {
249 Session session = null;
250
251 try {
252 session = openSession();
253
254 if (resourcePermission.isCachedModel() ||
255 BatchSessionUtil.isEnabled()) {
256 Object staleObject = session.get(ResourcePermissionImpl.class,
257 resourcePermission.getPrimaryKeyObj());
258
259 if (staleObject != null) {
260 session.evict(staleObject);
261 }
262 }
263
264 session.delete(resourcePermission);
265
266 session.flush();
267 }
268 catch (Exception e) {
269 throw processException(e);
270 }
271 finally {
272 closeSession(session);
273 }
274
275 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
276
277 ResourcePermissionModelImpl resourcePermissionModelImpl = (ResourcePermissionModelImpl)resourcePermission;
278
279 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_C_N_S_P_R,
280 new Object[] {
281 new Long(resourcePermissionModelImpl.getOriginalCompanyId()),
282
283 resourcePermissionModelImpl.getOriginalName(),
284 new Integer(resourcePermissionModelImpl.getOriginalScope()),
285
286 resourcePermissionModelImpl.getOriginalPrimKey(),
287 new Long(resourcePermissionModelImpl.getOriginalRoleId())
288 });
289
290 EntityCacheUtil.removeResult(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
291 ResourcePermissionImpl.class, resourcePermission.getPrimaryKey());
292
293 return resourcePermission;
294 }
295
296
299 public ResourcePermission update(ResourcePermission resourcePermission)
300 throws SystemException {
301 if (_log.isWarnEnabled()) {
302 _log.warn(
303 "Using the deprecated update(ResourcePermission resourcePermission) method. Use update(ResourcePermission resourcePermission, boolean merge) instead.");
304 }
305
306 return update(resourcePermission, false);
307 }
308
309
322 public ResourcePermission update(ResourcePermission resourcePermission,
323 boolean merge) throws SystemException {
324 boolean isNew = resourcePermission.isNew();
325
326 for (ModelListener<ResourcePermission> listener : listeners) {
327 if (isNew) {
328 listener.onBeforeCreate(resourcePermission);
329 }
330 else {
331 listener.onBeforeUpdate(resourcePermission);
332 }
333 }
334
335 resourcePermission = updateImpl(resourcePermission, merge);
336
337 for (ModelListener<ResourcePermission> listener : listeners) {
338 if (isNew) {
339 listener.onAfterCreate(resourcePermission);
340 }
341 else {
342 listener.onAfterUpdate(resourcePermission);
343 }
344 }
345
346 return resourcePermission;
347 }
348
349 public ResourcePermission updateImpl(
350 com.liferay.portal.model.ResourcePermission resourcePermission,
351 boolean merge) throws SystemException {
352 boolean isNew = resourcePermission.isNew();
353
354 ResourcePermissionModelImpl resourcePermissionModelImpl = (ResourcePermissionModelImpl)resourcePermission;
355
356 Session session = null;
357
358 try {
359 session = openSession();
360
361 BatchSessionUtil.update(session, resourcePermission, merge);
362
363 resourcePermission.setNew(false);
364 }
365 catch (Exception e) {
366 throw processException(e);
367 }
368 finally {
369 closeSession(session);
370 }
371
372 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
373
374 EntityCacheUtil.putResult(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
375 ResourcePermissionImpl.class, resourcePermission.getPrimaryKey(),
376 resourcePermission);
377
378 if (!isNew &&
379 ((resourcePermission.getCompanyId() != resourcePermissionModelImpl.getOriginalCompanyId()) ||
380 !Validator.equals(resourcePermission.getName(),
381 resourcePermissionModelImpl.getOriginalName()) ||
382 (resourcePermission.getScope() != resourcePermissionModelImpl.getOriginalScope()) ||
383 !Validator.equals(resourcePermission.getPrimKey(),
384 resourcePermissionModelImpl.getOriginalPrimKey()) ||
385 (resourcePermission.getRoleId() != resourcePermissionModelImpl.getOriginalRoleId()))) {
386 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_C_N_S_P_R,
387 new Object[] {
388 new Long(resourcePermissionModelImpl.getOriginalCompanyId()),
389
390 resourcePermissionModelImpl.getOriginalName(),
391 new Integer(resourcePermissionModelImpl.getOriginalScope()),
392
393 resourcePermissionModelImpl.getOriginalPrimKey(),
394 new Long(resourcePermissionModelImpl.getOriginalRoleId())
395 });
396 }
397
398 if (isNew ||
399 ((resourcePermission.getCompanyId() != resourcePermissionModelImpl.getOriginalCompanyId()) ||
400 !Validator.equals(resourcePermission.getName(),
401 resourcePermissionModelImpl.getOriginalName()) ||
402 (resourcePermission.getScope() != resourcePermissionModelImpl.getOriginalScope()) ||
403 !Validator.equals(resourcePermission.getPrimKey(),
404 resourcePermissionModelImpl.getOriginalPrimKey()) ||
405 (resourcePermission.getRoleId() != resourcePermissionModelImpl.getOriginalRoleId()))) {
406 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_C_N_S_P_R,
407 new Object[] {
408 new Long(resourcePermission.getCompanyId()),
409
410 resourcePermission.getName(),
411 new Integer(resourcePermission.getScope()),
412
413 resourcePermission.getPrimKey(),
414 new Long(resourcePermission.getRoleId())
415 }, resourcePermission);
416 }
417
418 return resourcePermission;
419 }
420
421 public ResourcePermission findByPrimaryKey(long resourcePermissionId)
422 throws NoSuchResourcePermissionException, SystemException {
423 ResourcePermission resourcePermission = fetchByPrimaryKey(resourcePermissionId);
424
425 if (resourcePermission == null) {
426 if (_log.isWarnEnabled()) {
427 _log.warn("No ResourcePermission exists with the primary key " +
428 resourcePermissionId);
429 }
430
431 throw new NoSuchResourcePermissionException(
432 "No ResourcePermission exists with the primary key " +
433 resourcePermissionId);
434 }
435
436 return resourcePermission;
437 }
438
439 public ResourcePermission fetchByPrimaryKey(long resourcePermissionId)
440 throws SystemException {
441 ResourcePermission resourcePermission = (ResourcePermission)EntityCacheUtil.getResult(ResourcePermissionModelImpl.ENTITY_CACHE_ENABLED,
442 ResourcePermissionImpl.class, resourcePermissionId, this);
443
444 if (resourcePermission == null) {
445 Session session = null;
446
447 try {
448 session = openSession();
449
450 resourcePermission = (ResourcePermission)session.get(ResourcePermissionImpl.class,
451 new Long(resourcePermissionId));
452 }
453 catch (Exception e) {
454 throw processException(e);
455 }
456 finally {
457 if (resourcePermission != null) {
458 cacheResult(resourcePermission);
459 }
460
461 closeSession(session);
462 }
463 }
464
465 return resourcePermission;
466 }
467
468 public List<ResourcePermission> findByRoleId(long roleId)
469 throws SystemException {
470 Object[] finderArgs = new Object[] { new Long(roleId) };
471
472 List<ResourcePermission> list = (List<ResourcePermission>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_ROLEID,
473 finderArgs, this);
474
475 if (list == null) {
476 Session session = null;
477
478 try {
479 session = openSession();
480
481 StringBuilder query = new StringBuilder();
482
483 query.append(
484 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
485
486 query.append("resourcePermission.roleId = ?");
487
488 query.append(" ");
489
490 Query q = session.createQuery(query.toString());
491
492 QueryPos qPos = QueryPos.getInstance(q);
493
494 qPos.add(roleId);
495
496 list = q.list();
497 }
498 catch (Exception e) {
499 throw processException(e);
500 }
501 finally {
502 if (list == null) {
503 list = new ArrayList<ResourcePermission>();
504 }
505
506 cacheResult(list);
507
508 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_ROLEID,
509 finderArgs, list);
510
511 closeSession(session);
512 }
513 }
514
515 return list;
516 }
517
518 public List<ResourcePermission> findByRoleId(long roleId, int start, int end)
519 throws SystemException {
520 return findByRoleId(roleId, start, end, null);
521 }
522
523 public List<ResourcePermission> findByRoleId(long roleId, int start,
524 int end, OrderByComparator obc) throws SystemException {
525 Object[] finderArgs = new Object[] {
526 new Long(roleId),
527
528 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
529 };
530
531 List<ResourcePermission> list = (List<ResourcePermission>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_ROLEID,
532 finderArgs, this);
533
534 if (list == null) {
535 Session session = null;
536
537 try {
538 session = openSession();
539
540 StringBuilder query = new StringBuilder();
541
542 query.append(
543 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
544
545 query.append("resourcePermission.roleId = ?");
546
547 query.append(" ");
548
549 if (obc != null) {
550 query.append("ORDER BY ");
551
552 String[] orderByFields = obc.getOrderByFields();
553
554 for (int i = 0; i < orderByFields.length; i++) {
555 query.append("resourcePermission.");
556 query.append(orderByFields[i]);
557
558 if (obc.isAscending()) {
559 query.append(" ASC");
560 }
561 else {
562 query.append(" DESC");
563 }
564
565 if ((i + 1) < orderByFields.length) {
566 query.append(", ");
567 }
568 }
569 }
570
571 Query q = session.createQuery(query.toString());
572
573 QueryPos qPos = QueryPos.getInstance(q);
574
575 qPos.add(roleId);
576
577 list = (List<ResourcePermission>)QueryUtil.list(q,
578 getDialect(), start, end);
579 }
580 catch (Exception e) {
581 throw processException(e);
582 }
583 finally {
584 if (list == null) {
585 list = new ArrayList<ResourcePermission>();
586 }
587
588 cacheResult(list);
589
590 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_ROLEID,
591 finderArgs, list);
592
593 closeSession(session);
594 }
595 }
596
597 return list;
598 }
599
600 public ResourcePermission findByRoleId_First(long roleId,
601 OrderByComparator obc)
602 throws NoSuchResourcePermissionException, SystemException {
603 List<ResourcePermission> list = findByRoleId(roleId, 0, 1, obc);
604
605 if (list.isEmpty()) {
606 StringBuilder msg = new StringBuilder();
607
608 msg.append("No ResourcePermission exists with the key {");
609
610 msg.append("roleId=" + roleId);
611
612 msg.append(StringPool.CLOSE_CURLY_BRACE);
613
614 throw new NoSuchResourcePermissionException(msg.toString());
615 }
616 else {
617 return list.get(0);
618 }
619 }
620
621 public ResourcePermission findByRoleId_Last(long roleId,
622 OrderByComparator obc)
623 throws NoSuchResourcePermissionException, SystemException {
624 int count = countByRoleId(roleId);
625
626 List<ResourcePermission> list = findByRoleId(roleId, count - 1, count,
627 obc);
628
629 if (list.isEmpty()) {
630 StringBuilder msg = new StringBuilder();
631
632 msg.append("No ResourcePermission exists with the key {");
633
634 msg.append("roleId=" + roleId);
635
636 msg.append(StringPool.CLOSE_CURLY_BRACE);
637
638 throw new NoSuchResourcePermissionException(msg.toString());
639 }
640 else {
641 return list.get(0);
642 }
643 }
644
645 public ResourcePermission[] findByRoleId_PrevAndNext(
646 long resourcePermissionId, long roleId, OrderByComparator obc)
647 throws NoSuchResourcePermissionException, SystemException {
648 ResourcePermission resourcePermission = findByPrimaryKey(resourcePermissionId);
649
650 int count = countByRoleId(roleId);
651
652 Session session = null;
653
654 try {
655 session = openSession();
656
657 StringBuilder query = new StringBuilder();
658
659 query.append(
660 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
661
662 query.append("resourcePermission.roleId = ?");
663
664 query.append(" ");
665
666 if (obc != null) {
667 query.append("ORDER BY ");
668
669 String[] orderByFields = obc.getOrderByFields();
670
671 for (int i = 0; i < orderByFields.length; i++) {
672 query.append("resourcePermission.");
673 query.append(orderByFields[i]);
674
675 if (obc.isAscending()) {
676 query.append(" ASC");
677 }
678 else {
679 query.append(" DESC");
680 }
681
682 if ((i + 1) < orderByFields.length) {
683 query.append(", ");
684 }
685 }
686 }
687
688 Query q = session.createQuery(query.toString());
689
690 QueryPos qPos = QueryPos.getInstance(q);
691
692 qPos.add(roleId);
693
694 Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
695 resourcePermission);
696
697 ResourcePermission[] array = new ResourcePermissionImpl[3];
698
699 array[0] = (ResourcePermission)objArray[0];
700 array[1] = (ResourcePermission)objArray[1];
701 array[2] = (ResourcePermission)objArray[2];
702
703 return array;
704 }
705 catch (Exception e) {
706 throw processException(e);
707 }
708 finally {
709 closeSession(session);
710 }
711 }
712
713 public List<ResourcePermission> findByC_N_S(long companyId, String name,
714 int scope) throws SystemException {
715 Object[] finderArgs = new Object[] {
716 new Long(companyId),
717
718 name, new Integer(scope)
719 };
720
721 List<ResourcePermission> list = (List<ResourcePermission>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_C_N_S,
722 finderArgs, this);
723
724 if (list == null) {
725 Session session = null;
726
727 try {
728 session = openSession();
729
730 StringBuilder query = new StringBuilder();
731
732 query.append(
733 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
734
735 query.append("resourcePermission.companyId = ?");
736
737 query.append(" AND ");
738
739 if (name == null) {
740 query.append("resourcePermission.name IS NULL");
741 }
742 else {
743 query.append("resourcePermission.name = ?");
744 }
745
746 query.append(" AND ");
747
748 query.append("resourcePermission.scope = ?");
749
750 query.append(" ");
751
752 Query q = session.createQuery(query.toString());
753
754 QueryPos qPos = QueryPos.getInstance(q);
755
756 qPos.add(companyId);
757
758 if (name != null) {
759 qPos.add(name);
760 }
761
762 qPos.add(scope);
763
764 list = q.list();
765 }
766 catch (Exception e) {
767 throw processException(e);
768 }
769 finally {
770 if (list == null) {
771 list = new ArrayList<ResourcePermission>();
772 }
773
774 cacheResult(list);
775
776 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_C_N_S,
777 finderArgs, list);
778
779 closeSession(session);
780 }
781 }
782
783 return list;
784 }
785
786 public List<ResourcePermission> findByC_N_S(long companyId, String name,
787 int scope, int start, int end) throws SystemException {
788 return findByC_N_S(companyId, name, scope, start, end, null);
789 }
790
791 public List<ResourcePermission> findByC_N_S(long companyId, String name,
792 int scope, int start, int end, OrderByComparator obc)
793 throws SystemException {
794 Object[] finderArgs = new Object[] {
795 new Long(companyId),
796
797 name, new Integer(scope),
798
799 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
800 };
801
802 List<ResourcePermission> list = (List<ResourcePermission>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_C_N_S,
803 finderArgs, this);
804
805 if (list == null) {
806 Session session = null;
807
808 try {
809 session = openSession();
810
811 StringBuilder query = new StringBuilder();
812
813 query.append(
814 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
815
816 query.append("resourcePermission.companyId = ?");
817
818 query.append(" AND ");
819
820 if (name == null) {
821 query.append("resourcePermission.name IS NULL");
822 }
823 else {
824 query.append("resourcePermission.name = ?");
825 }
826
827 query.append(" AND ");
828
829 query.append("resourcePermission.scope = ?");
830
831 query.append(" ");
832
833 if (obc != null) {
834 query.append("ORDER BY ");
835
836 String[] orderByFields = obc.getOrderByFields();
837
838 for (int i = 0; i < orderByFields.length; i++) {
839 query.append("resourcePermission.");
840 query.append(orderByFields[i]);
841
842 if (obc.isAscending()) {
843 query.append(" ASC");
844 }
845 else {
846 query.append(" DESC");
847 }
848
849 if ((i + 1) < orderByFields.length) {
850 query.append(", ");
851 }
852 }
853 }
854
855 Query q = session.createQuery(query.toString());
856
857 QueryPos qPos = QueryPos.getInstance(q);
858
859 qPos.add(companyId);
860
861 if (name != null) {
862 qPos.add(name);
863 }
864
865 qPos.add(scope);
866
867 list = (List<ResourcePermission>)QueryUtil.list(q,
868 getDialect(), start, end);
869 }
870 catch (Exception e) {
871 throw processException(e);
872 }
873 finally {
874 if (list == null) {
875 list = new ArrayList<ResourcePermission>();
876 }
877
878 cacheResult(list);
879
880 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_C_N_S,
881 finderArgs, list);
882
883 closeSession(session);
884 }
885 }
886
887 return list;
888 }
889
890 public ResourcePermission findByC_N_S_First(long companyId, String name,
891 int scope, OrderByComparator obc)
892 throws NoSuchResourcePermissionException, SystemException {
893 List<ResourcePermission> list = findByC_N_S(companyId, name, scope, 0,
894 1, obc);
895
896 if (list.isEmpty()) {
897 StringBuilder msg = new StringBuilder();
898
899 msg.append("No ResourcePermission exists with the key {");
900
901 msg.append("companyId=" + companyId);
902
903 msg.append(", ");
904 msg.append("name=" + name);
905
906 msg.append(", ");
907 msg.append("scope=" + scope);
908
909 msg.append(StringPool.CLOSE_CURLY_BRACE);
910
911 throw new NoSuchResourcePermissionException(msg.toString());
912 }
913 else {
914 return list.get(0);
915 }
916 }
917
918 public ResourcePermission findByC_N_S_Last(long companyId, String name,
919 int scope, OrderByComparator obc)
920 throws NoSuchResourcePermissionException, SystemException {
921 int count = countByC_N_S(companyId, name, scope);
922
923 List<ResourcePermission> list = findByC_N_S(companyId, name, scope,
924 count - 1, count, obc);
925
926 if (list.isEmpty()) {
927 StringBuilder msg = new StringBuilder();
928
929 msg.append("No ResourcePermission exists with the key {");
930
931 msg.append("companyId=" + companyId);
932
933 msg.append(", ");
934 msg.append("name=" + name);
935
936 msg.append(", ");
937 msg.append("scope=" + scope);
938
939 msg.append(StringPool.CLOSE_CURLY_BRACE);
940
941 throw new NoSuchResourcePermissionException(msg.toString());
942 }
943 else {
944 return list.get(0);
945 }
946 }
947
948 public ResourcePermission[] findByC_N_S_PrevAndNext(
949 long resourcePermissionId, long companyId, String name, int scope,
950 OrderByComparator obc)
951 throws NoSuchResourcePermissionException, SystemException {
952 ResourcePermission resourcePermission = findByPrimaryKey(resourcePermissionId);
953
954 int count = countByC_N_S(companyId, name, scope);
955
956 Session session = null;
957
958 try {
959 session = openSession();
960
961 StringBuilder query = new StringBuilder();
962
963 query.append(
964 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
965
966 query.append("resourcePermission.companyId = ?");
967
968 query.append(" AND ");
969
970 if (name == null) {
971 query.append("resourcePermission.name IS NULL");
972 }
973 else {
974 query.append("resourcePermission.name = ?");
975 }
976
977 query.append(" AND ");
978
979 query.append("resourcePermission.scope = ?");
980
981 query.append(" ");
982
983 if (obc != null) {
984 query.append("ORDER BY ");
985
986 String[] orderByFields = obc.getOrderByFields();
987
988 for (int i = 0; i < orderByFields.length; i++) {
989 query.append("resourcePermission.");
990 query.append(orderByFields[i]);
991
992 if (obc.isAscending()) {
993 query.append(" ASC");
994 }
995 else {
996 query.append(" DESC");
997 }
998
999 if ((i + 1) < orderByFields.length) {
1000 query.append(", ");
1001 }
1002 }
1003 }
1004
1005 Query q = session.createQuery(query.toString());
1006
1007 QueryPos qPos = QueryPos.getInstance(q);
1008
1009 qPos.add(companyId);
1010
1011 if (name != null) {
1012 qPos.add(name);
1013 }
1014
1015 qPos.add(scope);
1016
1017 Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
1018 resourcePermission);
1019
1020 ResourcePermission[] array = new ResourcePermissionImpl[3];
1021
1022 array[0] = (ResourcePermission)objArray[0];
1023 array[1] = (ResourcePermission)objArray[1];
1024 array[2] = (ResourcePermission)objArray[2];
1025
1026 return array;
1027 }
1028 catch (Exception e) {
1029 throw processException(e);
1030 }
1031 finally {
1032 closeSession(session);
1033 }
1034 }
1035
1036 public List<ResourcePermission> findByC_N_S_P(long companyId, String name,
1037 int scope, String primKey) throws SystemException {
1038 Object[] finderArgs = new Object[] {
1039 new Long(companyId),
1040
1041 name, new Integer(scope),
1042
1043 primKey
1044 };
1045
1046 List<ResourcePermission> list = (List<ResourcePermission>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_C_N_S_P,
1047 finderArgs, this);
1048
1049 if (list == null) {
1050 Session session = null;
1051
1052 try {
1053 session = openSession();
1054
1055 StringBuilder query = new StringBuilder();
1056
1057 query.append(
1058 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
1059
1060 query.append("resourcePermission.companyId = ?");
1061
1062 query.append(" AND ");
1063
1064 if (name == null) {
1065 query.append("resourcePermission.name IS NULL");
1066 }
1067 else {
1068 query.append("resourcePermission.name = ?");
1069 }
1070
1071 query.append(" AND ");
1072
1073 query.append("resourcePermission.scope = ?");
1074
1075 query.append(" AND ");
1076
1077 if (primKey == null) {
1078 query.append("resourcePermission.primKey IS NULL");
1079 }
1080 else {
1081 query.append("resourcePermission.primKey = ?");
1082 }
1083
1084 query.append(" ");
1085
1086 Query q = session.createQuery(query.toString());
1087
1088 QueryPos qPos = QueryPos.getInstance(q);
1089
1090 qPos.add(companyId);
1091
1092 if (name != null) {
1093 qPos.add(name);
1094 }
1095
1096 qPos.add(scope);
1097
1098 if (primKey != null) {
1099 qPos.add(primKey);
1100 }
1101
1102 list = q.list();
1103 }
1104 catch (Exception e) {
1105 throw processException(e);
1106 }
1107 finally {
1108 if (list == null) {
1109 list = new ArrayList<ResourcePermission>();
1110 }
1111
1112 cacheResult(list);
1113
1114 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_C_N_S_P,
1115 finderArgs, list);
1116
1117 closeSession(session);
1118 }
1119 }
1120
1121 return list;
1122 }
1123
1124 public List<ResourcePermission> findByC_N_S_P(long companyId, String name,
1125 int scope, String primKey, int start, int end)
1126 throws SystemException {
1127 return findByC_N_S_P(companyId, name, scope, primKey, start, end, null);
1128 }
1129
1130 public List<ResourcePermission> findByC_N_S_P(long companyId, String name,
1131 int scope, String primKey, int start, int end, OrderByComparator obc)
1132 throws SystemException {
1133 Object[] finderArgs = new Object[] {
1134 new Long(companyId),
1135
1136 name, new Integer(scope),
1137
1138 primKey,
1139
1140 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
1141 };
1142
1143 List<ResourcePermission> list = (List<ResourcePermission>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_C_N_S_P,
1144 finderArgs, this);
1145
1146 if (list == null) {
1147 Session session = null;
1148
1149 try {
1150 session = openSession();
1151
1152 StringBuilder query = new StringBuilder();
1153
1154 query.append(
1155 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
1156
1157 query.append("resourcePermission.companyId = ?");
1158
1159 query.append(" AND ");
1160
1161 if (name == null) {
1162 query.append("resourcePermission.name IS NULL");
1163 }
1164 else {
1165 query.append("resourcePermission.name = ?");
1166 }
1167
1168 query.append(" AND ");
1169
1170 query.append("resourcePermission.scope = ?");
1171
1172 query.append(" AND ");
1173
1174 if (primKey == null) {
1175 query.append("resourcePermission.primKey IS NULL");
1176 }
1177 else {
1178 query.append("resourcePermission.primKey = ?");
1179 }
1180
1181 query.append(" ");
1182
1183 if (obc != null) {
1184 query.append("ORDER BY ");
1185
1186 String[] orderByFields = obc.getOrderByFields();
1187
1188 for (int i = 0; i < orderByFields.length; i++) {
1189 query.append("resourcePermission.");
1190 query.append(orderByFields[i]);
1191
1192 if (obc.isAscending()) {
1193 query.append(" ASC");
1194 }
1195 else {
1196 query.append(" DESC");
1197 }
1198
1199 if ((i + 1) < orderByFields.length) {
1200 query.append(", ");
1201 }
1202 }
1203 }
1204
1205 Query q = session.createQuery(query.toString());
1206
1207 QueryPos qPos = QueryPos.getInstance(q);
1208
1209 qPos.add(companyId);
1210
1211 if (name != null) {
1212 qPos.add(name);
1213 }
1214
1215 qPos.add(scope);
1216
1217 if (primKey != null) {
1218 qPos.add(primKey);
1219 }
1220
1221 list = (List<ResourcePermission>)QueryUtil.list(q,
1222 getDialect(), start, end);
1223 }
1224 catch (Exception e) {
1225 throw processException(e);
1226 }
1227 finally {
1228 if (list == null) {
1229 list = new ArrayList<ResourcePermission>();
1230 }
1231
1232 cacheResult(list);
1233
1234 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_C_N_S_P,
1235 finderArgs, list);
1236
1237 closeSession(session);
1238 }
1239 }
1240
1241 return list;
1242 }
1243
1244 public ResourcePermission findByC_N_S_P_First(long companyId, String name,
1245 int scope, String primKey, OrderByComparator obc)
1246 throws NoSuchResourcePermissionException, SystemException {
1247 List<ResourcePermission> list = findByC_N_S_P(companyId, name, scope,
1248 primKey, 0, 1, obc);
1249
1250 if (list.isEmpty()) {
1251 StringBuilder msg = new StringBuilder();
1252
1253 msg.append("No ResourcePermission exists with the key {");
1254
1255 msg.append("companyId=" + companyId);
1256
1257 msg.append(", ");
1258 msg.append("name=" + name);
1259
1260 msg.append(", ");
1261 msg.append("scope=" + scope);
1262
1263 msg.append(", ");
1264 msg.append("primKey=" + primKey);
1265
1266 msg.append(StringPool.CLOSE_CURLY_BRACE);
1267
1268 throw new NoSuchResourcePermissionException(msg.toString());
1269 }
1270 else {
1271 return list.get(0);
1272 }
1273 }
1274
1275 public ResourcePermission findByC_N_S_P_Last(long companyId, String name,
1276 int scope, String primKey, OrderByComparator obc)
1277 throws NoSuchResourcePermissionException, SystemException {
1278 int count = countByC_N_S_P(companyId, name, scope, primKey);
1279
1280 List<ResourcePermission> list = findByC_N_S_P(companyId, name, scope,
1281 primKey, count - 1, count, obc);
1282
1283 if (list.isEmpty()) {
1284 StringBuilder msg = new StringBuilder();
1285
1286 msg.append("No ResourcePermission exists with the key {");
1287
1288 msg.append("companyId=" + companyId);
1289
1290 msg.append(", ");
1291 msg.append("name=" + name);
1292
1293 msg.append(", ");
1294 msg.append("scope=" + scope);
1295
1296 msg.append(", ");
1297 msg.append("primKey=" + primKey);
1298
1299 msg.append(StringPool.CLOSE_CURLY_BRACE);
1300
1301 throw new NoSuchResourcePermissionException(msg.toString());
1302 }
1303 else {
1304 return list.get(0);
1305 }
1306 }
1307
1308 public ResourcePermission[] findByC_N_S_P_PrevAndNext(
1309 long resourcePermissionId, long companyId, String name, int scope,
1310 String primKey, OrderByComparator obc)
1311 throws NoSuchResourcePermissionException, SystemException {
1312 ResourcePermission resourcePermission = findByPrimaryKey(resourcePermissionId);
1313
1314 int count = countByC_N_S_P(companyId, name, scope, primKey);
1315
1316 Session session = null;
1317
1318 try {
1319 session = openSession();
1320
1321 StringBuilder query = new StringBuilder();
1322
1323 query.append(
1324 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
1325
1326 query.append("resourcePermission.companyId = ?");
1327
1328 query.append(" AND ");
1329
1330 if (name == null) {
1331 query.append("resourcePermission.name IS NULL");
1332 }
1333 else {
1334 query.append("resourcePermission.name = ?");
1335 }
1336
1337 query.append(" AND ");
1338
1339 query.append("resourcePermission.scope = ?");
1340
1341 query.append(" AND ");
1342
1343 if (primKey == null) {
1344 query.append("resourcePermission.primKey IS NULL");
1345 }
1346 else {
1347 query.append("resourcePermission.primKey = ?");
1348 }
1349
1350 query.append(" ");
1351
1352 if (obc != null) {
1353 query.append("ORDER BY ");
1354
1355 String[] orderByFields = obc.getOrderByFields();
1356
1357 for (int i = 0; i < orderByFields.length; i++) {
1358 query.append("resourcePermission.");
1359 query.append(orderByFields[i]);
1360
1361 if (obc.isAscending()) {
1362 query.append(" ASC");
1363 }
1364 else {
1365 query.append(" DESC");
1366 }
1367
1368 if ((i + 1) < orderByFields.length) {
1369 query.append(", ");
1370 }
1371 }
1372 }
1373
1374 Query q = session.createQuery(query.toString());
1375
1376 QueryPos qPos = QueryPos.getInstance(q);
1377
1378 qPos.add(companyId);
1379
1380 if (name != null) {
1381 qPos.add(name);
1382 }
1383
1384 qPos.add(scope);
1385
1386 if (primKey != null) {
1387 qPos.add(primKey);
1388 }
1389
1390 Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
1391 resourcePermission);
1392
1393 ResourcePermission[] array = new ResourcePermissionImpl[3];
1394
1395 array[0] = (ResourcePermission)objArray[0];
1396 array[1] = (ResourcePermission)objArray[1];
1397 array[2] = (ResourcePermission)objArray[2];
1398
1399 return array;
1400 }
1401 catch (Exception e) {
1402 throw processException(e);
1403 }
1404 finally {
1405 closeSession(session);
1406 }
1407 }
1408
1409 public ResourcePermission findByC_N_S_P_R(long companyId, String name,
1410 int scope, String primKey, long roleId)
1411 throws NoSuchResourcePermissionException, SystemException {
1412 ResourcePermission resourcePermission = fetchByC_N_S_P_R(companyId,
1413 name, scope, primKey, roleId);
1414
1415 if (resourcePermission == null) {
1416 StringBuilder msg = new StringBuilder();
1417
1418 msg.append("No ResourcePermission exists with the key {");
1419
1420 msg.append("companyId=" + companyId);
1421
1422 msg.append(", ");
1423 msg.append("name=" + name);
1424
1425 msg.append(", ");
1426 msg.append("scope=" + scope);
1427
1428 msg.append(", ");
1429 msg.append("primKey=" + primKey);
1430
1431 msg.append(", ");
1432 msg.append("roleId=" + roleId);
1433
1434 msg.append(StringPool.CLOSE_CURLY_BRACE);
1435
1436 if (_log.isWarnEnabled()) {
1437 _log.warn(msg.toString());
1438 }
1439
1440 throw new NoSuchResourcePermissionException(msg.toString());
1441 }
1442
1443 return resourcePermission;
1444 }
1445
1446 public ResourcePermission fetchByC_N_S_P_R(long companyId, String name,
1447 int scope, String primKey, long roleId) throws SystemException {
1448 return fetchByC_N_S_P_R(companyId, name, scope, primKey, roleId, true);
1449 }
1450
1451 public ResourcePermission fetchByC_N_S_P_R(long companyId, String name,
1452 int scope, String primKey, long roleId, boolean retrieveFromCache)
1453 throws SystemException {
1454 Object[] finderArgs = new Object[] {
1455 new Long(companyId),
1456
1457 name, new Integer(scope),
1458
1459 primKey, new Long(roleId)
1460 };
1461
1462 Object result = null;
1463
1464 if (retrieveFromCache) {
1465 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_C_N_S_P_R,
1466 finderArgs, this);
1467 }
1468
1469 if (result == null) {
1470 Session session = null;
1471
1472 try {
1473 session = openSession();
1474
1475 StringBuilder query = new StringBuilder();
1476
1477 query.append(
1478 "SELECT resourcePermission FROM ResourcePermission resourcePermission WHERE ");
1479
1480 query.append("resourcePermission.companyId = ?");
1481
1482 query.append(" AND ");
1483
1484 if (name == null) {
1485 query.append("resourcePermission.name IS NULL");
1486 }
1487 else {
1488 query.append("resourcePermission.name = ?");
1489 }
1490
1491 query.append(" AND ");
1492
1493 query.append("resourcePermission.scope = ?");
1494
1495 query.append(" AND ");
1496
1497 if (primKey == null) {
1498 query.append("resourcePermission.primKey IS NULL");
1499 }
1500 else {
1501 query.append("resourcePermission.primKey = ?");
1502 }
1503
1504 query.append(" AND ");
1505
1506 query.append("resourcePermission.roleId = ?");
1507
1508 query.append(" ");
1509
1510 Query q = session.createQuery(query.toString());
1511
1512 QueryPos qPos = QueryPos.getInstance(q);
1513
1514 qPos.add(companyId);
1515
1516 if (name != null) {
1517 qPos.add(name);
1518 }
1519
1520 qPos.add(scope);
1521
1522 if (primKey != null) {
1523 qPos.add(primKey);
1524 }
1525
1526 qPos.add(roleId);
1527
1528 List<ResourcePermission> list = q.list();
1529
1530 result = list;
1531
1532 ResourcePermission resourcePermission = null;
1533
1534 if (list.isEmpty()) {
1535 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_C_N_S_P_R,
1536 finderArgs, list);
1537 }
1538 else {
1539 resourcePermission = list.get(0);
1540
1541 cacheResult(resourcePermission);
1542
1543 if ((resourcePermission.getCompanyId() != companyId) ||
1544 (resourcePermission.getName() == null) ||
1545 !resourcePermission.getName().equals(name) ||
1546 (resourcePermission.getScope() != scope) ||
1547 (resourcePermission.getPrimKey() == null) ||
1548 !resourcePermission.getPrimKey().equals(primKey) ||
1549 (resourcePermission.getRoleId() != roleId)) {
1550 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_C_N_S_P_R,
1551 finderArgs, resourcePermission);
1552 }
1553 }
1554
1555 return resourcePermission;
1556 }
1557 catch (Exception e) {
1558 throw processException(e);
1559 }
1560 finally {
1561 if (result == null) {
1562 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_C_N_S_P_R,
1563 finderArgs, new ArrayList<ResourcePermission>());
1564 }
1565
1566 closeSession(session);
1567 }
1568 }
1569 else {
1570 if (result instanceof List) {
1571 return null;
1572 }
1573 else {
1574 return (ResourcePermission)result;
1575 }
1576 }
1577 }
1578
1579 public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery)
1580 throws SystemException {
1581 Session session = null;
1582
1583 try {
1584 session = openSession();
1585
1586 dynamicQuery.compile(session);
1587
1588 return dynamicQuery.list();
1589 }
1590 catch (Exception e) {
1591 throw processException(e);
1592 }
1593 finally {
1594 closeSession(session);
1595 }
1596 }
1597
1598 public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery,
1599 int start, int end) throws SystemException {
1600 Session session = null;
1601
1602 try {
1603 session = openSession();
1604
1605 dynamicQuery.setLimit(start, end);
1606
1607 dynamicQuery.compile(session);
1608
1609 return dynamicQuery.list();
1610 }
1611 catch (Exception e) {
1612 throw processException(e);
1613 }
1614 finally {
1615 closeSession(session);
1616 }
1617 }
1618
1619 public List<ResourcePermission> findAll() throws SystemException {
1620 return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
1621 }
1622
1623 public List<ResourcePermission> findAll(int start, int end)
1624 throws SystemException {
1625 return findAll(start, end, null);
1626 }
1627
1628 public List<ResourcePermission> findAll(int start, int end,
1629 OrderByComparator obc) throws SystemException {
1630 Object[] finderArgs = new Object[] {
1631 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
1632 };
1633
1634 List<ResourcePermission> list = (List<ResourcePermission>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
1635 finderArgs, this);
1636
1637 if (list == null) {
1638 Session session = null;
1639
1640 try {
1641 session = openSession();
1642
1643 StringBuilder query = new StringBuilder();
1644
1645 query.append(
1646 "SELECT resourcePermission FROM ResourcePermission resourcePermission ");
1647
1648 if (obc != null) {
1649 query.append("ORDER BY ");
1650
1651 String[] orderByFields = obc.getOrderByFields();
1652
1653 for (int i = 0; i < orderByFields.length; i++) {
1654 query.append("resourcePermission.");
1655 query.append(orderByFields[i]);
1656
1657 if (obc.isAscending()) {
1658 query.append(" ASC");
1659 }
1660 else {
1661 query.append(" DESC");
1662 }
1663
1664 if ((i + 1) < orderByFields.length) {
1665 query.append(", ");
1666 }
1667 }
1668 }
1669
1670 Query q = session.createQuery(query.toString());
1671
1672 if (obc == null) {
1673 list = (List<ResourcePermission>)QueryUtil.list(q,
1674 getDialect(), start, end, false);
1675
1676 Collections.sort(list);
1677 }
1678 else {
1679 list = (List<ResourcePermission>)QueryUtil.list(q,
1680 getDialect(), start, end);
1681 }
1682 }
1683 catch (Exception e) {
1684 throw processException(e);
1685 }
1686 finally {
1687 if (list == null) {
1688 list = new ArrayList<ResourcePermission>();
1689 }
1690
1691 cacheResult(list);
1692
1693 FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
1694
1695 closeSession(session);
1696 }
1697 }
1698
1699 return list;
1700 }
1701
1702 public void removeByRoleId(long roleId) throws SystemException {
1703 for (ResourcePermission resourcePermission : findByRoleId(roleId)) {
1704 remove(resourcePermission);
1705 }
1706 }
1707
1708 public void removeByC_N_S(long companyId, String name, int scope)
1709 throws SystemException {
1710 for (ResourcePermission resourcePermission : findByC_N_S(companyId,
1711 name, scope)) {
1712 remove(resourcePermission);
1713 }
1714 }
1715
1716 public void removeByC_N_S_P(long companyId, String name, int scope,
1717 String primKey) throws SystemException {
1718 for (ResourcePermission resourcePermission : findByC_N_S_P(companyId,
1719 name, scope, primKey)) {
1720 remove(resourcePermission);
1721 }
1722 }
1723
1724 public void removeByC_N_S_P_R(long companyId, String name, int scope,
1725 String primKey, long roleId)
1726 throws NoSuchResourcePermissionException, SystemException {
1727 ResourcePermission resourcePermission = findByC_N_S_P_R(companyId,
1728 name, scope, primKey, roleId);
1729
1730 remove(resourcePermission);
1731 }
1732
1733 public void removeAll() throws SystemException {
1734 for (ResourcePermission resourcePermission : findAll()) {
1735 remove(resourcePermission);
1736 }
1737 }
1738
1739 public int countByRoleId(long roleId) throws SystemException {
1740 Object[] finderArgs = new Object[] { new Long(roleId) };
1741
1742 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_ROLEID,
1743 finderArgs, this);
1744
1745 if (count == null) {
1746 Session session = null;
1747
1748 try {
1749 session = openSession();
1750
1751 StringBuilder query = new StringBuilder();
1752
1753 query.append("SELECT COUNT(resourcePermission) ");
1754 query.append(
1755 "FROM ResourcePermission resourcePermission WHERE ");
1756
1757 query.append("resourcePermission.roleId = ?");
1758
1759 query.append(" ");
1760
1761 Query q = session.createQuery(query.toString());
1762
1763 QueryPos qPos = QueryPos.getInstance(q);
1764
1765 qPos.add(roleId);
1766
1767 count = (Long)q.uniqueResult();
1768 }
1769 catch (Exception e) {
1770 throw processException(e);
1771 }
1772 finally {
1773 if (count == null) {
1774 count = Long.valueOf(0);
1775 }
1776
1777 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_ROLEID,
1778 finderArgs, count);
1779
1780 closeSession(session);
1781 }
1782 }
1783
1784 return count.intValue();
1785 }
1786
1787 public int countByC_N_S(long companyId, String name, int scope)
1788 throws SystemException {
1789 Object[] finderArgs = new Object[] {
1790 new Long(companyId),
1791
1792 name, new Integer(scope)
1793 };
1794
1795 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_C_N_S,
1796 finderArgs, this);
1797
1798 if (count == null) {
1799 Session session = null;
1800
1801 try {
1802 session = openSession();
1803
1804 StringBuilder query = new StringBuilder();
1805
1806 query.append("SELECT COUNT(resourcePermission) ");
1807 query.append(
1808 "FROM ResourcePermission resourcePermission WHERE ");
1809
1810 query.append("resourcePermission.companyId = ?");
1811
1812 query.append(" AND ");
1813
1814 if (name == null) {
1815 query.append("resourcePermission.name IS NULL");
1816 }
1817 else {
1818 query.append("resourcePermission.name = ?");
1819 }
1820
1821 query.append(" AND ");
1822
1823 query.append("resourcePermission.scope = ?");
1824
1825 query.append(" ");
1826
1827 Query q = session.createQuery(query.toString());
1828
1829 QueryPos qPos = QueryPos.getInstance(q);
1830
1831 qPos.add(companyId);
1832
1833 if (name != null) {
1834 qPos.add(name);
1835 }
1836
1837 qPos.add(scope);
1838
1839 count = (Long)q.uniqueResult();
1840 }
1841 catch (Exception e) {
1842 throw processException(e);
1843 }
1844 finally {
1845 if (count == null) {
1846 count = Long.valueOf(0);
1847 }
1848
1849 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_C_N_S,
1850 finderArgs, count);
1851
1852 closeSession(session);
1853 }
1854 }
1855
1856 return count.intValue();
1857 }
1858
1859 public int countByC_N_S_P(long companyId, String name, int scope,
1860 String primKey) throws SystemException {
1861 Object[] finderArgs = new Object[] {
1862 new Long(companyId),
1863
1864 name, new Integer(scope),
1865
1866 primKey
1867 };
1868
1869 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_C_N_S_P,
1870 finderArgs, this);
1871
1872 if (count == null) {
1873 Session session = null;
1874
1875 try {
1876 session = openSession();
1877
1878 StringBuilder query = new StringBuilder();
1879
1880 query.append("SELECT COUNT(resourcePermission) ");
1881 query.append(
1882 "FROM ResourcePermission resourcePermission WHERE ");
1883
1884 query.append("resourcePermission.companyId = ?");
1885
1886 query.append(" AND ");
1887
1888 if (name == null) {
1889 query.append("resourcePermission.name IS NULL");
1890 }
1891 else {
1892 query.append("resourcePermission.name = ?");
1893 }
1894
1895 query.append(" AND ");
1896
1897 query.append("resourcePermission.scope = ?");
1898
1899 query.append(" AND ");
1900
1901 if (primKey == null) {
1902 query.append("resourcePermission.primKey IS NULL");
1903 }
1904 else {
1905 query.append("resourcePermission.primKey = ?");
1906 }
1907
1908 query.append(" ");
1909
1910 Query q = session.createQuery(query.toString());
1911
1912 QueryPos qPos = QueryPos.getInstance(q);
1913
1914 qPos.add(companyId);
1915
1916 if (name != null) {
1917 qPos.add(name);
1918 }
1919
1920 qPos.add(scope);
1921
1922 if (primKey != null) {
1923 qPos.add(primKey);
1924 }
1925
1926 count = (Long)q.uniqueResult();
1927 }
1928 catch (Exception e) {
1929 throw processException(e);
1930 }
1931 finally {
1932 if (count == null) {
1933 count = Long.valueOf(0);
1934 }
1935
1936 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_C_N_S_P,
1937 finderArgs, count);
1938
1939 closeSession(session);
1940 }
1941 }
1942
1943 return count.intValue();
1944 }
1945
1946 public int countByC_N_S_P_R(long companyId, String name, int scope,
1947 String primKey, long roleId) throws SystemException {
1948 Object[] finderArgs = new Object[] {
1949 new Long(companyId),
1950
1951 name, new Integer(scope),
1952
1953 primKey, new Long(roleId)
1954 };
1955
1956 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_C_N_S_P_R,
1957 finderArgs, this);
1958
1959 if (count == null) {
1960 Session session = null;
1961
1962 try {
1963 session = openSession();
1964
1965 StringBuilder query = new StringBuilder();
1966
1967 query.append("SELECT COUNT(resourcePermission) ");
1968 query.append(
1969 "FROM ResourcePermission resourcePermission WHERE ");
1970
1971 query.append("resourcePermission.companyId = ?");
1972
1973 query.append(" AND ");
1974
1975 if (name == null) {
1976 query.append("resourcePermission.name IS NULL");
1977 }
1978 else {
1979 query.append("resourcePermission.name = ?");
1980 }
1981
1982 query.append(" AND ");
1983
1984 query.append("resourcePermission.scope = ?");
1985
1986 query.append(" AND ");
1987
1988 if (primKey == null) {
1989 query.append("resourcePermission.primKey IS NULL");
1990 }
1991 else {
1992 query.append("resourcePermission.primKey = ?");
1993 }
1994
1995 query.append(" AND ");
1996
1997 query.append("resourcePermission.roleId = ?");
1998
1999 query.append(" ");
2000
2001 Query q = session.createQuery(query.toString());
2002
2003 QueryPos qPos = QueryPos.getInstance(q);
2004
2005 qPos.add(companyId);
2006
2007 if (name != null) {
2008 qPos.add(name);
2009 }
2010
2011 qPos.add(scope);
2012
2013 if (primKey != null) {
2014 qPos.add(primKey);
2015 }
2016
2017 qPos.add(roleId);
2018
2019 count = (Long)q.uniqueResult();
2020 }
2021 catch (Exception e) {
2022 throw processException(e);
2023 }
2024 finally {
2025 if (count == null) {
2026 count = Long.valueOf(0);
2027 }
2028
2029 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_C_N_S_P_R,
2030 finderArgs, count);
2031
2032 closeSession(session);
2033 }
2034 }
2035
2036 return count.intValue();
2037 }
2038
2039 public int countAll() throws SystemException {
2040 Object[] finderArgs = new Object[0];
2041
2042 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
2043 finderArgs, this);
2044
2045 if (count == null) {
2046 Session session = null;
2047
2048 try {
2049 session = openSession();
2050
2051 Query q = session.createQuery(
2052 "SELECT COUNT(resourcePermission) FROM ResourcePermission resourcePermission");
2053
2054 count = (Long)q.uniqueResult();
2055 }
2056 catch (Exception e) {
2057 throw processException(e);
2058 }
2059 finally {
2060 if (count == null) {
2061 count = Long.valueOf(0);
2062 }
2063
2064 FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
2065 count);
2066
2067 closeSession(session);
2068 }
2069 }
2070
2071 return count.intValue();
2072 }
2073
2074 public void afterPropertiesSet() {
2075 String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
2076 com.liferay.portal.util.PropsUtil.get(
2077 "value.object.listener.com.liferay.portal.model.ResourcePermission")));
2078
2079 if (listenerClassNames.length > 0) {
2080 try {
2081 List<ModelListener<ResourcePermission>> listenersList = new ArrayList<ModelListener<ResourcePermission>>();
2082
2083 for (String listenerClassName : listenerClassNames) {
2084 listenersList.add((ModelListener<ResourcePermission>)Class.forName(
2085 listenerClassName).newInstance());
2086 }
2087
2088 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
2089 }
2090 catch (Exception e) {
2091 _log.error(e);
2092 }
2093 }
2094 }
2095
2096 @BeanReference(name = "com.liferay.portal.service.persistence.AccountPersistence.impl")
2097 protected com.liferay.portal.service.persistence.AccountPersistence accountPersistence;
2098 @BeanReference(name = "com.liferay.portal.service.persistence.AddressPersistence.impl")
2099 protected com.liferay.portal.service.persistence.AddressPersistence addressPersistence;
2100 @BeanReference(name = "com.liferay.portal.service.persistence.BrowserTrackerPersistence.impl")
2101 protected com.liferay.portal.service.persistence.BrowserTrackerPersistence browserTrackerPersistence;
2102 @BeanReference(name = "com.liferay.portal.service.persistence.ClassNamePersistence.impl")
2103 protected com.liferay.portal.service.persistence.ClassNamePersistence classNamePersistence;
2104 @BeanReference(name = "com.liferay.portal.service.persistence.CompanyPersistence.impl")
2105 protected com.liferay.portal.service.persistence.CompanyPersistence companyPersistence;
2106 @BeanReference(name = "com.liferay.portal.service.persistence.ContactPersistence.impl")
2107 protected com.liferay.portal.service.persistence.ContactPersistence contactPersistence;
2108 @BeanReference(name = "com.liferay.portal.service.persistence.CountryPersistence.impl")
2109 protected com.liferay.portal.service.persistence.CountryPersistence countryPersistence;
2110 @BeanReference(name = "com.liferay.portal.service.persistence.EmailAddressPersistence.impl")
2111 protected com.liferay.portal.service.persistence.EmailAddressPersistence emailAddressPersistence;
2112 @BeanReference(name = "com.liferay.portal.service.persistence.GroupPersistence.impl")
2113 protected com.liferay.portal.service.persistence.GroupPersistence groupPersistence;
2114 @BeanReference(name = "com.liferay.portal.service.persistence.ImagePersistence.impl")
2115 protected com.liferay.portal.service.persistence.ImagePersistence imagePersistence;
2116 @BeanReference(name = "com.liferay.portal.service.persistence.LayoutPersistence.impl")
2117 protected com.liferay.portal.service.persistence.LayoutPersistence layoutPersistence;
2118 @BeanReference(name = "com.liferay.portal.service.persistence.LayoutSetPersistence.impl")
2119 protected com.liferay.portal.service.persistence.LayoutSetPersistence layoutSetPersistence;
2120 @BeanReference(name = "com.liferay.portal.service.persistence.ListTypePersistence.impl")
2121 protected com.liferay.portal.service.persistence.ListTypePersistence listTypePersistence;
2122 @BeanReference(name = "com.liferay.portal.service.persistence.MembershipRequestPersistence.impl")
2123 protected com.liferay.portal.service.persistence.MembershipRequestPersistence membershipRequestPersistence;
2124 @BeanReference(name = "com.liferay.portal.service.persistence.OrganizationPersistence.impl")
2125 protected com.liferay.portal.service.persistence.OrganizationPersistence organizationPersistence;
2126 @BeanReference(name = "com.liferay.portal.service.persistence.OrgGroupPermissionPersistence.impl")
2127 protected com.liferay.portal.service.persistence.OrgGroupPermissionPersistence orgGroupPermissionPersistence;
2128 @BeanReference(name = "com.liferay.portal.service.persistence.OrgGroupRolePersistence.impl")
2129 protected com.liferay.portal.service.persistence.OrgGroupRolePersistence orgGroupRolePersistence;
2130 @BeanReference(name = "com.liferay.portal.service.persistence.OrgLaborPersistence.impl")
2131 protected com.liferay.portal.service.persistence.OrgLaborPersistence orgLaborPersistence;
2132 @BeanReference(name = "com.liferay.portal.service.persistence.PasswordPolicyPersistence.impl")
2133 protected com.liferay.portal.service.persistence.PasswordPolicyPersistence passwordPolicyPersistence;
2134 @BeanReference(name = "com.liferay.portal.service.persistence.PasswordPolicyRelPersistence.impl")
2135 protected com.liferay.portal.service.persistence.PasswordPolicyRelPersistence passwordPolicyRelPersistence;
2136 @BeanReference(name = "com.liferay.portal.service.persistence.PasswordTrackerPersistence.impl")
2137 protected com.liferay.portal.service.persistence.PasswordTrackerPersistence passwordTrackerPersistence;
2138 @BeanReference(name = "com.liferay.portal.service.persistence.PermissionPersistence.impl")
2139 protected com.liferay.portal.service.persistence.PermissionPersistence permissionPersistence;
2140 @BeanReference(name = "com.liferay.portal.service.persistence.PhonePersistence.impl")
2141 protected com.liferay.portal.service.persistence.PhonePersistence phonePersistence;
2142 @BeanReference(name = "com.liferay.portal.service.persistence.PluginSettingPersistence.impl")
2143 protected com.liferay.portal.service.persistence.PluginSettingPersistence pluginSettingPersistence;
2144 @BeanReference(name = "com.liferay.portal.service.persistence.PortletPersistence.impl")
2145 protected com.liferay.portal.service.persistence.PortletPersistence portletPersistence;
2146 @BeanReference(name = "com.liferay.portal.service.persistence.PortletItemPersistence.impl")
2147 protected com.liferay.portal.service.persistence.PortletItemPersistence portletItemPersistence;
2148 @BeanReference(name = "com.liferay.portal.service.persistence.PortletPreferencesPersistence.impl")
2149 protected com.liferay.portal.service.persistence.PortletPreferencesPersistence portletPreferencesPersistence;
2150 @BeanReference(name = "com.liferay.portal.service.persistence.RegionPersistence.impl")
2151 protected com.liferay.portal.service.persistence.RegionPersistence regionPersistence;
2152 @BeanReference(name = "com.liferay.portal.service.persistence.ReleasePersistence.impl")
2153 protected com.liferay.portal.service.persistence.ReleasePersistence releasePersistence;
2154 @BeanReference(name = "com.liferay.portal.service.persistence.ResourcePersistence.impl")
2155 protected com.liferay.portal.service.persistence.ResourcePersistence resourcePersistence;
2156 @BeanReference(name = "com.liferay.portal.service.persistence.ResourceActionPersistence.impl")
2157 protected com.liferay.portal.service.persistence.ResourceActionPersistence resourceActionPersistence;
2158 @BeanReference(name = "com.liferay.portal.service.persistence.ResourceCodePersistence.impl")
2159 protected com.liferay.portal.service.persistence.ResourceCodePersistence resourceCodePersistence;
2160 @BeanReference(name = "com.liferay.portal.service.persistence.ResourcePermissionPersistence.impl")
2161 protected com.liferay.portal.service.persistence.ResourcePermissionPersistence resourcePermissionPersistence;
2162 @BeanReference(name = "com.liferay.portal.service.persistence.RolePersistence.impl")
2163 protected com.liferay.portal.service.persistence.RolePersistence rolePersistence;
2164 @BeanReference(name = "com.liferay.portal.service.persistence.ServiceComponentPersistence.impl")
2165 protected com.liferay.portal.service.persistence.ServiceComponentPersistence serviceComponentPersistence;
2166 @BeanReference(name = "com.liferay.portal.service.persistence.ShardPersistence.impl")
2167 protected com.liferay.portal.service.persistence.ShardPersistence shardPersistence;
2168 @BeanReference(name = "com.liferay.portal.service.persistence.SubscriptionPersistence.impl")
2169 protected com.liferay.portal.service.persistence.SubscriptionPersistence subscriptionPersistence;
2170 @BeanReference(name = "com.liferay.portal.service.persistence.UserPersistence.impl")
2171 protected com.liferay.portal.service.persistence.UserPersistence userPersistence;
2172 @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupPersistence.impl")
2173 protected com.liferay.portal.service.persistence.UserGroupPersistence userGroupPersistence;
2174 @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupRolePersistence.impl")
2175 protected com.liferay.portal.service.persistence.UserGroupRolePersistence userGroupRolePersistence;
2176 @BeanReference(name = "com.liferay.portal.service.persistence.UserIdMapperPersistence.impl")
2177 protected com.liferay.portal.service.persistence.UserIdMapperPersistence userIdMapperPersistence;
2178 @BeanReference(name = "com.liferay.portal.service.persistence.UserTrackerPersistence.impl")
2179 protected com.liferay.portal.service.persistence.UserTrackerPersistence userTrackerPersistence;
2180 @BeanReference(name = "com.liferay.portal.service.persistence.UserTrackerPathPersistence.impl")
2181 protected com.liferay.portal.service.persistence.UserTrackerPathPersistence userTrackerPathPersistence;
2182 @BeanReference(name = "com.liferay.portal.service.persistence.WebDAVPropsPersistence.impl")
2183 protected com.liferay.portal.service.persistence.WebDAVPropsPersistence webDAVPropsPersistence;
2184 @BeanReference(name = "com.liferay.portal.service.persistence.WebsitePersistence.impl")
2185 protected com.liferay.portal.service.persistence.WebsitePersistence websitePersistence;
2186 private static Log _log = LogFactoryUtil.getLog(ResourcePermissionPersistenceImpl.class);
2187}