1
19
20 package com.liferay.portal.service.persistence;
21
22 import com.liferay.portal.NoSuchPasswordPolicyException;
23 import com.liferay.portal.SystemException;
24 import com.liferay.portal.kernel.dao.orm.DynamicQuery;
25 import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
26 import com.liferay.portal.kernel.dao.orm.Query;
27 import com.liferay.portal.kernel.dao.orm.QueryPos;
28 import com.liferay.portal.kernel.dao.orm.QueryUtil;
29 import com.liferay.portal.kernel.dao.orm.Session;
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.StringPool;
35 import com.liferay.portal.kernel.util.StringUtil;
36 import com.liferay.portal.model.ModelListener;
37 import com.liferay.portal.model.PasswordPolicy;
38 import com.liferay.portal.model.impl.PasswordPolicyImpl;
39 import com.liferay.portal.model.impl.PasswordPolicyModelImpl;
40 import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
41
42 import java.util.ArrayList;
43 import java.util.Collections;
44 import java.util.Iterator;
45 import java.util.List;
46
47
53 public class PasswordPolicyPersistenceImpl extends BasePersistenceImpl
54 implements PasswordPolicyPersistence {
55 public PasswordPolicy create(long passwordPolicyId) {
56 PasswordPolicy passwordPolicy = new PasswordPolicyImpl();
57
58 passwordPolicy.setNew(true);
59 passwordPolicy.setPrimaryKey(passwordPolicyId);
60
61 return passwordPolicy;
62 }
63
64 public PasswordPolicy remove(long passwordPolicyId)
65 throws NoSuchPasswordPolicyException, SystemException {
66 Session session = null;
67
68 try {
69 session = openSession();
70
71 PasswordPolicy passwordPolicy = (PasswordPolicy)session.get(PasswordPolicyImpl.class,
72 new Long(passwordPolicyId));
73
74 if (passwordPolicy == null) {
75 if (_log.isWarnEnabled()) {
76 _log.warn("No PasswordPolicy exists with the primary key " +
77 passwordPolicyId);
78 }
79
80 throw new NoSuchPasswordPolicyException(
81 "No PasswordPolicy exists with the primary key " +
82 passwordPolicyId);
83 }
84
85 return remove(passwordPolicy);
86 }
87 catch (NoSuchPasswordPolicyException nsee) {
88 throw nsee;
89 }
90 catch (Exception e) {
91 throw processException(e);
92 }
93 finally {
94 closeSession(session);
95 }
96 }
97
98 public PasswordPolicy remove(PasswordPolicy passwordPolicy)
99 throws SystemException {
100 for (ModelListener listener : listeners) {
101 listener.onBeforeRemove(passwordPolicy);
102 }
103
104 passwordPolicy = removeImpl(passwordPolicy);
105
106 for (ModelListener listener : listeners) {
107 listener.onAfterRemove(passwordPolicy);
108 }
109
110 return passwordPolicy;
111 }
112
113 protected PasswordPolicy removeImpl(PasswordPolicy passwordPolicy)
114 throws SystemException {
115 Session session = null;
116
117 try {
118 session = openSession();
119
120 if (BatchSessionUtil.isEnabled()) {
121 Object staleObject = session.get(PasswordPolicyImpl.class,
122 passwordPolicy.getPrimaryKeyObj());
123
124 if (staleObject != null) {
125 session.evict(staleObject);
126 }
127 }
128
129 session.delete(passwordPolicy);
130
131 session.flush();
132
133 return passwordPolicy;
134 }
135 catch (Exception e) {
136 throw processException(e);
137 }
138 finally {
139 closeSession(session);
140
141 FinderCacheUtil.clearCache(PasswordPolicy.class.getName());
142 }
143 }
144
145
148 public PasswordPolicy update(PasswordPolicy passwordPolicy)
149 throws SystemException {
150 if (_log.isWarnEnabled()) {
151 _log.warn(
152 "Using the deprecated update(PasswordPolicy passwordPolicy) method. Use update(PasswordPolicy passwordPolicy, boolean merge) instead.");
153 }
154
155 return update(passwordPolicy, false);
156 }
157
158
171 public PasswordPolicy update(PasswordPolicy passwordPolicy, boolean merge)
172 throws SystemException {
173 boolean isNew = passwordPolicy.isNew();
174
175 for (ModelListener listener : listeners) {
176 if (isNew) {
177 listener.onBeforeCreate(passwordPolicy);
178 }
179 else {
180 listener.onBeforeUpdate(passwordPolicy);
181 }
182 }
183
184 passwordPolicy = updateImpl(passwordPolicy, merge);
185
186 for (ModelListener listener : listeners) {
187 if (isNew) {
188 listener.onAfterCreate(passwordPolicy);
189 }
190 else {
191 listener.onAfterUpdate(passwordPolicy);
192 }
193 }
194
195 return passwordPolicy;
196 }
197
198 public PasswordPolicy updateImpl(
199 com.liferay.portal.model.PasswordPolicy passwordPolicy, boolean merge)
200 throws SystemException {
201 Session session = null;
202
203 try {
204 session = openSession();
205
206 BatchSessionUtil.update(session, passwordPolicy, merge);
207
208 passwordPolicy.setNew(false);
209
210 return passwordPolicy;
211 }
212 catch (Exception e) {
213 throw processException(e);
214 }
215 finally {
216 closeSession(session);
217
218 FinderCacheUtil.clearCache(PasswordPolicy.class.getName());
219 }
220 }
221
222 public PasswordPolicy findByPrimaryKey(long passwordPolicyId)
223 throws NoSuchPasswordPolicyException, SystemException {
224 PasswordPolicy passwordPolicy = fetchByPrimaryKey(passwordPolicyId);
225
226 if (passwordPolicy == null) {
227 if (_log.isWarnEnabled()) {
228 _log.warn("No PasswordPolicy exists with the primary key " +
229 passwordPolicyId);
230 }
231
232 throw new NoSuchPasswordPolicyException(
233 "No PasswordPolicy exists with the primary key " +
234 passwordPolicyId);
235 }
236
237 return passwordPolicy;
238 }
239
240 public PasswordPolicy fetchByPrimaryKey(long passwordPolicyId)
241 throws SystemException {
242 Session session = null;
243
244 try {
245 session = openSession();
246
247 return (PasswordPolicy)session.get(PasswordPolicyImpl.class,
248 new Long(passwordPolicyId));
249 }
250 catch (Exception e) {
251 throw processException(e);
252 }
253 finally {
254 closeSession(session);
255 }
256 }
257
258 public PasswordPolicy findByC_DP(long companyId, boolean defaultPolicy)
259 throws NoSuchPasswordPolicyException, SystemException {
260 PasswordPolicy passwordPolicy = fetchByC_DP(companyId, defaultPolicy);
261
262 if (passwordPolicy == null) {
263 StringBuilder msg = new StringBuilder();
264
265 msg.append("No PasswordPolicy exists with the key {");
266
267 msg.append("companyId=" + companyId);
268
269 msg.append(", ");
270 msg.append("defaultPolicy=" + defaultPolicy);
271
272 msg.append(StringPool.CLOSE_CURLY_BRACE);
273
274 if (_log.isWarnEnabled()) {
275 _log.warn(msg.toString());
276 }
277
278 throw new NoSuchPasswordPolicyException(msg.toString());
279 }
280
281 return passwordPolicy;
282 }
283
284 public PasswordPolicy fetchByC_DP(long companyId, boolean defaultPolicy)
285 throws SystemException {
286 boolean finderClassNameCacheEnabled = PasswordPolicyModelImpl.CACHE_ENABLED;
287 String finderClassName = PasswordPolicy.class.getName();
288 String finderMethodName = "fetchByC_DP";
289 String[] finderParams = new String[] {
290 Long.class.getName(), Boolean.class.getName()
291 };
292 Object[] finderArgs = new Object[] {
293 new Long(companyId), Boolean.valueOf(defaultPolicy)
294 };
295
296 Object result = null;
297
298 if (finderClassNameCacheEnabled) {
299 result = FinderCacheUtil.getResult(finderClassName,
300 finderMethodName, finderParams, finderArgs, this);
301 }
302
303 if (result == null) {
304 Session session = null;
305
306 try {
307 session = openSession();
308
309 StringBuilder query = new StringBuilder();
310
311 query.append(
312 "FROM com.liferay.portal.model.PasswordPolicy WHERE ");
313
314 query.append("companyId = ?");
315
316 query.append(" AND ");
317
318 query.append("defaultPolicy = ?");
319
320 query.append(" ");
321
322 Query q = session.createQuery(query.toString());
323
324 QueryPos qPos = QueryPos.getInstance(q);
325
326 qPos.add(companyId);
327
328 qPos.add(defaultPolicy);
329
330 List<PasswordPolicy> list = q.list();
331
332 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
333 finderClassName, finderMethodName, finderParams,
334 finderArgs, list);
335
336 if (list.size() == 0) {
337 return null;
338 }
339 else {
340 return list.get(0);
341 }
342 }
343 catch (Exception e) {
344 throw processException(e);
345 }
346 finally {
347 closeSession(session);
348 }
349 }
350 else {
351 List<PasswordPolicy> list = (List<PasswordPolicy>)result;
352
353 if (list.size() == 0) {
354 return null;
355 }
356 else {
357 return list.get(0);
358 }
359 }
360 }
361
362 public PasswordPolicy findByC_N(long companyId, String name)
363 throws NoSuchPasswordPolicyException, SystemException {
364 PasswordPolicy passwordPolicy = fetchByC_N(companyId, name);
365
366 if (passwordPolicy == null) {
367 StringBuilder msg = new StringBuilder();
368
369 msg.append("No PasswordPolicy exists with the key {");
370
371 msg.append("companyId=" + companyId);
372
373 msg.append(", ");
374 msg.append("name=" + name);
375
376 msg.append(StringPool.CLOSE_CURLY_BRACE);
377
378 if (_log.isWarnEnabled()) {
379 _log.warn(msg.toString());
380 }
381
382 throw new NoSuchPasswordPolicyException(msg.toString());
383 }
384
385 return passwordPolicy;
386 }
387
388 public PasswordPolicy fetchByC_N(long companyId, String name)
389 throws SystemException {
390 boolean finderClassNameCacheEnabled = PasswordPolicyModelImpl.CACHE_ENABLED;
391 String finderClassName = PasswordPolicy.class.getName();
392 String finderMethodName = "fetchByC_N";
393 String[] finderParams = new String[] {
394 Long.class.getName(), String.class.getName()
395 };
396 Object[] finderArgs = new Object[] { new Long(companyId), name };
397
398 Object result = null;
399
400 if (finderClassNameCacheEnabled) {
401 result = FinderCacheUtil.getResult(finderClassName,
402 finderMethodName, finderParams, finderArgs, this);
403 }
404
405 if (result == null) {
406 Session session = null;
407
408 try {
409 session = openSession();
410
411 StringBuilder query = new StringBuilder();
412
413 query.append(
414 "FROM com.liferay.portal.model.PasswordPolicy WHERE ");
415
416 query.append("companyId = ?");
417
418 query.append(" AND ");
419
420 if (name == null) {
421 query.append("name IS NULL");
422 }
423 else {
424 query.append("name = ?");
425 }
426
427 query.append(" ");
428
429 Query q = session.createQuery(query.toString());
430
431 QueryPos qPos = QueryPos.getInstance(q);
432
433 qPos.add(companyId);
434
435 if (name != null) {
436 qPos.add(name);
437 }
438
439 List<PasswordPolicy> list = q.list();
440
441 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
442 finderClassName, finderMethodName, finderParams,
443 finderArgs, list);
444
445 if (list.size() == 0) {
446 return null;
447 }
448 else {
449 return list.get(0);
450 }
451 }
452 catch (Exception e) {
453 throw processException(e);
454 }
455 finally {
456 closeSession(session);
457 }
458 }
459 else {
460 List<PasswordPolicy> list = (List<PasswordPolicy>)result;
461
462 if (list.size() == 0) {
463 return null;
464 }
465 else {
466 return list.get(0);
467 }
468 }
469 }
470
471 public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery)
472 throws SystemException {
473 Session session = null;
474
475 try {
476 session = openSession();
477
478 dynamicQuery.compile(session);
479
480 return dynamicQuery.list();
481 }
482 catch (Exception e) {
483 throw processException(e);
484 }
485 finally {
486 closeSession(session);
487 }
488 }
489
490 public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery,
491 int start, int end) throws SystemException {
492 Session session = null;
493
494 try {
495 session = openSession();
496
497 dynamicQuery.setLimit(start, end);
498
499 dynamicQuery.compile(session);
500
501 return dynamicQuery.list();
502 }
503 catch (Exception e) {
504 throw processException(e);
505 }
506 finally {
507 closeSession(session);
508 }
509 }
510
511 public List<PasswordPolicy> findAll() throws SystemException {
512 return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
513 }
514
515 public List<PasswordPolicy> findAll(int start, int end)
516 throws SystemException {
517 return findAll(start, end, null);
518 }
519
520 public List<PasswordPolicy> findAll(int start, int end,
521 OrderByComparator obc) throws SystemException {
522 boolean finderClassNameCacheEnabled = PasswordPolicyModelImpl.CACHE_ENABLED;
523 String finderClassName = PasswordPolicy.class.getName();
524 String finderMethodName = "findAll";
525 String[] finderParams = new String[] {
526 "java.lang.Integer", "java.lang.Integer",
527 "com.liferay.portal.kernel.util.OrderByComparator"
528 };
529 Object[] finderArgs = new Object[] {
530 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
531 };
532
533 Object result = null;
534
535 if (finderClassNameCacheEnabled) {
536 result = FinderCacheUtil.getResult(finderClassName,
537 finderMethodName, finderParams, finderArgs, this);
538 }
539
540 if (result == null) {
541 Session session = null;
542
543 try {
544 session = openSession();
545
546 StringBuilder query = new StringBuilder();
547
548 query.append("FROM com.liferay.portal.model.PasswordPolicy ");
549
550 if (obc != null) {
551 query.append("ORDER BY ");
552 query.append(obc.getOrderBy());
553 }
554
555 Query q = session.createQuery(query.toString());
556
557 List<PasswordPolicy> list = null;
558
559 if (obc == null) {
560 list = (List<PasswordPolicy>)QueryUtil.list(q,
561 getDialect(), start, end, false);
562
563 Collections.sort(list);
564 }
565 else {
566 list = (List<PasswordPolicy>)QueryUtil.list(q,
567 getDialect(), start, end);
568 }
569
570 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
571 finderClassName, finderMethodName, finderParams,
572 finderArgs, list);
573
574 return list;
575 }
576 catch (Exception e) {
577 throw processException(e);
578 }
579 finally {
580 closeSession(session);
581 }
582 }
583 else {
584 return (List<PasswordPolicy>)result;
585 }
586 }
587
588 public void removeByC_DP(long companyId, boolean defaultPolicy)
589 throws NoSuchPasswordPolicyException, SystemException {
590 PasswordPolicy passwordPolicy = findByC_DP(companyId, defaultPolicy);
591
592 remove(passwordPolicy);
593 }
594
595 public void removeByC_N(long companyId, String name)
596 throws NoSuchPasswordPolicyException, SystemException {
597 PasswordPolicy passwordPolicy = findByC_N(companyId, name);
598
599 remove(passwordPolicy);
600 }
601
602 public void removeAll() throws SystemException {
603 for (PasswordPolicy passwordPolicy : findAll()) {
604 remove(passwordPolicy);
605 }
606 }
607
608 public int countByC_DP(long companyId, boolean defaultPolicy)
609 throws SystemException {
610 boolean finderClassNameCacheEnabled = PasswordPolicyModelImpl.CACHE_ENABLED;
611 String finderClassName = PasswordPolicy.class.getName();
612 String finderMethodName = "countByC_DP";
613 String[] finderParams = new String[] {
614 Long.class.getName(), Boolean.class.getName()
615 };
616 Object[] finderArgs = new Object[] {
617 new Long(companyId), Boolean.valueOf(defaultPolicy)
618 };
619
620 Object result = null;
621
622 if (finderClassNameCacheEnabled) {
623 result = FinderCacheUtil.getResult(finderClassName,
624 finderMethodName, finderParams, finderArgs, this);
625 }
626
627 if (result == null) {
628 Session session = null;
629
630 try {
631 session = openSession();
632
633 StringBuilder query = new StringBuilder();
634
635 query.append("SELECT COUNT(*) ");
636 query.append(
637 "FROM com.liferay.portal.model.PasswordPolicy WHERE ");
638
639 query.append("companyId = ?");
640
641 query.append(" AND ");
642
643 query.append("defaultPolicy = ?");
644
645 query.append(" ");
646
647 Query q = session.createQuery(query.toString());
648
649 QueryPos qPos = QueryPos.getInstance(q);
650
651 qPos.add(companyId);
652
653 qPos.add(defaultPolicy);
654
655 Long count = null;
656
657 Iterator<Long> itr = q.list().iterator();
658
659 if (itr.hasNext()) {
660 count = itr.next();
661 }
662
663 if (count == null) {
664 count = new Long(0);
665 }
666
667 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
668 finderClassName, finderMethodName, finderParams,
669 finderArgs, count);
670
671 return count.intValue();
672 }
673 catch (Exception e) {
674 throw processException(e);
675 }
676 finally {
677 closeSession(session);
678 }
679 }
680 else {
681 return ((Long)result).intValue();
682 }
683 }
684
685 public int countByC_N(long companyId, String name)
686 throws SystemException {
687 boolean finderClassNameCacheEnabled = PasswordPolicyModelImpl.CACHE_ENABLED;
688 String finderClassName = PasswordPolicy.class.getName();
689 String finderMethodName = "countByC_N";
690 String[] finderParams = new String[] {
691 Long.class.getName(), String.class.getName()
692 };
693 Object[] finderArgs = new Object[] { new Long(companyId), name };
694
695 Object result = null;
696
697 if (finderClassNameCacheEnabled) {
698 result = FinderCacheUtil.getResult(finderClassName,
699 finderMethodName, finderParams, finderArgs, this);
700 }
701
702 if (result == null) {
703 Session session = null;
704
705 try {
706 session = openSession();
707
708 StringBuilder query = new StringBuilder();
709
710 query.append("SELECT COUNT(*) ");
711 query.append(
712 "FROM com.liferay.portal.model.PasswordPolicy WHERE ");
713
714 query.append("companyId = ?");
715
716 query.append(" AND ");
717
718 if (name == null) {
719 query.append("name IS NULL");
720 }
721 else {
722 query.append("name = ?");
723 }
724
725 query.append(" ");
726
727 Query q = session.createQuery(query.toString());
728
729 QueryPos qPos = QueryPos.getInstance(q);
730
731 qPos.add(companyId);
732
733 if (name != null) {
734 qPos.add(name);
735 }
736
737 Long count = null;
738
739 Iterator<Long> itr = q.list().iterator();
740
741 if (itr.hasNext()) {
742 count = itr.next();
743 }
744
745 if (count == null) {
746 count = new Long(0);
747 }
748
749 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
750 finderClassName, finderMethodName, finderParams,
751 finderArgs, count);
752
753 return count.intValue();
754 }
755 catch (Exception e) {
756 throw processException(e);
757 }
758 finally {
759 closeSession(session);
760 }
761 }
762 else {
763 return ((Long)result).intValue();
764 }
765 }
766
767 public int countAll() throws SystemException {
768 boolean finderClassNameCacheEnabled = PasswordPolicyModelImpl.CACHE_ENABLED;
769 String finderClassName = PasswordPolicy.class.getName();
770 String finderMethodName = "countAll";
771 String[] finderParams = new String[] { };
772 Object[] finderArgs = new Object[] { };
773
774 Object result = null;
775
776 if (finderClassNameCacheEnabled) {
777 result = FinderCacheUtil.getResult(finderClassName,
778 finderMethodName, finderParams, finderArgs, this);
779 }
780
781 if (result == null) {
782 Session session = null;
783
784 try {
785 session = openSession();
786
787 Query q = session.createQuery(
788 "SELECT COUNT(*) FROM com.liferay.portal.model.PasswordPolicy");
789
790 Long count = null;
791
792 Iterator<Long> itr = q.list().iterator();
793
794 if (itr.hasNext()) {
795 count = itr.next();
796 }
797
798 if (count == null) {
799 count = new Long(0);
800 }
801
802 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
803 finderClassName, finderMethodName, finderParams,
804 finderArgs, count);
805
806 return count.intValue();
807 }
808 catch (Exception e) {
809 throw processException(e);
810 }
811 finally {
812 closeSession(session);
813 }
814 }
815 else {
816 return ((Long)result).intValue();
817 }
818 }
819
820 public void afterPropertiesSet() {
821 String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
822 com.liferay.portal.util.PropsUtil.get(
823 "value.object.listener.com.liferay.portal.model.PasswordPolicy")));
824
825 if (listenerClassNames.length > 0) {
826 try {
827 List<ModelListener> listenersList = new ArrayList<ModelListener>();
828
829 for (String listenerClassName : listenerClassNames) {
830 listenersList.add((ModelListener)Class.forName(
831 listenerClassName).newInstance());
832 }
833
834 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
835 }
836 catch (Exception e) {
837 _log.error(e);
838 }
839 }
840 }
841
842 private static Log _log = LogFactoryUtil.getLog(PasswordPolicyPersistenceImpl.class);
843 }