1
22
23 package com.liferay.portlet.messageboards.service.persistence;
24
25 import com.liferay.portal.SystemException;
26 import com.liferay.portal.kernel.annotation.BeanReference;
27 import com.liferay.portal.kernel.dao.orm.DynamicQuery;
28 import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
29 import com.liferay.portal.kernel.dao.orm.Query;
30 import com.liferay.portal.kernel.dao.orm.QueryPos;
31 import com.liferay.portal.kernel.dao.orm.QueryUtil;
32 import com.liferay.portal.kernel.dao.orm.Session;
33 import com.liferay.portal.kernel.log.Log;
34 import com.liferay.portal.kernel.log.LogFactoryUtil;
35 import com.liferay.portal.kernel.util.GetterUtil;
36 import com.liferay.portal.kernel.util.OrderByComparator;
37 import com.liferay.portal.kernel.util.StringPool;
38 import com.liferay.portal.kernel.util.StringUtil;
39 import com.liferay.portal.model.ModelListener;
40 import com.liferay.portal.service.persistence.BatchSessionUtil;
41 import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
42
43 import com.liferay.portlet.messageboards.NoSuchMessageFlagException;
44 import com.liferay.portlet.messageboards.model.MBMessageFlag;
45 import com.liferay.portlet.messageboards.model.impl.MBMessageFlagImpl;
46 import com.liferay.portlet.messageboards.model.impl.MBMessageFlagModelImpl;
47
48 import java.util.ArrayList;
49 import java.util.Collections;
50 import java.util.Iterator;
51 import java.util.List;
52
53
59 public class MBMessageFlagPersistenceImpl extends BasePersistenceImpl
60 implements MBMessageFlagPersistence {
61 public MBMessageFlag create(long messageFlagId) {
62 MBMessageFlag mbMessageFlag = new MBMessageFlagImpl();
63
64 mbMessageFlag.setNew(true);
65 mbMessageFlag.setPrimaryKey(messageFlagId);
66
67 return mbMessageFlag;
68 }
69
70 public MBMessageFlag remove(long messageFlagId)
71 throws NoSuchMessageFlagException, SystemException {
72 Session session = null;
73
74 try {
75 session = openSession();
76
77 MBMessageFlag mbMessageFlag = (MBMessageFlag)session.get(MBMessageFlagImpl.class,
78 new Long(messageFlagId));
79
80 if (mbMessageFlag == null) {
81 if (_log.isWarnEnabled()) {
82 _log.warn("No MBMessageFlag exists with the primary key " +
83 messageFlagId);
84 }
85
86 throw new NoSuchMessageFlagException(
87 "No MBMessageFlag exists with the primary key " +
88 messageFlagId);
89 }
90
91 return remove(mbMessageFlag);
92 }
93 catch (NoSuchMessageFlagException nsee) {
94 throw nsee;
95 }
96 catch (Exception e) {
97 throw processException(e);
98 }
99 finally {
100 closeSession(session);
101 }
102 }
103
104 public MBMessageFlag remove(MBMessageFlag mbMessageFlag)
105 throws SystemException {
106 for (ModelListener listener : listeners) {
107 listener.onBeforeRemove(mbMessageFlag);
108 }
109
110 mbMessageFlag = removeImpl(mbMessageFlag);
111
112 for (ModelListener listener : listeners) {
113 listener.onAfterRemove(mbMessageFlag);
114 }
115
116 return mbMessageFlag;
117 }
118
119 protected MBMessageFlag removeImpl(MBMessageFlag mbMessageFlag)
120 throws SystemException {
121 Session session = null;
122
123 try {
124 session = openSession();
125
126 if (BatchSessionUtil.isEnabled()) {
127 Object staleObject = session.get(MBMessageFlagImpl.class,
128 mbMessageFlag.getPrimaryKeyObj());
129
130 if (staleObject != null) {
131 session.evict(staleObject);
132 }
133 }
134
135 session.delete(mbMessageFlag);
136
137 session.flush();
138
139 return mbMessageFlag;
140 }
141 catch (Exception e) {
142 throw processException(e);
143 }
144 finally {
145 closeSession(session);
146
147 FinderCacheUtil.clearCache(MBMessageFlag.class.getName());
148 }
149 }
150
151
154 public MBMessageFlag update(MBMessageFlag mbMessageFlag)
155 throws SystemException {
156 if (_log.isWarnEnabled()) {
157 _log.warn(
158 "Using the deprecated update(MBMessageFlag mbMessageFlag) method. Use update(MBMessageFlag mbMessageFlag, boolean merge) instead.");
159 }
160
161 return update(mbMessageFlag, false);
162 }
163
164
177 public MBMessageFlag update(MBMessageFlag mbMessageFlag, boolean merge)
178 throws SystemException {
179 boolean isNew = mbMessageFlag.isNew();
180
181 for (ModelListener listener : listeners) {
182 if (isNew) {
183 listener.onBeforeCreate(mbMessageFlag);
184 }
185 else {
186 listener.onBeforeUpdate(mbMessageFlag);
187 }
188 }
189
190 mbMessageFlag = updateImpl(mbMessageFlag, merge);
191
192 for (ModelListener listener : listeners) {
193 if (isNew) {
194 listener.onAfterCreate(mbMessageFlag);
195 }
196 else {
197 listener.onAfterUpdate(mbMessageFlag);
198 }
199 }
200
201 return mbMessageFlag;
202 }
203
204 public MBMessageFlag updateImpl(
205 com.liferay.portlet.messageboards.model.MBMessageFlag mbMessageFlag,
206 boolean merge) throws SystemException {
207 Session session = null;
208
209 try {
210 session = openSession();
211
212 BatchSessionUtil.update(session, mbMessageFlag, merge);
213
214 mbMessageFlag.setNew(false);
215
216 return mbMessageFlag;
217 }
218 catch (Exception e) {
219 throw processException(e);
220 }
221 finally {
222 closeSession(session);
223
224 FinderCacheUtil.clearCache(MBMessageFlag.class.getName());
225 }
226 }
227
228 public MBMessageFlag findByPrimaryKey(long messageFlagId)
229 throws NoSuchMessageFlagException, SystemException {
230 MBMessageFlag mbMessageFlag = fetchByPrimaryKey(messageFlagId);
231
232 if (mbMessageFlag == null) {
233 if (_log.isWarnEnabled()) {
234 _log.warn("No MBMessageFlag exists with the primary key " +
235 messageFlagId);
236 }
237
238 throw new NoSuchMessageFlagException(
239 "No MBMessageFlag exists with the primary key " +
240 messageFlagId);
241 }
242
243 return mbMessageFlag;
244 }
245
246 public MBMessageFlag fetchByPrimaryKey(long messageFlagId)
247 throws SystemException {
248 Session session = null;
249
250 try {
251 session = openSession();
252
253 return (MBMessageFlag)session.get(MBMessageFlagImpl.class,
254 new Long(messageFlagId));
255 }
256 catch (Exception e) {
257 throw processException(e);
258 }
259 finally {
260 closeSession(session);
261 }
262 }
263
264 public List<MBMessageFlag> findByUserId(long userId)
265 throws SystemException {
266 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
267 String finderClassName = MBMessageFlag.class.getName();
268 String finderMethodName = "findByUserId";
269 String[] finderParams = new String[] { Long.class.getName() };
270 Object[] finderArgs = new Object[] { new Long(userId) };
271
272 Object result = null;
273
274 if (finderClassNameCacheEnabled) {
275 result = FinderCacheUtil.getResult(finderClassName,
276 finderMethodName, finderParams, finderArgs, this);
277 }
278
279 if (result == null) {
280 Session session = null;
281
282 try {
283 session = openSession();
284
285 StringBuilder query = new StringBuilder();
286
287 query.append(
288 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
289
290 query.append("userId = ?");
291
292 query.append(" ");
293
294 Query q = session.createQuery(query.toString());
295
296 QueryPos qPos = QueryPos.getInstance(q);
297
298 qPos.add(userId);
299
300 List<MBMessageFlag> list = q.list();
301
302 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
303 finderClassName, finderMethodName, finderParams,
304 finderArgs, list);
305
306 return list;
307 }
308 catch (Exception e) {
309 throw processException(e);
310 }
311 finally {
312 closeSession(session);
313 }
314 }
315 else {
316 return (List<MBMessageFlag>)result;
317 }
318 }
319
320 public List<MBMessageFlag> findByUserId(long userId, int start, int end)
321 throws SystemException {
322 return findByUserId(userId, start, end, null);
323 }
324
325 public List<MBMessageFlag> findByUserId(long userId, int start, int end,
326 OrderByComparator obc) throws SystemException {
327 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
328 String finderClassName = MBMessageFlag.class.getName();
329 String finderMethodName = "findByUserId";
330 String[] finderParams = new String[] {
331 Long.class.getName(),
332
333 "java.lang.Integer", "java.lang.Integer",
334 "com.liferay.portal.kernel.util.OrderByComparator"
335 };
336 Object[] finderArgs = new Object[] {
337 new Long(userId),
338
339 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
340 };
341
342 Object result = null;
343
344 if (finderClassNameCacheEnabled) {
345 result = FinderCacheUtil.getResult(finderClassName,
346 finderMethodName, finderParams, finderArgs, this);
347 }
348
349 if (result == null) {
350 Session session = null;
351
352 try {
353 session = openSession();
354
355 StringBuilder query = new StringBuilder();
356
357 query.append(
358 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
359
360 query.append("userId = ?");
361
362 query.append(" ");
363
364 if (obc != null) {
365 query.append("ORDER BY ");
366 query.append(obc.getOrderBy());
367 }
368
369 Query q = session.createQuery(query.toString());
370
371 QueryPos qPos = QueryPos.getInstance(q);
372
373 qPos.add(userId);
374
375 List<MBMessageFlag> list = (List<MBMessageFlag>)QueryUtil.list(q,
376 getDialect(), start, end);
377
378 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
379 finderClassName, finderMethodName, finderParams,
380 finderArgs, list);
381
382 return list;
383 }
384 catch (Exception e) {
385 throw processException(e);
386 }
387 finally {
388 closeSession(session);
389 }
390 }
391 else {
392 return (List<MBMessageFlag>)result;
393 }
394 }
395
396 public MBMessageFlag findByUserId_First(long userId, OrderByComparator obc)
397 throws NoSuchMessageFlagException, SystemException {
398 List<MBMessageFlag> list = findByUserId(userId, 0, 1, obc);
399
400 if (list.size() == 0) {
401 StringBuilder msg = new StringBuilder();
402
403 msg.append("No MBMessageFlag exists with the key {");
404
405 msg.append("userId=" + userId);
406
407 msg.append(StringPool.CLOSE_CURLY_BRACE);
408
409 throw new NoSuchMessageFlagException(msg.toString());
410 }
411 else {
412 return list.get(0);
413 }
414 }
415
416 public MBMessageFlag findByUserId_Last(long userId, OrderByComparator obc)
417 throws NoSuchMessageFlagException, SystemException {
418 int count = countByUserId(userId);
419
420 List<MBMessageFlag> list = findByUserId(userId, count - 1, count, obc);
421
422 if (list.size() == 0) {
423 StringBuilder msg = new StringBuilder();
424
425 msg.append("No MBMessageFlag exists with the key {");
426
427 msg.append("userId=" + userId);
428
429 msg.append(StringPool.CLOSE_CURLY_BRACE);
430
431 throw new NoSuchMessageFlagException(msg.toString());
432 }
433 else {
434 return list.get(0);
435 }
436 }
437
438 public MBMessageFlag[] findByUserId_PrevAndNext(long messageFlagId,
439 long userId, OrderByComparator obc)
440 throws NoSuchMessageFlagException, SystemException {
441 MBMessageFlag mbMessageFlag = findByPrimaryKey(messageFlagId);
442
443 int count = countByUserId(userId);
444
445 Session session = null;
446
447 try {
448 session = openSession();
449
450 StringBuilder query = new StringBuilder();
451
452 query.append(
453 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
454
455 query.append("userId = ?");
456
457 query.append(" ");
458
459 if (obc != null) {
460 query.append("ORDER BY ");
461 query.append(obc.getOrderBy());
462 }
463
464 Query q = session.createQuery(query.toString());
465
466 QueryPos qPos = QueryPos.getInstance(q);
467
468 qPos.add(userId);
469
470 Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
471 mbMessageFlag);
472
473 MBMessageFlag[] array = new MBMessageFlagImpl[3];
474
475 array[0] = (MBMessageFlag)objArray[0];
476 array[1] = (MBMessageFlag)objArray[1];
477 array[2] = (MBMessageFlag)objArray[2];
478
479 return array;
480 }
481 catch (Exception e) {
482 throw processException(e);
483 }
484 finally {
485 closeSession(session);
486 }
487 }
488
489 public List<MBMessageFlag> findByMessageId(long messageId)
490 throws SystemException {
491 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
492 String finderClassName = MBMessageFlag.class.getName();
493 String finderMethodName = "findByMessageId";
494 String[] finderParams = new String[] { Long.class.getName() };
495 Object[] finderArgs = new Object[] { new Long(messageId) };
496
497 Object result = null;
498
499 if (finderClassNameCacheEnabled) {
500 result = FinderCacheUtil.getResult(finderClassName,
501 finderMethodName, finderParams, finderArgs, this);
502 }
503
504 if (result == null) {
505 Session session = null;
506
507 try {
508 session = openSession();
509
510 StringBuilder query = new StringBuilder();
511
512 query.append(
513 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
514
515 query.append("messageId = ?");
516
517 query.append(" ");
518
519 Query q = session.createQuery(query.toString());
520
521 QueryPos qPos = QueryPos.getInstance(q);
522
523 qPos.add(messageId);
524
525 List<MBMessageFlag> list = q.list();
526
527 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
528 finderClassName, finderMethodName, finderParams,
529 finderArgs, list);
530
531 return list;
532 }
533 catch (Exception e) {
534 throw processException(e);
535 }
536 finally {
537 closeSession(session);
538 }
539 }
540 else {
541 return (List<MBMessageFlag>)result;
542 }
543 }
544
545 public List<MBMessageFlag> findByMessageId(long messageId, int start,
546 int end) throws SystemException {
547 return findByMessageId(messageId, start, end, null);
548 }
549
550 public List<MBMessageFlag> findByMessageId(long messageId, int start,
551 int end, OrderByComparator obc) throws SystemException {
552 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
553 String finderClassName = MBMessageFlag.class.getName();
554 String finderMethodName = "findByMessageId";
555 String[] finderParams = new String[] {
556 Long.class.getName(),
557
558 "java.lang.Integer", "java.lang.Integer",
559 "com.liferay.portal.kernel.util.OrderByComparator"
560 };
561 Object[] finderArgs = new Object[] {
562 new Long(messageId),
563
564 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
565 };
566
567 Object result = null;
568
569 if (finderClassNameCacheEnabled) {
570 result = FinderCacheUtil.getResult(finderClassName,
571 finderMethodName, finderParams, finderArgs, this);
572 }
573
574 if (result == null) {
575 Session session = null;
576
577 try {
578 session = openSession();
579
580 StringBuilder query = new StringBuilder();
581
582 query.append(
583 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
584
585 query.append("messageId = ?");
586
587 query.append(" ");
588
589 if (obc != null) {
590 query.append("ORDER BY ");
591 query.append(obc.getOrderBy());
592 }
593
594 Query q = session.createQuery(query.toString());
595
596 QueryPos qPos = QueryPos.getInstance(q);
597
598 qPos.add(messageId);
599
600 List<MBMessageFlag> list = (List<MBMessageFlag>)QueryUtil.list(q,
601 getDialect(), start, end);
602
603 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
604 finderClassName, finderMethodName, finderParams,
605 finderArgs, list);
606
607 return list;
608 }
609 catch (Exception e) {
610 throw processException(e);
611 }
612 finally {
613 closeSession(session);
614 }
615 }
616 else {
617 return (List<MBMessageFlag>)result;
618 }
619 }
620
621 public MBMessageFlag findByMessageId_First(long messageId,
622 OrderByComparator obc)
623 throws NoSuchMessageFlagException, SystemException {
624 List<MBMessageFlag> list = findByMessageId(messageId, 0, 1, obc);
625
626 if (list.size() == 0) {
627 StringBuilder msg = new StringBuilder();
628
629 msg.append("No MBMessageFlag exists with the key {");
630
631 msg.append("messageId=" + messageId);
632
633 msg.append(StringPool.CLOSE_CURLY_BRACE);
634
635 throw new NoSuchMessageFlagException(msg.toString());
636 }
637 else {
638 return list.get(0);
639 }
640 }
641
642 public MBMessageFlag findByMessageId_Last(long messageId,
643 OrderByComparator obc)
644 throws NoSuchMessageFlagException, SystemException {
645 int count = countByMessageId(messageId);
646
647 List<MBMessageFlag> list = findByMessageId(messageId, count - 1, count,
648 obc);
649
650 if (list.size() == 0) {
651 StringBuilder msg = new StringBuilder();
652
653 msg.append("No MBMessageFlag exists with the key {");
654
655 msg.append("messageId=" + messageId);
656
657 msg.append(StringPool.CLOSE_CURLY_BRACE);
658
659 throw new NoSuchMessageFlagException(msg.toString());
660 }
661 else {
662 return list.get(0);
663 }
664 }
665
666 public MBMessageFlag[] findByMessageId_PrevAndNext(long messageFlagId,
667 long messageId, OrderByComparator obc)
668 throws NoSuchMessageFlagException, SystemException {
669 MBMessageFlag mbMessageFlag = findByPrimaryKey(messageFlagId);
670
671 int count = countByMessageId(messageId);
672
673 Session session = null;
674
675 try {
676 session = openSession();
677
678 StringBuilder query = new StringBuilder();
679
680 query.append(
681 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
682
683 query.append("messageId = ?");
684
685 query.append(" ");
686
687 if (obc != null) {
688 query.append("ORDER BY ");
689 query.append(obc.getOrderBy());
690 }
691
692 Query q = session.createQuery(query.toString());
693
694 QueryPos qPos = QueryPos.getInstance(q);
695
696 qPos.add(messageId);
697
698 Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
699 mbMessageFlag);
700
701 MBMessageFlag[] array = new MBMessageFlagImpl[3];
702
703 array[0] = (MBMessageFlag)objArray[0];
704 array[1] = (MBMessageFlag)objArray[1];
705 array[2] = (MBMessageFlag)objArray[2];
706
707 return array;
708 }
709 catch (Exception e) {
710 throw processException(e);
711 }
712 finally {
713 closeSession(session);
714 }
715 }
716
717 public List<MBMessageFlag> findByM_F(long messageId, int flag)
718 throws SystemException {
719 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
720 String finderClassName = MBMessageFlag.class.getName();
721 String finderMethodName = "findByM_F";
722 String[] finderParams = new String[] {
723 Long.class.getName(), Integer.class.getName()
724 };
725 Object[] finderArgs = new Object[] {
726 new Long(messageId), new Integer(flag)
727 };
728
729 Object result = null;
730
731 if (finderClassNameCacheEnabled) {
732 result = FinderCacheUtil.getResult(finderClassName,
733 finderMethodName, finderParams, finderArgs, this);
734 }
735
736 if (result == null) {
737 Session session = null;
738
739 try {
740 session = openSession();
741
742 StringBuilder query = new StringBuilder();
743
744 query.append(
745 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
746
747 query.append("messageId = ?");
748
749 query.append(" AND ");
750
751 query.append("flag = ?");
752
753 query.append(" ");
754
755 Query q = session.createQuery(query.toString());
756
757 QueryPos qPos = QueryPos.getInstance(q);
758
759 qPos.add(messageId);
760
761 qPos.add(flag);
762
763 List<MBMessageFlag> list = q.list();
764
765 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
766 finderClassName, finderMethodName, finderParams,
767 finderArgs, list);
768
769 return list;
770 }
771 catch (Exception e) {
772 throw processException(e);
773 }
774 finally {
775 closeSession(session);
776 }
777 }
778 else {
779 return (List<MBMessageFlag>)result;
780 }
781 }
782
783 public List<MBMessageFlag> findByM_F(long messageId, int flag, int start,
784 int end) throws SystemException {
785 return findByM_F(messageId, flag, start, end, null);
786 }
787
788 public List<MBMessageFlag> findByM_F(long messageId, int flag, int start,
789 int end, OrderByComparator obc) throws SystemException {
790 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
791 String finderClassName = MBMessageFlag.class.getName();
792 String finderMethodName = "findByM_F";
793 String[] finderParams = new String[] {
794 Long.class.getName(), Integer.class.getName(),
795
796 "java.lang.Integer", "java.lang.Integer",
797 "com.liferay.portal.kernel.util.OrderByComparator"
798 };
799 Object[] finderArgs = new Object[] {
800 new Long(messageId), new Integer(flag),
801
802 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
803 };
804
805 Object result = null;
806
807 if (finderClassNameCacheEnabled) {
808 result = FinderCacheUtil.getResult(finderClassName,
809 finderMethodName, finderParams, finderArgs, this);
810 }
811
812 if (result == null) {
813 Session session = null;
814
815 try {
816 session = openSession();
817
818 StringBuilder query = new StringBuilder();
819
820 query.append(
821 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
822
823 query.append("messageId = ?");
824
825 query.append(" AND ");
826
827 query.append("flag = ?");
828
829 query.append(" ");
830
831 if (obc != null) {
832 query.append("ORDER BY ");
833 query.append(obc.getOrderBy());
834 }
835
836 Query q = session.createQuery(query.toString());
837
838 QueryPos qPos = QueryPos.getInstance(q);
839
840 qPos.add(messageId);
841
842 qPos.add(flag);
843
844 List<MBMessageFlag> list = (List<MBMessageFlag>)QueryUtil.list(q,
845 getDialect(), start, end);
846
847 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
848 finderClassName, finderMethodName, finderParams,
849 finderArgs, list);
850
851 return list;
852 }
853 catch (Exception e) {
854 throw processException(e);
855 }
856 finally {
857 closeSession(session);
858 }
859 }
860 else {
861 return (List<MBMessageFlag>)result;
862 }
863 }
864
865 public MBMessageFlag findByM_F_First(long messageId, int flag,
866 OrderByComparator obc)
867 throws NoSuchMessageFlagException, SystemException {
868 List<MBMessageFlag> list = findByM_F(messageId, flag, 0, 1, obc);
869
870 if (list.size() == 0) {
871 StringBuilder msg = new StringBuilder();
872
873 msg.append("No MBMessageFlag exists with the key {");
874
875 msg.append("messageId=" + messageId);
876
877 msg.append(", ");
878 msg.append("flag=" + flag);
879
880 msg.append(StringPool.CLOSE_CURLY_BRACE);
881
882 throw new NoSuchMessageFlagException(msg.toString());
883 }
884 else {
885 return list.get(0);
886 }
887 }
888
889 public MBMessageFlag findByM_F_Last(long messageId, int flag,
890 OrderByComparator obc)
891 throws NoSuchMessageFlagException, SystemException {
892 int count = countByM_F(messageId, flag);
893
894 List<MBMessageFlag> list = findByM_F(messageId, flag, count - 1, count,
895 obc);
896
897 if (list.size() == 0) {
898 StringBuilder msg = new StringBuilder();
899
900 msg.append("No MBMessageFlag exists with the key {");
901
902 msg.append("messageId=" + messageId);
903
904 msg.append(", ");
905 msg.append("flag=" + flag);
906
907 msg.append(StringPool.CLOSE_CURLY_BRACE);
908
909 throw new NoSuchMessageFlagException(msg.toString());
910 }
911 else {
912 return list.get(0);
913 }
914 }
915
916 public MBMessageFlag[] findByM_F_PrevAndNext(long messageFlagId,
917 long messageId, int flag, OrderByComparator obc)
918 throws NoSuchMessageFlagException, SystemException {
919 MBMessageFlag mbMessageFlag = findByPrimaryKey(messageFlagId);
920
921 int count = countByM_F(messageId, flag);
922
923 Session session = null;
924
925 try {
926 session = openSession();
927
928 StringBuilder query = new StringBuilder();
929
930 query.append(
931 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
932
933 query.append("messageId = ?");
934
935 query.append(" AND ");
936
937 query.append("flag = ?");
938
939 query.append(" ");
940
941 if (obc != null) {
942 query.append("ORDER BY ");
943 query.append(obc.getOrderBy());
944 }
945
946 Query q = session.createQuery(query.toString());
947
948 QueryPos qPos = QueryPos.getInstance(q);
949
950 qPos.add(messageId);
951
952 qPos.add(flag);
953
954 Object[] objArray = QueryUtil.getPrevAndNext(q, count, obc,
955 mbMessageFlag);
956
957 MBMessageFlag[] array = new MBMessageFlagImpl[3];
958
959 array[0] = (MBMessageFlag)objArray[0];
960 array[1] = (MBMessageFlag)objArray[1];
961 array[2] = (MBMessageFlag)objArray[2];
962
963 return array;
964 }
965 catch (Exception e) {
966 throw processException(e);
967 }
968 finally {
969 closeSession(session);
970 }
971 }
972
973 public MBMessageFlag findByU_M_F(long userId, long messageId, int flag)
974 throws NoSuchMessageFlagException, SystemException {
975 MBMessageFlag mbMessageFlag = fetchByU_M_F(userId, messageId, flag);
976
977 if (mbMessageFlag == null) {
978 StringBuilder msg = new StringBuilder();
979
980 msg.append("No MBMessageFlag exists with the key {");
981
982 msg.append("userId=" + userId);
983
984 msg.append(", ");
985 msg.append("messageId=" + messageId);
986
987 msg.append(", ");
988 msg.append("flag=" + flag);
989
990 msg.append(StringPool.CLOSE_CURLY_BRACE);
991
992 if (_log.isWarnEnabled()) {
993 _log.warn(msg.toString());
994 }
995
996 throw new NoSuchMessageFlagException(msg.toString());
997 }
998
999 return mbMessageFlag;
1000 }
1001
1002 public MBMessageFlag fetchByU_M_F(long userId, long messageId, int flag)
1003 throws SystemException {
1004 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
1005 String finderClassName = MBMessageFlag.class.getName();
1006 String finderMethodName = "fetchByU_M_F";
1007 String[] finderParams = new String[] {
1008 Long.class.getName(), Long.class.getName(),
1009 Integer.class.getName()
1010 };
1011 Object[] finderArgs = new Object[] {
1012 new Long(userId), new Long(messageId), new Integer(flag)
1013 };
1014
1015 Object result = null;
1016
1017 if (finderClassNameCacheEnabled) {
1018 result = FinderCacheUtil.getResult(finderClassName,
1019 finderMethodName, finderParams, finderArgs, this);
1020 }
1021
1022 if (result == null) {
1023 Session session = null;
1024
1025 try {
1026 session = openSession();
1027
1028 StringBuilder query = new StringBuilder();
1029
1030 query.append(
1031 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
1032
1033 query.append("userId = ?");
1034
1035 query.append(" AND ");
1036
1037 query.append("messageId = ?");
1038
1039 query.append(" AND ");
1040
1041 query.append("flag = ?");
1042
1043 query.append(" ");
1044
1045 Query q = session.createQuery(query.toString());
1046
1047 QueryPos qPos = QueryPos.getInstance(q);
1048
1049 qPos.add(userId);
1050
1051 qPos.add(messageId);
1052
1053 qPos.add(flag);
1054
1055 List<MBMessageFlag> list = q.list();
1056
1057 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
1058 finderClassName, finderMethodName, finderParams,
1059 finderArgs, list);
1060
1061 if (list.size() == 0) {
1062 return null;
1063 }
1064 else {
1065 return list.get(0);
1066 }
1067 }
1068 catch (Exception e) {
1069 throw processException(e);
1070 }
1071 finally {
1072 closeSession(session);
1073 }
1074 }
1075 else {
1076 List<MBMessageFlag> list = (List<MBMessageFlag>)result;
1077
1078 if (list.size() == 0) {
1079 return null;
1080 }
1081 else {
1082 return list.get(0);
1083 }
1084 }
1085 }
1086
1087 public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery)
1088 throws SystemException {
1089 Session session = null;
1090
1091 try {
1092 session = openSession();
1093
1094 dynamicQuery.compile(session);
1095
1096 return dynamicQuery.list();
1097 }
1098 catch (Exception e) {
1099 throw processException(e);
1100 }
1101 finally {
1102 closeSession(session);
1103 }
1104 }
1105
1106 public List<Object> findWithDynamicQuery(DynamicQuery dynamicQuery,
1107 int start, int end) throws SystemException {
1108 Session session = null;
1109
1110 try {
1111 session = openSession();
1112
1113 dynamicQuery.setLimit(start, end);
1114
1115 dynamicQuery.compile(session);
1116
1117 return dynamicQuery.list();
1118 }
1119 catch (Exception e) {
1120 throw processException(e);
1121 }
1122 finally {
1123 closeSession(session);
1124 }
1125 }
1126
1127 public List<MBMessageFlag> findAll() throws SystemException {
1128 return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
1129 }
1130
1131 public List<MBMessageFlag> findAll(int start, int end)
1132 throws SystemException {
1133 return findAll(start, end, null);
1134 }
1135
1136 public List<MBMessageFlag> findAll(int start, int end, OrderByComparator obc)
1137 throws SystemException {
1138 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
1139 String finderClassName = MBMessageFlag.class.getName();
1140 String finderMethodName = "findAll";
1141 String[] finderParams = new String[] {
1142 "java.lang.Integer", "java.lang.Integer",
1143 "com.liferay.portal.kernel.util.OrderByComparator"
1144 };
1145 Object[] finderArgs = new Object[] {
1146 String.valueOf(start), String.valueOf(end), String.valueOf(obc)
1147 };
1148
1149 Object result = null;
1150
1151 if (finderClassNameCacheEnabled) {
1152 result = FinderCacheUtil.getResult(finderClassName,
1153 finderMethodName, finderParams, finderArgs, this);
1154 }
1155
1156 if (result == null) {
1157 Session session = null;
1158
1159 try {
1160 session = openSession();
1161
1162 StringBuilder query = new StringBuilder();
1163
1164 query.append(
1165 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag ");
1166
1167 if (obc != null) {
1168 query.append("ORDER BY ");
1169 query.append(obc.getOrderBy());
1170 }
1171
1172 Query q = session.createQuery(query.toString());
1173
1174 List<MBMessageFlag> list = null;
1175
1176 if (obc == null) {
1177 list = (List<MBMessageFlag>)QueryUtil.list(q, getDialect(),
1178 start, end, false);
1179
1180 Collections.sort(list);
1181 }
1182 else {
1183 list = (List<MBMessageFlag>)QueryUtil.list(q, getDialect(),
1184 start, end);
1185 }
1186
1187 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
1188 finderClassName, finderMethodName, finderParams,
1189 finderArgs, list);
1190
1191 return list;
1192 }
1193 catch (Exception e) {
1194 throw processException(e);
1195 }
1196 finally {
1197 closeSession(session);
1198 }
1199 }
1200 else {
1201 return (List<MBMessageFlag>)result;
1202 }
1203 }
1204
1205 public void removeByUserId(long userId) throws SystemException {
1206 for (MBMessageFlag mbMessageFlag : findByUserId(userId)) {
1207 remove(mbMessageFlag);
1208 }
1209 }
1210
1211 public void removeByMessageId(long messageId) throws SystemException {
1212 for (MBMessageFlag mbMessageFlag : findByMessageId(messageId)) {
1213 remove(mbMessageFlag);
1214 }
1215 }
1216
1217 public void removeByM_F(long messageId, int flag) throws SystemException {
1218 for (MBMessageFlag mbMessageFlag : findByM_F(messageId, flag)) {
1219 remove(mbMessageFlag);
1220 }
1221 }
1222
1223 public void removeByU_M_F(long userId, long messageId, int flag)
1224 throws NoSuchMessageFlagException, SystemException {
1225 MBMessageFlag mbMessageFlag = findByU_M_F(userId, messageId, flag);
1226
1227 remove(mbMessageFlag);
1228 }
1229
1230 public void removeAll() throws SystemException {
1231 for (MBMessageFlag mbMessageFlag : findAll()) {
1232 remove(mbMessageFlag);
1233 }
1234 }
1235
1236 public int countByUserId(long userId) throws SystemException {
1237 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
1238 String finderClassName = MBMessageFlag.class.getName();
1239 String finderMethodName = "countByUserId";
1240 String[] finderParams = new String[] { Long.class.getName() };
1241 Object[] finderArgs = new Object[] { new Long(userId) };
1242
1243 Object result = null;
1244
1245 if (finderClassNameCacheEnabled) {
1246 result = FinderCacheUtil.getResult(finderClassName,
1247 finderMethodName, finderParams, finderArgs, this);
1248 }
1249
1250 if (result == null) {
1251 Session session = null;
1252
1253 try {
1254 session = openSession();
1255
1256 StringBuilder query = new StringBuilder();
1257
1258 query.append("SELECT COUNT(*) ");
1259 query.append(
1260 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
1261
1262 query.append("userId = ?");
1263
1264 query.append(" ");
1265
1266 Query q = session.createQuery(query.toString());
1267
1268 QueryPos qPos = QueryPos.getInstance(q);
1269
1270 qPos.add(userId);
1271
1272 Long count = null;
1273
1274 Iterator<Long> itr = q.list().iterator();
1275
1276 if (itr.hasNext()) {
1277 count = itr.next();
1278 }
1279
1280 if (count == null) {
1281 count = new Long(0);
1282 }
1283
1284 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
1285 finderClassName, finderMethodName, finderParams,
1286 finderArgs, count);
1287
1288 return count.intValue();
1289 }
1290 catch (Exception e) {
1291 throw processException(e);
1292 }
1293 finally {
1294 closeSession(session);
1295 }
1296 }
1297 else {
1298 return ((Long)result).intValue();
1299 }
1300 }
1301
1302 public int countByMessageId(long messageId) throws SystemException {
1303 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
1304 String finderClassName = MBMessageFlag.class.getName();
1305 String finderMethodName = "countByMessageId";
1306 String[] finderParams = new String[] { Long.class.getName() };
1307 Object[] finderArgs = new Object[] { new Long(messageId) };
1308
1309 Object result = null;
1310
1311 if (finderClassNameCacheEnabled) {
1312 result = FinderCacheUtil.getResult(finderClassName,
1313 finderMethodName, finderParams, finderArgs, this);
1314 }
1315
1316 if (result == null) {
1317 Session session = null;
1318
1319 try {
1320 session = openSession();
1321
1322 StringBuilder query = new StringBuilder();
1323
1324 query.append("SELECT COUNT(*) ");
1325 query.append(
1326 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
1327
1328 query.append("messageId = ?");
1329
1330 query.append(" ");
1331
1332 Query q = session.createQuery(query.toString());
1333
1334 QueryPos qPos = QueryPos.getInstance(q);
1335
1336 qPos.add(messageId);
1337
1338 Long count = null;
1339
1340 Iterator<Long> itr = q.list().iterator();
1341
1342 if (itr.hasNext()) {
1343 count = itr.next();
1344 }
1345
1346 if (count == null) {
1347 count = new Long(0);
1348 }
1349
1350 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
1351 finderClassName, finderMethodName, finderParams,
1352 finderArgs, count);
1353
1354 return count.intValue();
1355 }
1356 catch (Exception e) {
1357 throw processException(e);
1358 }
1359 finally {
1360 closeSession(session);
1361 }
1362 }
1363 else {
1364 return ((Long)result).intValue();
1365 }
1366 }
1367
1368 public int countByM_F(long messageId, int flag) throws SystemException {
1369 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
1370 String finderClassName = MBMessageFlag.class.getName();
1371 String finderMethodName = "countByM_F";
1372 String[] finderParams = new String[] {
1373 Long.class.getName(), Integer.class.getName()
1374 };
1375 Object[] finderArgs = new Object[] {
1376 new Long(messageId), new Integer(flag)
1377 };
1378
1379 Object result = null;
1380
1381 if (finderClassNameCacheEnabled) {
1382 result = FinderCacheUtil.getResult(finderClassName,
1383 finderMethodName, finderParams, finderArgs, this);
1384 }
1385
1386 if (result == null) {
1387 Session session = null;
1388
1389 try {
1390 session = openSession();
1391
1392 StringBuilder query = new StringBuilder();
1393
1394 query.append("SELECT COUNT(*) ");
1395 query.append(
1396 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
1397
1398 query.append("messageId = ?");
1399
1400 query.append(" AND ");
1401
1402 query.append("flag = ?");
1403
1404 query.append(" ");
1405
1406 Query q = session.createQuery(query.toString());
1407
1408 QueryPos qPos = QueryPos.getInstance(q);
1409
1410 qPos.add(messageId);
1411
1412 qPos.add(flag);
1413
1414 Long count = null;
1415
1416 Iterator<Long> itr = q.list().iterator();
1417
1418 if (itr.hasNext()) {
1419 count = itr.next();
1420 }
1421
1422 if (count == null) {
1423 count = new Long(0);
1424 }
1425
1426 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
1427 finderClassName, finderMethodName, finderParams,
1428 finderArgs, count);
1429
1430 return count.intValue();
1431 }
1432 catch (Exception e) {
1433 throw processException(e);
1434 }
1435 finally {
1436 closeSession(session);
1437 }
1438 }
1439 else {
1440 return ((Long)result).intValue();
1441 }
1442 }
1443
1444 public int countByU_M_F(long userId, long messageId, int flag)
1445 throws SystemException {
1446 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
1447 String finderClassName = MBMessageFlag.class.getName();
1448 String finderMethodName = "countByU_M_F";
1449 String[] finderParams = new String[] {
1450 Long.class.getName(), Long.class.getName(),
1451 Integer.class.getName()
1452 };
1453 Object[] finderArgs = new Object[] {
1454 new Long(userId), new Long(messageId), new Integer(flag)
1455 };
1456
1457 Object result = null;
1458
1459 if (finderClassNameCacheEnabled) {
1460 result = FinderCacheUtil.getResult(finderClassName,
1461 finderMethodName, finderParams, finderArgs, this);
1462 }
1463
1464 if (result == null) {
1465 Session session = null;
1466
1467 try {
1468 session = openSession();
1469
1470 StringBuilder query = new StringBuilder();
1471
1472 query.append("SELECT COUNT(*) ");
1473 query.append(
1474 "FROM com.liferay.portlet.messageboards.model.MBMessageFlag WHERE ");
1475
1476 query.append("userId = ?");
1477
1478 query.append(" AND ");
1479
1480 query.append("messageId = ?");
1481
1482 query.append(" AND ");
1483
1484 query.append("flag = ?");
1485
1486 query.append(" ");
1487
1488 Query q = session.createQuery(query.toString());
1489
1490 QueryPos qPos = QueryPos.getInstance(q);
1491
1492 qPos.add(userId);
1493
1494 qPos.add(messageId);
1495
1496 qPos.add(flag);
1497
1498 Long count = null;
1499
1500 Iterator<Long> itr = q.list().iterator();
1501
1502 if (itr.hasNext()) {
1503 count = itr.next();
1504 }
1505
1506 if (count == null) {
1507 count = new Long(0);
1508 }
1509
1510 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
1511 finderClassName, finderMethodName, finderParams,
1512 finderArgs, count);
1513
1514 return count.intValue();
1515 }
1516 catch (Exception e) {
1517 throw processException(e);
1518 }
1519 finally {
1520 closeSession(session);
1521 }
1522 }
1523 else {
1524 return ((Long)result).intValue();
1525 }
1526 }
1527
1528 public int countAll() throws SystemException {
1529 boolean finderClassNameCacheEnabled = MBMessageFlagModelImpl.CACHE_ENABLED;
1530 String finderClassName = MBMessageFlag.class.getName();
1531 String finderMethodName = "countAll";
1532 String[] finderParams = new String[] { };
1533 Object[] finderArgs = new Object[] { };
1534
1535 Object result = null;
1536
1537 if (finderClassNameCacheEnabled) {
1538 result = FinderCacheUtil.getResult(finderClassName,
1539 finderMethodName, finderParams, finderArgs, this);
1540 }
1541
1542 if (result == null) {
1543 Session session = null;
1544
1545 try {
1546 session = openSession();
1547
1548 Query q = session.createQuery(
1549 "SELECT COUNT(*) FROM com.liferay.portlet.messageboards.model.MBMessageFlag");
1550
1551 Long count = null;
1552
1553 Iterator<Long> itr = q.list().iterator();
1554
1555 if (itr.hasNext()) {
1556 count = itr.next();
1557 }
1558
1559 if (count == null) {
1560 count = new Long(0);
1561 }
1562
1563 FinderCacheUtil.putResult(finderClassNameCacheEnabled,
1564 finderClassName, finderMethodName, finderParams,
1565 finderArgs, count);
1566
1567 return count.intValue();
1568 }
1569 catch (Exception e) {
1570 throw processException(e);
1571 }
1572 finally {
1573 closeSession(session);
1574 }
1575 }
1576 else {
1577 return ((Long)result).intValue();
1578 }
1579 }
1580
1581 public void afterPropertiesSet() {
1582 String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
1583 com.liferay.portal.util.PropsUtil.get(
1584 "value.object.listener.com.liferay.portlet.messageboards.model.MBMessageFlag")));
1585
1586 if (listenerClassNames.length > 0) {
1587 try {
1588 List<ModelListener> listenersList = new ArrayList<ModelListener>();
1589
1590 for (String listenerClassName : listenerClassNames) {
1591 listenersList.add((ModelListener)Class.forName(
1592 listenerClassName).newInstance());
1593 }
1594
1595 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
1596 }
1597 catch (Exception e) {
1598 _log.error(e);
1599 }
1600 }
1601 }
1602
1603 @BeanReference(name = "com.liferay.portlet.messageboards.service.persistence.MBBanPersistence.impl")
1604 protected com.liferay.portlet.messageboards.service.persistence.MBBanPersistence mbBanPersistence;
1605 @BeanReference(name = "com.liferay.portlet.messageboards.service.persistence.MBCategoryPersistence.impl")
1606 protected com.liferay.portlet.messageboards.service.persistence.MBCategoryPersistence mbCategoryPersistence;
1607 @BeanReference(name = "com.liferay.portlet.messageboards.service.persistence.MBDiscussionPersistence.impl")
1608 protected com.liferay.portlet.messageboards.service.persistence.MBDiscussionPersistence mbDiscussionPersistence;
1609 @BeanReference(name = "com.liferay.portlet.messageboards.service.persistence.MBMailingListPersistence.impl")
1610 protected com.liferay.portlet.messageboards.service.persistence.MBMailingListPersistence mbMailingListPersistence;
1611 @BeanReference(name = "com.liferay.portlet.messageboards.service.persistence.MBMessagePersistence.impl")
1612 protected com.liferay.portlet.messageboards.service.persistence.MBMessagePersistence mbMessagePersistence;
1613 @BeanReference(name = "com.liferay.portlet.messageboards.service.persistence.MBMessageFlagPersistence.impl")
1614 protected com.liferay.portlet.messageboards.service.persistence.MBMessageFlagPersistence mbMessageFlagPersistence;
1615 @BeanReference(name = "com.liferay.portlet.messageboards.service.persistence.MBStatsUserPersistence.impl")
1616 protected com.liferay.portlet.messageboards.service.persistence.MBStatsUserPersistence mbStatsUserPersistence;
1617 @BeanReference(name = "com.liferay.portlet.messageboards.service.persistence.MBThreadPersistence.impl")
1618 protected com.liferay.portlet.messageboards.service.persistence.MBThreadPersistence mbThreadPersistence;
1619 @BeanReference(name = "com.liferay.portal.service.persistence.UserPersistence.impl")
1620 protected com.liferay.portal.service.persistence.UserPersistence userPersistence;
1621 private static Log _log = LogFactoryUtil.getLog(MBMessageFlagPersistenceImpl.class);
1622}