1
14
15 package com.liferay.portal.service.persistence;
16
17 import com.liferay.portal.NoSuchModelException;
18 import com.liferay.portal.NoSuchResourceActionException;
19 import com.liferay.portal.kernel.annotation.BeanReference;
20 import com.liferay.portal.kernel.cache.CacheRegistry;
21 import com.liferay.portal.kernel.dao.orm.DynamicQuery;
22 import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
23 import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
24 import com.liferay.portal.kernel.dao.orm.FinderPath;
25 import com.liferay.portal.kernel.dao.orm.Query;
26 import com.liferay.portal.kernel.dao.orm.QueryPos;
27 import com.liferay.portal.kernel.dao.orm.QueryUtil;
28 import com.liferay.portal.kernel.dao.orm.Session;
29 import com.liferay.portal.kernel.exception.SystemException;
30 import com.liferay.portal.kernel.log.Log;
31 import com.liferay.portal.kernel.log.LogFactoryUtil;
32 import com.liferay.portal.kernel.util.GetterUtil;
33 import com.liferay.portal.kernel.util.OrderByComparator;
34 import com.liferay.portal.kernel.util.StringBundler;
35 import com.liferay.portal.kernel.util.StringPool;
36 import com.liferay.portal.kernel.util.StringUtil;
37 import com.liferay.portal.kernel.util.Validator;
38 import com.liferay.portal.model.ModelListener;
39 import com.liferay.portal.model.ResourceAction;
40 import com.liferay.portal.model.impl.ResourceActionImpl;
41 import com.liferay.portal.model.impl.ResourceActionModelImpl;
42 import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
43
44 import java.io.Serializable;
45
46 import java.util.ArrayList;
47 import java.util.Collections;
48 import java.util.List;
49
50
63 public class ResourceActionPersistenceImpl extends BasePersistenceImpl<ResourceAction>
64 implements ResourceActionPersistence {
65 public static final String FINDER_CLASS_NAME_ENTITY = ResourceActionImpl.class.getName();
66 public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
67 ".List";
68 public static final FinderPath FINDER_PATH_FIND_BY_NAME = new FinderPath(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
69 ResourceActionModelImpl.FINDER_CACHE_ENABLED,
70 FINDER_CLASS_NAME_LIST, "findByName",
71 new String[] { String.class.getName() });
72 public static final FinderPath FINDER_PATH_FIND_BY_OBC_NAME = new FinderPath(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
73 ResourceActionModelImpl.FINDER_CACHE_ENABLED,
74 FINDER_CLASS_NAME_LIST, "findByName",
75 new String[] {
76 String.class.getName(),
77
78 "java.lang.Integer", "java.lang.Integer",
79 "com.liferay.portal.kernel.util.OrderByComparator"
80 });
81 public static final FinderPath FINDER_PATH_COUNT_BY_NAME = new FinderPath(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
82 ResourceActionModelImpl.FINDER_CACHE_ENABLED,
83 FINDER_CLASS_NAME_LIST, "countByName",
84 new String[] { String.class.getName() });
85 public static final FinderPath FINDER_PATH_FETCH_BY_N_A = new FinderPath(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
86 ResourceActionModelImpl.FINDER_CACHE_ENABLED,
87 FINDER_CLASS_NAME_ENTITY, "fetchByN_A",
88 new String[] { String.class.getName(), String.class.getName() });
89 public static final FinderPath FINDER_PATH_COUNT_BY_N_A = new FinderPath(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
90 ResourceActionModelImpl.FINDER_CACHE_ENABLED,
91 FINDER_CLASS_NAME_LIST, "countByN_A",
92 new String[] { String.class.getName(), String.class.getName() });
93 public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
94 ResourceActionModelImpl.FINDER_CACHE_ENABLED,
95 FINDER_CLASS_NAME_LIST, "findAll", new String[0]);
96 public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
97 ResourceActionModelImpl.FINDER_CACHE_ENABLED,
98 FINDER_CLASS_NAME_LIST, "countAll", new String[0]);
99
100 public void cacheResult(ResourceAction resourceAction) {
101 EntityCacheUtil.putResult(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
102 ResourceActionImpl.class, resourceAction.getPrimaryKey(),
103 resourceAction);
104
105 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_A,
106 new Object[] { resourceAction.getName(), resourceAction.getActionId() },
107 resourceAction);
108 }
109
110 public void cacheResult(List<ResourceAction> resourceActions) {
111 for (ResourceAction resourceAction : resourceActions) {
112 if (EntityCacheUtil.getResult(
113 ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
114 ResourceActionImpl.class,
115 resourceAction.getPrimaryKey(), this) == null) {
116 cacheResult(resourceAction);
117 }
118 }
119 }
120
121 public void clearCache() {
122 CacheRegistry.clear(ResourceActionImpl.class.getName());
123 EntityCacheUtil.clearCache(ResourceActionImpl.class.getName());
124 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
125 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
126 }
127
128 public ResourceAction create(long resourceActionId) {
129 ResourceAction resourceAction = new ResourceActionImpl();
130
131 resourceAction.setNew(true);
132 resourceAction.setPrimaryKey(resourceActionId);
133
134 return resourceAction;
135 }
136
137 public ResourceAction remove(Serializable primaryKey)
138 throws NoSuchModelException, SystemException {
139 return remove(((Long)primaryKey).longValue());
140 }
141
142 public ResourceAction remove(long resourceActionId)
143 throws NoSuchResourceActionException, SystemException {
144 Session session = null;
145
146 try {
147 session = openSession();
148
149 ResourceAction resourceAction = (ResourceAction)session.get(ResourceActionImpl.class,
150 new Long(resourceActionId));
151
152 if (resourceAction == null) {
153 if (_log.isWarnEnabled()) {
154 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
155 resourceActionId);
156 }
157
158 throw new NoSuchResourceActionException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
159 resourceActionId);
160 }
161
162 return remove(resourceAction);
163 }
164 catch (NoSuchResourceActionException nsee) {
165 throw nsee;
166 }
167 catch (Exception e) {
168 throw processException(e);
169 }
170 finally {
171 closeSession(session);
172 }
173 }
174
175 public ResourceAction remove(ResourceAction resourceAction)
176 throws SystemException {
177 for (ModelListener<ResourceAction> listener : listeners) {
178 listener.onBeforeRemove(resourceAction);
179 }
180
181 resourceAction = removeImpl(resourceAction);
182
183 for (ModelListener<ResourceAction> listener : listeners) {
184 listener.onAfterRemove(resourceAction);
185 }
186
187 return resourceAction;
188 }
189
190 protected ResourceAction removeImpl(ResourceAction resourceAction)
191 throws SystemException {
192 resourceAction = toUnwrappedModel(resourceAction);
193
194 Session session = null;
195
196 try {
197 session = openSession();
198
199 if (resourceAction.isCachedModel() || BatchSessionUtil.isEnabled()) {
200 Object staleObject = session.get(ResourceActionImpl.class,
201 resourceAction.getPrimaryKeyObj());
202
203 if (staleObject != null) {
204 session.evict(staleObject);
205 }
206 }
207
208 session.delete(resourceAction);
209
210 session.flush();
211 }
212 catch (Exception e) {
213 throw processException(e);
214 }
215 finally {
216 closeSession(session);
217 }
218
219 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
220
221 ResourceActionModelImpl resourceActionModelImpl = (ResourceActionModelImpl)resourceAction;
222
223 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_N_A,
224 new Object[] {
225 resourceActionModelImpl.getOriginalName(),
226
227 resourceActionModelImpl.getOriginalActionId()
228 });
229
230 EntityCacheUtil.removeResult(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
231 ResourceActionImpl.class, resourceAction.getPrimaryKey());
232
233 return resourceAction;
234 }
235
236 public ResourceAction updateImpl(
237 com.liferay.portal.model.ResourceAction resourceAction, boolean merge)
238 throws SystemException {
239 resourceAction = toUnwrappedModel(resourceAction);
240
241 boolean isNew = resourceAction.isNew();
242
243 ResourceActionModelImpl resourceActionModelImpl = (ResourceActionModelImpl)resourceAction;
244
245 Session session = null;
246
247 try {
248 session = openSession();
249
250 BatchSessionUtil.update(session, resourceAction, merge);
251
252 resourceAction.setNew(false);
253 }
254 catch (Exception e) {
255 throw processException(e);
256 }
257 finally {
258 closeSession(session);
259 }
260
261 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
262
263 EntityCacheUtil.putResult(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
264 ResourceActionImpl.class, resourceAction.getPrimaryKey(),
265 resourceAction);
266
267 if (!isNew &&
268 (!Validator.equals(resourceAction.getName(),
269 resourceActionModelImpl.getOriginalName()) ||
270 !Validator.equals(resourceAction.getActionId(),
271 resourceActionModelImpl.getOriginalActionId()))) {
272 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_N_A,
273 new Object[] {
274 resourceActionModelImpl.getOriginalName(),
275
276 resourceActionModelImpl.getOriginalActionId()
277 });
278 }
279
280 if (isNew ||
281 (!Validator.equals(resourceAction.getName(),
282 resourceActionModelImpl.getOriginalName()) ||
283 !Validator.equals(resourceAction.getActionId(),
284 resourceActionModelImpl.getOriginalActionId()))) {
285 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_A,
286 new Object[] {
287 resourceAction.getName(),
288
289 resourceAction.getActionId()
290 }, resourceAction);
291 }
292
293 return resourceAction;
294 }
295
296 protected ResourceAction toUnwrappedModel(ResourceAction resourceAction) {
297 if (resourceAction instanceof ResourceActionImpl) {
298 return resourceAction;
299 }
300
301 ResourceActionImpl resourceActionImpl = new ResourceActionImpl();
302
303 resourceActionImpl.setNew(resourceAction.isNew());
304 resourceActionImpl.setPrimaryKey(resourceAction.getPrimaryKey());
305
306 resourceActionImpl.setResourceActionId(resourceAction.getResourceActionId());
307 resourceActionImpl.setName(resourceAction.getName());
308 resourceActionImpl.setActionId(resourceAction.getActionId());
309 resourceActionImpl.setBitwiseValue(resourceAction.getBitwiseValue());
310
311 return resourceActionImpl;
312 }
313
314 public ResourceAction findByPrimaryKey(Serializable primaryKey)
315 throws NoSuchModelException, SystemException {
316 return findByPrimaryKey(((Long)primaryKey).longValue());
317 }
318
319 public ResourceAction findByPrimaryKey(long resourceActionId)
320 throws NoSuchResourceActionException, SystemException {
321 ResourceAction resourceAction = fetchByPrimaryKey(resourceActionId);
322
323 if (resourceAction == null) {
324 if (_log.isWarnEnabled()) {
325 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + resourceActionId);
326 }
327
328 throw new NoSuchResourceActionException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
329 resourceActionId);
330 }
331
332 return resourceAction;
333 }
334
335 public ResourceAction fetchByPrimaryKey(Serializable primaryKey)
336 throws SystemException {
337 return fetchByPrimaryKey(((Long)primaryKey).longValue());
338 }
339
340 public ResourceAction fetchByPrimaryKey(long resourceActionId)
341 throws SystemException {
342 ResourceAction resourceAction = (ResourceAction)EntityCacheUtil.getResult(ResourceActionModelImpl.ENTITY_CACHE_ENABLED,
343 ResourceActionImpl.class, resourceActionId, this);
344
345 if (resourceAction == null) {
346 Session session = null;
347
348 try {
349 session = openSession();
350
351 resourceAction = (ResourceAction)session.get(ResourceActionImpl.class,
352 new Long(resourceActionId));
353 }
354 catch (Exception e) {
355 throw processException(e);
356 }
357 finally {
358 if (resourceAction != null) {
359 cacheResult(resourceAction);
360 }
361
362 closeSession(session);
363 }
364 }
365
366 return resourceAction;
367 }
368
369 public List<ResourceAction> findByName(String name)
370 throws SystemException {
371 Object[] finderArgs = new Object[] { name };
372
373 List<ResourceAction> list = (List<ResourceAction>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_NAME,
374 finderArgs, this);
375
376 if (list == null) {
377 Session session = null;
378
379 try {
380 session = openSession();
381
382 StringBundler query = new StringBundler(3);
383
384 query.append(_SQL_SELECT_RESOURCEACTION_WHERE);
385
386 if (name == null) {
387 query.append(_FINDER_COLUMN_NAME_NAME_1);
388 }
389 else {
390 if (name.equals(StringPool.BLANK)) {
391 query.append(_FINDER_COLUMN_NAME_NAME_3);
392 }
393 else {
394 query.append(_FINDER_COLUMN_NAME_NAME_2);
395 }
396 }
397
398 query.append(ResourceActionModelImpl.ORDER_BY_JPQL);
399
400 String sql = query.toString();
401
402 Query q = session.createQuery(sql);
403
404 QueryPos qPos = QueryPos.getInstance(q);
405
406 if (name != null) {
407 qPos.add(name);
408 }
409
410 list = q.list();
411 }
412 catch (Exception e) {
413 throw processException(e);
414 }
415 finally {
416 if (list == null) {
417 list = new ArrayList<ResourceAction>();
418 }
419
420 cacheResult(list);
421
422 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_NAME, finderArgs,
423 list);
424
425 closeSession(session);
426 }
427 }
428
429 return list;
430 }
431
432 public List<ResourceAction> findByName(String name, int start, int end)
433 throws SystemException {
434 return findByName(name, start, end, null);
435 }
436
437 public List<ResourceAction> findByName(String name, int start, int end,
438 OrderByComparator obc) throws SystemException {
439 Object[] finderArgs = new Object[] {
440 name,
441
442 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
443 };
444
445 List<ResourceAction> list = (List<ResourceAction>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_OBC_NAME,
446 finderArgs, this);
447
448 if (list == null) {
449 Session session = null;
450
451 try {
452 session = openSession();
453
454 StringBundler query = null;
455
456 if (obc != null) {
457 query = new StringBundler(3 +
458 (obc.getOrderByFields().length * 3));
459 }
460 else {
461 query = new StringBundler(3);
462 }
463
464 query.append(_SQL_SELECT_RESOURCEACTION_WHERE);
465
466 if (name == null) {
467 query.append(_FINDER_COLUMN_NAME_NAME_1);
468 }
469 else {
470 if (name.equals(StringPool.BLANK)) {
471 query.append(_FINDER_COLUMN_NAME_NAME_3);
472 }
473 else {
474 query.append(_FINDER_COLUMN_NAME_NAME_2);
475 }
476 }
477
478 if (obc != null) {
479 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
480 }
481
482 else {
483 query.append(ResourceActionModelImpl.ORDER_BY_JPQL);
484 }
485
486 String sql = query.toString();
487
488 Query q = session.createQuery(sql);
489
490 QueryPos qPos = QueryPos.getInstance(q);
491
492 if (name != null) {
493 qPos.add(name);
494 }
495
496 list = (List<ResourceAction>)QueryUtil.list(q, getDialect(),
497 start, end);
498 }
499 catch (Exception e) {
500 throw processException(e);
501 }
502 finally {
503 if (list == null) {
504 list = new ArrayList<ResourceAction>();
505 }
506
507 cacheResult(list);
508
509 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_OBC_NAME,
510 finderArgs, list);
511
512 closeSession(session);
513 }
514 }
515
516 return list;
517 }
518
519 public ResourceAction findByName_First(String name, OrderByComparator obc)
520 throws NoSuchResourceActionException, SystemException {
521 List<ResourceAction> list = findByName(name, 0, 1, obc);
522
523 if (list.isEmpty()) {
524 StringBundler msg = new StringBundler(4);
525
526 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
527
528 msg.append("name=");
529 msg.append(name);
530
531 msg.append(StringPool.CLOSE_CURLY_BRACE);
532
533 throw new NoSuchResourceActionException(msg.toString());
534 }
535 else {
536 return list.get(0);
537 }
538 }
539
540 public ResourceAction findByName_Last(String name, OrderByComparator obc)
541 throws NoSuchResourceActionException, SystemException {
542 int count = countByName(name);
543
544 List<ResourceAction> list = findByName(name, count - 1, count, obc);
545
546 if (list.isEmpty()) {
547 StringBundler msg = new StringBundler(4);
548
549 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
550
551 msg.append("name=");
552 msg.append(name);
553
554 msg.append(StringPool.CLOSE_CURLY_BRACE);
555
556 throw new NoSuchResourceActionException(msg.toString());
557 }
558 else {
559 return list.get(0);
560 }
561 }
562
563 public ResourceAction[] findByName_PrevAndNext(long resourceActionId,
564 String name, OrderByComparator obc)
565 throws NoSuchResourceActionException, SystemException {
566 ResourceAction resourceAction = findByPrimaryKey(resourceActionId);
567
568 int count = countByName(name);
569
570 Session session = null;
571
572 try {
573 session = openSession();
574
575 StringBundler query = null;
576
577 if (obc != null) {
578 query = new StringBundler(3 +
579 (obc.getOrderByFields().length * 3));
580 }
581 else {
582 query = new StringBundler(3);
583 }
584
585 query.append(_SQL_SELECT_RESOURCEACTION_WHERE);
586
587 if (name == null) {
588 query.append(_FINDER_COLUMN_NAME_NAME_1);
589 }
590 else {
591 if (name.equals(StringPool.BLANK)) {
592 query.append(_FINDER_COLUMN_NAME_NAME_3);
593 }
594 else {
595 query.append(_FINDER_COLUMN_NAME_NAME_2);
596 }
597 }
598
599 if (obc != null) {
600 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
601 }
602
603 else {
604 query.append(ResourceActionModelImpl.ORDER_BY_JPQL);
605 }
606
607 String sql = query.toString();
608
609 Query q = session.createQuery(sql);
610
611 QueryPos qPos = QueryPos.getInstance(q);
612
613 if (name != null) {
614 qPos.add(name);
615 }
616
617 Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
618 resourceAction);
619
620 ResourceAction[] array = new ResourceActionImpl[3];
621
622 array[0] = (ResourceAction)objArray[0];
623 array[1] = (ResourceAction)objArray[1];
624 array[2] = (ResourceAction)objArray[2];
625
626 return array;
627 }
628 catch (Exception e) {
629 throw processException(e);
630 }
631 finally {
632 closeSession(session);
633 }
634 }
635
636 public ResourceAction findByN_A(String name, String actionId)
637 throws NoSuchResourceActionException, SystemException {
638 ResourceAction resourceAction = fetchByN_A(name, actionId);
639
640 if (resourceAction == null) {
641 StringBundler msg = new StringBundler(6);
642
643 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
644
645 msg.append("name=");
646 msg.append(name);
647
648 msg.append(", actionId=");
649 msg.append(actionId);
650
651 msg.append(StringPool.CLOSE_CURLY_BRACE);
652
653 if (_log.isWarnEnabled()) {
654 _log.warn(msg.toString());
655 }
656
657 throw new NoSuchResourceActionException(msg.toString());
658 }
659
660 return resourceAction;
661 }
662
663 public ResourceAction fetchByN_A(String name, String actionId)
664 throws SystemException {
665 return fetchByN_A(name, actionId, true);
666 }
667
668 public ResourceAction fetchByN_A(String name, String actionId,
669 boolean retrieveFromCache) throws SystemException {
670 Object[] finderArgs = new Object[] { name, actionId };
671
672 Object result = null;
673
674 if (retrieveFromCache) {
675 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_N_A,
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(4);
686
687 query.append(_SQL_SELECT_RESOURCEACTION_WHERE);
688
689 if (name == null) {
690 query.append(_FINDER_COLUMN_N_A_NAME_1);
691 }
692 else {
693 if (name.equals(StringPool.BLANK)) {
694 query.append(_FINDER_COLUMN_N_A_NAME_3);
695 }
696 else {
697 query.append(_FINDER_COLUMN_N_A_NAME_2);
698 }
699 }
700
701 if (actionId == null) {
702 query.append(_FINDER_COLUMN_N_A_ACTIONID_1);
703 }
704 else {
705 if (actionId.equals(StringPool.BLANK)) {
706 query.append(_FINDER_COLUMN_N_A_ACTIONID_3);
707 }
708 else {
709 query.append(_FINDER_COLUMN_N_A_ACTIONID_2);
710 }
711 }
712
713 query.append(ResourceActionModelImpl.ORDER_BY_JPQL);
714
715 String sql = query.toString();
716
717 Query q = session.createQuery(sql);
718
719 QueryPos qPos = QueryPos.getInstance(q);
720
721 if (name != null) {
722 qPos.add(name);
723 }
724
725 if (actionId != null) {
726 qPos.add(actionId);
727 }
728
729 List<ResourceAction> list = q.list();
730
731 result = list;
732
733 ResourceAction resourceAction = null;
734
735 if (list.isEmpty()) {
736 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_A,
737 finderArgs, list);
738 }
739 else {
740 resourceAction = list.get(0);
741
742 cacheResult(resourceAction);
743
744 if ((resourceAction.getName() == null) ||
745 !resourceAction.getName().equals(name) ||
746 (resourceAction.getActionId() == null) ||
747 !resourceAction.getActionId().equals(actionId)) {
748 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_A,
749 finderArgs, resourceAction);
750 }
751 }
752
753 return resourceAction;
754 }
755 catch (Exception e) {
756 throw processException(e);
757 }
758 finally {
759 if (result == null) {
760 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_N_A,
761 finderArgs, new ArrayList<ResourceAction>());
762 }
763
764 closeSession(session);
765 }
766 }
767 else {
768 if (result instanceof List<?>) {
769 return null;
770 }
771 else {
772 return (ResourceAction)result;
773 }
774 }
775 }
776
777 public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery)
778 throws SystemException {
779 Session session = null;
780
781 try {
782 session = openSession();
783
784 dynamicQuery.compile(session);
785
786 return dynamicQuery.list();
787 }
788 catch (Exception e) {
789 throw processException(e);
790 }
791 finally {
792 closeSession(session);
793 }
794 }
795
796 public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery,
797 int start, int end) throws SystemException {
798 Session session = null;
799
800 try {
801 session = openSession();
802
803 dynamicQuery.setLimit(start, end);
804
805 dynamicQuery.compile(session);
806
807 return dynamicQuery.list();
808 }
809 catch (Exception e) {
810 throw processException(e);
811 }
812 finally {
813 closeSession(session);
814 }
815 }
816
817 public List<ResourceAction> findAll() throws SystemException {
818 return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
819 }
820
821 public List<ResourceAction> findAll(int start, int end)
822 throws SystemException {
823 return findAll(start, end, null);
824 }
825
826 public List<ResourceAction> findAll(int start, int end,
827 OrderByComparator obc) throws SystemException {
828 Object[] finderArgs = new Object[] {
829 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
830 };
831
832 List<ResourceAction> list = (List<ResourceAction>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
833 finderArgs, this);
834
835 if (list == null) {
836 Session session = null;
837
838 try {
839 session = openSession();
840
841 StringBundler query = null;
842 String sql = null;
843
844 if (obc != null) {
845 query = new StringBundler(2 +
846 (obc.getOrderByFields().length * 3));
847
848 query.append(_SQL_SELECT_RESOURCEACTION);
849
850 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS, obc);
851
852 sql = query.toString();
853 }
854
855 else {
856 sql = _SQL_SELECT_RESOURCEACTION.concat(ResourceActionModelImpl.ORDER_BY_JPQL);
857 }
858
859 Query q = session.createQuery(sql);
860
861 if (obc == null) {
862 list = (List<ResourceAction>)QueryUtil.list(q,
863 getDialect(), start, end, false);
864
865 Collections.sort(list);
866 }
867 else {
868 list = (List<ResourceAction>)QueryUtil.list(q,
869 getDialect(), start, end);
870 }
871 }
872 catch (Exception e) {
873 throw processException(e);
874 }
875 finally {
876 if (list == null) {
877 list = new ArrayList<ResourceAction>();
878 }
879
880 cacheResult(list);
881
882 FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
883
884 closeSession(session);
885 }
886 }
887
888 return list;
889 }
890
891 public void removeByName(String name) throws SystemException {
892 for (ResourceAction resourceAction : findByName(name)) {
893 remove(resourceAction);
894 }
895 }
896
897 public void removeByN_A(String name, String actionId)
898 throws NoSuchResourceActionException, SystemException {
899 ResourceAction resourceAction = findByN_A(name, actionId);
900
901 remove(resourceAction);
902 }
903
904 public void removeAll() throws SystemException {
905 for (ResourceAction resourceAction : findAll()) {
906 remove(resourceAction);
907 }
908 }
909
910 public int countByName(String name) throws SystemException {
911 Object[] finderArgs = new Object[] { name };
912
913 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_NAME,
914 finderArgs, this);
915
916 if (count == null) {
917 Session session = null;
918
919 try {
920 session = openSession();
921
922 StringBundler query = new StringBundler(2);
923
924 query.append(_SQL_COUNT_RESOURCEACTION_WHERE);
925
926 if (name == null) {
927 query.append(_FINDER_COLUMN_NAME_NAME_1);
928 }
929 else {
930 if (name.equals(StringPool.BLANK)) {
931 query.append(_FINDER_COLUMN_NAME_NAME_3);
932 }
933 else {
934 query.append(_FINDER_COLUMN_NAME_NAME_2);
935 }
936 }
937
938 String sql = query.toString();
939
940 Query q = session.createQuery(sql);
941
942 QueryPos qPos = QueryPos.getInstance(q);
943
944 if (name != null) {
945 qPos.add(name);
946 }
947
948 count = (Long)q.uniqueResult();
949 }
950 catch (Exception e) {
951 throw processException(e);
952 }
953 finally {
954 if (count == null) {
955 count = Long.valueOf(0);
956 }
957
958 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_NAME,
959 finderArgs, count);
960
961 closeSession(session);
962 }
963 }
964
965 return count.intValue();
966 }
967
968 public int countByN_A(String name, String actionId)
969 throws SystemException {
970 Object[] finderArgs = new Object[] { name, actionId };
971
972 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_N_A,
973 finderArgs, this);
974
975 if (count == null) {
976 Session session = null;
977
978 try {
979 session = openSession();
980
981 StringBundler query = new StringBundler(3);
982
983 query.append(_SQL_COUNT_RESOURCEACTION_WHERE);
984
985 if (name == null) {
986 query.append(_FINDER_COLUMN_N_A_NAME_1);
987 }
988 else {
989 if (name.equals(StringPool.BLANK)) {
990 query.append(_FINDER_COLUMN_N_A_NAME_3);
991 }
992 else {
993 query.append(_FINDER_COLUMN_N_A_NAME_2);
994 }
995 }
996
997 if (actionId == null) {
998 query.append(_FINDER_COLUMN_N_A_ACTIONID_1);
999 }
1000 else {
1001 if (actionId.equals(StringPool.BLANK)) {
1002 query.append(_FINDER_COLUMN_N_A_ACTIONID_3);
1003 }
1004 else {
1005 query.append(_FINDER_COLUMN_N_A_ACTIONID_2);
1006 }
1007 }
1008
1009 String sql = query.toString();
1010
1011 Query q = session.createQuery(sql);
1012
1013 QueryPos qPos = QueryPos.getInstance(q);
1014
1015 if (name != null) {
1016 qPos.add(name);
1017 }
1018
1019 if (actionId != null) {
1020 qPos.add(actionId);
1021 }
1022
1023 count = (Long)q.uniqueResult();
1024 }
1025 catch (Exception e) {
1026 throw processException(e);
1027 }
1028 finally {
1029 if (count == null) {
1030 count = Long.valueOf(0);
1031 }
1032
1033 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_N_A, finderArgs,
1034 count);
1035
1036 closeSession(session);
1037 }
1038 }
1039
1040 return count.intValue();
1041 }
1042
1043 public int countAll() throws SystemException {
1044 Object[] finderArgs = new Object[0];
1045
1046 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
1047 finderArgs, this);
1048
1049 if (count == null) {
1050 Session session = null;
1051
1052 try {
1053 session = openSession();
1054
1055 Query q = session.createQuery(_SQL_COUNT_RESOURCEACTION);
1056
1057 count = (Long)q.uniqueResult();
1058 }
1059 catch (Exception e) {
1060 throw processException(e);
1061 }
1062 finally {
1063 if (count == null) {
1064 count = Long.valueOf(0);
1065 }
1066
1067 FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
1068 count);
1069
1070 closeSession(session);
1071 }
1072 }
1073
1074 return count.intValue();
1075 }
1076
1077 public void afterPropertiesSet() {
1078 String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
1079 com.liferay.portal.util.PropsUtil.get(
1080 "value.object.listener.com.liferay.portal.model.ResourceAction")));
1081
1082 if (listenerClassNames.length > 0) {
1083 try {
1084 List<ModelListener<ResourceAction>> listenersList = new ArrayList<ModelListener<ResourceAction>>();
1085
1086 for (String listenerClassName : listenerClassNames) {
1087 listenersList.add((ModelListener<ResourceAction>)Class.forName(
1088 listenerClassName).newInstance());
1089 }
1090
1091 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
1092 }
1093 catch (Exception e) {
1094 _log.error(e);
1095 }
1096 }
1097 }
1098
1099 @BeanReference(name = "com.liferay.portal.service.persistence.AccountPersistence")
1100 protected com.liferay.portal.service.persistence.AccountPersistence accountPersistence;
1101 @BeanReference(name = "com.liferay.portal.service.persistence.AddressPersistence")
1102 protected com.liferay.portal.service.persistence.AddressPersistence addressPersistence;
1103 @BeanReference(name = "com.liferay.portal.service.persistence.BrowserTrackerPersistence")
1104 protected com.liferay.portal.service.persistence.BrowserTrackerPersistence browserTrackerPersistence;
1105 @BeanReference(name = "com.liferay.portal.service.persistence.ClassNamePersistence")
1106 protected com.liferay.portal.service.persistence.ClassNamePersistence classNamePersistence;
1107 @BeanReference(name = "com.liferay.portal.service.persistence.CompanyPersistence")
1108 protected com.liferay.portal.service.persistence.CompanyPersistence companyPersistence;
1109 @BeanReference(name = "com.liferay.portal.service.persistence.ContactPersistence")
1110 protected com.liferay.portal.service.persistence.ContactPersistence contactPersistence;
1111 @BeanReference(name = "com.liferay.portal.service.persistence.CountryPersistence")
1112 protected com.liferay.portal.service.persistence.CountryPersistence countryPersistence;
1113 @BeanReference(name = "com.liferay.portal.service.persistence.EmailAddressPersistence")
1114 protected com.liferay.portal.service.persistence.EmailAddressPersistence emailAddressPersistence;
1115 @BeanReference(name = "com.liferay.portal.service.persistence.GroupPersistence")
1116 protected com.liferay.portal.service.persistence.GroupPersistence groupPersistence;
1117 @BeanReference(name = "com.liferay.portal.service.persistence.ImagePersistence")
1118 protected com.liferay.portal.service.persistence.ImagePersistence imagePersistence;
1119 @BeanReference(name = "com.liferay.portal.service.persistence.LayoutPersistence")
1120 protected com.liferay.portal.service.persistence.LayoutPersistence layoutPersistence;
1121 @BeanReference(name = "com.liferay.portal.service.persistence.LayoutPrototypePersistence")
1122 protected com.liferay.portal.service.persistence.LayoutPrototypePersistence layoutPrototypePersistence;
1123 @BeanReference(name = "com.liferay.portal.service.persistence.LayoutSetPersistence")
1124 protected com.liferay.portal.service.persistence.LayoutSetPersistence layoutSetPersistence;
1125 @BeanReference(name = "com.liferay.portal.service.persistence.LayoutSetPrototypePersistence")
1126 protected com.liferay.portal.service.persistence.LayoutSetPrototypePersistence layoutSetPrototypePersistence;
1127 @BeanReference(name = "com.liferay.portal.service.persistence.ListTypePersistence")
1128 protected com.liferay.portal.service.persistence.ListTypePersistence listTypePersistence;
1129 @BeanReference(name = "com.liferay.portal.service.persistence.LockPersistence")
1130 protected com.liferay.portal.service.persistence.LockPersistence lockPersistence;
1131 @BeanReference(name = "com.liferay.portal.service.persistence.MembershipRequestPersistence")
1132 protected com.liferay.portal.service.persistence.MembershipRequestPersistence membershipRequestPersistence;
1133 @BeanReference(name = "com.liferay.portal.service.persistence.OrganizationPersistence")
1134 protected com.liferay.portal.service.persistence.OrganizationPersistence organizationPersistence;
1135 @BeanReference(name = "com.liferay.portal.service.persistence.OrgGroupPermissionPersistence")
1136 protected com.liferay.portal.service.persistence.OrgGroupPermissionPersistence orgGroupPermissionPersistence;
1137 @BeanReference(name = "com.liferay.portal.service.persistence.OrgGroupRolePersistence")
1138 protected com.liferay.portal.service.persistence.OrgGroupRolePersistence orgGroupRolePersistence;
1139 @BeanReference(name = "com.liferay.portal.service.persistence.OrgLaborPersistence")
1140 protected com.liferay.portal.service.persistence.OrgLaborPersistence orgLaborPersistence;
1141 @BeanReference(name = "com.liferay.portal.service.persistence.PasswordPolicyPersistence")
1142 protected com.liferay.portal.service.persistence.PasswordPolicyPersistence passwordPolicyPersistence;
1143 @BeanReference(name = "com.liferay.portal.service.persistence.PasswordPolicyRelPersistence")
1144 protected com.liferay.portal.service.persistence.PasswordPolicyRelPersistence passwordPolicyRelPersistence;
1145 @BeanReference(name = "com.liferay.portal.service.persistence.PasswordTrackerPersistence")
1146 protected com.liferay.portal.service.persistence.PasswordTrackerPersistence passwordTrackerPersistence;
1147 @BeanReference(name = "com.liferay.portal.service.persistence.PermissionPersistence")
1148 protected com.liferay.portal.service.persistence.PermissionPersistence permissionPersistence;
1149 @BeanReference(name = "com.liferay.portal.service.persistence.PhonePersistence")
1150 protected com.liferay.portal.service.persistence.PhonePersistence phonePersistence;
1151 @BeanReference(name = "com.liferay.portal.service.persistence.PluginSettingPersistence")
1152 protected com.liferay.portal.service.persistence.PluginSettingPersistence pluginSettingPersistence;
1153 @BeanReference(name = "com.liferay.portal.service.persistence.PortletPersistence")
1154 protected com.liferay.portal.service.persistence.PortletPersistence portletPersistence;
1155 @BeanReference(name = "com.liferay.portal.service.persistence.PortletItemPersistence")
1156 protected com.liferay.portal.service.persistence.PortletItemPersistence portletItemPersistence;
1157 @BeanReference(name = "com.liferay.portal.service.persistence.PortletPreferencesPersistence")
1158 protected com.liferay.portal.service.persistence.PortletPreferencesPersistence portletPreferencesPersistence;
1159 @BeanReference(name = "com.liferay.portal.service.persistence.RegionPersistence")
1160 protected com.liferay.portal.service.persistence.RegionPersistence regionPersistence;
1161 @BeanReference(name = "com.liferay.portal.service.persistence.ReleasePersistence")
1162 protected com.liferay.portal.service.persistence.ReleasePersistence releasePersistence;
1163 @BeanReference(name = "com.liferay.portal.service.persistence.ResourcePersistence")
1164 protected com.liferay.portal.service.persistence.ResourcePersistence resourcePersistence;
1165 @BeanReference(name = "com.liferay.portal.service.persistence.ResourceActionPersistence")
1166 protected com.liferay.portal.service.persistence.ResourceActionPersistence resourceActionPersistence;
1167 @BeanReference(name = "com.liferay.portal.service.persistence.ResourceCodePersistence")
1168 protected com.liferay.portal.service.persistence.ResourceCodePersistence resourceCodePersistence;
1169 @BeanReference(name = "com.liferay.portal.service.persistence.ResourcePermissionPersistence")
1170 protected com.liferay.portal.service.persistence.ResourcePermissionPersistence resourcePermissionPersistence;
1171 @BeanReference(name = "com.liferay.portal.service.persistence.RolePersistence")
1172 protected com.liferay.portal.service.persistence.RolePersistence rolePersistence;
1173 @BeanReference(name = "com.liferay.portal.service.persistence.ServiceComponentPersistence")
1174 protected com.liferay.portal.service.persistence.ServiceComponentPersistence serviceComponentPersistence;
1175 @BeanReference(name = "com.liferay.portal.service.persistence.ShardPersistence")
1176 protected com.liferay.portal.service.persistence.ShardPersistence shardPersistence;
1177 @BeanReference(name = "com.liferay.portal.service.persistence.SubscriptionPersistence")
1178 protected com.liferay.portal.service.persistence.SubscriptionPersistence subscriptionPersistence;
1179 @BeanReference(name = "com.liferay.portal.service.persistence.UserPersistence")
1180 protected com.liferay.portal.service.persistence.UserPersistence userPersistence;
1181 @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupPersistence")
1182 protected com.liferay.portal.service.persistence.UserGroupPersistence userGroupPersistence;
1183 @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupGroupRolePersistence")
1184 protected com.liferay.portal.service.persistence.UserGroupGroupRolePersistence userGroupGroupRolePersistence;
1185 @BeanReference(name = "com.liferay.portal.service.persistence.UserGroupRolePersistence")
1186 protected com.liferay.portal.service.persistence.UserGroupRolePersistence userGroupRolePersistence;
1187 @BeanReference(name = "com.liferay.portal.service.persistence.UserIdMapperPersistence")
1188 protected com.liferay.portal.service.persistence.UserIdMapperPersistence userIdMapperPersistence;
1189 @BeanReference(name = "com.liferay.portal.service.persistence.UserTrackerPersistence")
1190 protected com.liferay.portal.service.persistence.UserTrackerPersistence userTrackerPersistence;
1191 @BeanReference(name = "com.liferay.portal.service.persistence.UserTrackerPathPersistence")
1192 protected com.liferay.portal.service.persistence.UserTrackerPathPersistence userTrackerPathPersistence;
1193 @BeanReference(name = "com.liferay.portal.service.persistence.WebDAVPropsPersistence")
1194 protected com.liferay.portal.service.persistence.WebDAVPropsPersistence webDAVPropsPersistence;
1195 @BeanReference(name = "com.liferay.portal.service.persistence.WebsitePersistence")
1196 protected com.liferay.portal.service.persistence.WebsitePersistence websitePersistence;
1197 @BeanReference(name = "com.liferay.portal.service.persistence.WorkflowDefinitionLinkPersistence")
1198 protected com.liferay.portal.service.persistence.WorkflowDefinitionLinkPersistence workflowDefinitionLinkPersistence;
1199 @BeanReference(name = "com.liferay.portal.service.persistence.WorkflowInstanceLinkPersistence")
1200 protected com.liferay.portal.service.persistence.WorkflowInstanceLinkPersistence workflowInstanceLinkPersistence;
1201 private static final String _SQL_SELECT_RESOURCEACTION = "SELECT resourceAction FROM ResourceAction resourceAction";
1202 private static final String _SQL_SELECT_RESOURCEACTION_WHERE = "SELECT resourceAction FROM ResourceAction resourceAction WHERE ";
1203 private static final String _SQL_COUNT_RESOURCEACTION = "SELECT COUNT(resourceAction) FROM ResourceAction resourceAction";
1204 private static final String _SQL_COUNT_RESOURCEACTION_WHERE = "SELECT COUNT(resourceAction) FROM ResourceAction resourceAction WHERE ";
1205 private static final String _FINDER_COLUMN_NAME_NAME_1 = "resourceAction.name IS NULL";
1206 private static final String _FINDER_COLUMN_NAME_NAME_2 = "resourceAction.name = ?";
1207 private static final String _FINDER_COLUMN_NAME_NAME_3 = "(resourceAction.name IS NULL OR resourceAction.name = ?)";
1208 private static final String _FINDER_COLUMN_N_A_NAME_1 = "resourceAction.name IS NULL AND ";
1209 private static final String _FINDER_COLUMN_N_A_NAME_2 = "resourceAction.name = ? AND ";
1210 private static final String _FINDER_COLUMN_N_A_NAME_3 = "(resourceAction.name IS NULL OR resourceAction.name = ?) AND ";
1211 private static final String _FINDER_COLUMN_N_A_ACTIONID_1 = "resourceAction.actionId IS NULL";
1212 private static final String _FINDER_COLUMN_N_A_ACTIONID_2 = "resourceAction.actionId = ?";
1213 private static final String _FINDER_COLUMN_N_A_ACTIONID_3 = "(resourceAction.actionId IS NULL OR resourceAction.actionId = ?)";
1214 private static final String _ORDER_BY_ENTITY_ALIAS = "resourceAction.";
1215 private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No ResourceAction exists with the primary key ";
1216 private static final String _NO_SUCH_ENTITY_WITH_KEY = "No ResourceAction exists with the key {";
1217 private static Log _log = LogFactoryUtil.getLog(ResourceActionPersistenceImpl.class);
1218}