001
014
015 package com.liferay.portlet.asset.service.persistence;
016
017 import com.liferay.portal.kernel.cache.CacheRegistryUtil;
018 import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
019 import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
020 import com.liferay.portal.kernel.dao.orm.FinderPath;
021 import com.liferay.portal.kernel.dao.orm.Query;
022 import com.liferay.portal.kernel.dao.orm.QueryPos;
023 import com.liferay.portal.kernel.dao.orm.QueryUtil;
024 import com.liferay.portal.kernel.dao.orm.Session;
025 import com.liferay.portal.kernel.exception.SystemException;
026 import com.liferay.portal.kernel.log.Log;
027 import com.liferay.portal.kernel.log.LogFactoryUtil;
028 import com.liferay.portal.kernel.util.GetterUtil;
029 import com.liferay.portal.kernel.util.InstanceFactory;
030 import com.liferay.portal.kernel.util.OrderByComparator;
031 import com.liferay.portal.kernel.util.StringBundler;
032 import com.liferay.portal.kernel.util.StringPool;
033 import com.liferay.portal.kernel.util.StringUtil;
034 import com.liferay.portal.kernel.util.UnmodifiableList;
035 import com.liferay.portal.model.CacheModel;
036 import com.liferay.portal.model.ModelListener;
037 import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
038
039 import com.liferay.portlet.asset.NoSuchTagStatsException;
040 import com.liferay.portlet.asset.model.AssetTagStats;
041 import com.liferay.portlet.asset.model.impl.AssetTagStatsImpl;
042 import com.liferay.portlet.asset.model.impl.AssetTagStatsModelImpl;
043
044 import java.io.Serializable;
045
046 import java.util.ArrayList;
047 import java.util.Collections;
048 import java.util.List;
049
050
062 public class AssetTagStatsPersistenceImpl extends BasePersistenceImpl<AssetTagStats>
063 implements AssetTagStatsPersistence {
064
069 public static final String FINDER_CLASS_NAME_ENTITY = AssetTagStatsImpl.class.getName();
070 public static final String FINDER_CLASS_NAME_LIST_WITH_PAGINATION = FINDER_CLASS_NAME_ENTITY +
071 ".List1";
072 public static final String FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION = FINDER_CLASS_NAME_ENTITY +
073 ".List2";
074 public static final FinderPath FINDER_PATH_WITH_PAGINATION_FIND_ALL = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
075 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED,
076 AssetTagStatsImpl.class, FINDER_CLASS_NAME_LIST_WITH_PAGINATION,
077 "findAll", new String[0]);
078 public static final FinderPath FINDER_PATH_WITHOUT_PAGINATION_FIND_ALL = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
079 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED,
080 AssetTagStatsImpl.class, FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION,
081 "findAll", new String[0]);
082 public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
083 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED, Long.class,
084 FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION, "countAll", new String[0]);
085 public static final FinderPath FINDER_PATH_WITH_PAGINATION_FIND_BY_TAGID = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
086 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED,
087 AssetTagStatsImpl.class, FINDER_CLASS_NAME_LIST_WITH_PAGINATION,
088 "findByTagId",
089 new String[] {
090 Long.class.getName(),
091
092 Integer.class.getName(), Integer.class.getName(),
093 OrderByComparator.class.getName()
094 });
095 public static final FinderPath FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_TAGID = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
096 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED,
097 AssetTagStatsImpl.class, FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION,
098 "findByTagId", new String[] { Long.class.getName() },
099 AssetTagStatsModelImpl.TAGID_COLUMN_BITMASK |
100 AssetTagStatsModelImpl.ASSETCOUNT_COLUMN_BITMASK);
101 public static final FinderPath FINDER_PATH_COUNT_BY_TAGID = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
102 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED, Long.class,
103 FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION, "countByTagId",
104 new String[] { Long.class.getName() });
105
106
113 @Override
114 public List<AssetTagStats> findByTagId(long tagId)
115 throws SystemException {
116 return findByTagId(tagId, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
117 }
118
119
132 @Override
133 public List<AssetTagStats> findByTagId(long tagId, int start, int end)
134 throws SystemException {
135 return findByTagId(tagId, start, end, null);
136 }
137
138
152 @Override
153 public List<AssetTagStats> findByTagId(long tagId, int start, int end,
154 OrderByComparator orderByComparator) throws SystemException {
155 boolean pagination = true;
156 FinderPath finderPath = null;
157 Object[] finderArgs = null;
158
159 if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) &&
160 (orderByComparator == null)) {
161 pagination = false;
162 finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_TAGID;
163 finderArgs = new Object[] { tagId };
164 }
165 else {
166 finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_TAGID;
167 finderArgs = new Object[] { tagId, start, end, orderByComparator };
168 }
169
170 List<AssetTagStats> list = (List<AssetTagStats>)FinderCacheUtil.getResult(finderPath,
171 finderArgs, this);
172
173 if ((list != null) && !list.isEmpty()) {
174 for (AssetTagStats assetTagStats : list) {
175 if ((tagId != assetTagStats.getTagId())) {
176 list = null;
177
178 break;
179 }
180 }
181 }
182
183 if (list == null) {
184 StringBundler query = null;
185
186 if (orderByComparator != null) {
187 query = new StringBundler(3 +
188 (orderByComparator.getOrderByFields().length * 3));
189 }
190 else {
191 query = new StringBundler(3);
192 }
193
194 query.append(_SQL_SELECT_ASSETTAGSTATS_WHERE);
195
196 query.append(_FINDER_COLUMN_TAGID_TAGID_2);
197
198 if (orderByComparator != null) {
199 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
200 orderByComparator);
201 }
202 else
203 if (pagination) {
204 query.append(AssetTagStatsModelImpl.ORDER_BY_JPQL);
205 }
206
207 String sql = query.toString();
208
209 Session session = null;
210
211 try {
212 session = openSession();
213
214 Query q = session.createQuery(sql);
215
216 QueryPos qPos = QueryPos.getInstance(q);
217
218 qPos.add(tagId);
219
220 if (!pagination) {
221 list = (List<AssetTagStats>)QueryUtil.list(q, getDialect(),
222 start, end, false);
223
224 Collections.sort(list);
225
226 list = new UnmodifiableList<AssetTagStats>(list);
227 }
228 else {
229 list = (List<AssetTagStats>)QueryUtil.list(q, getDialect(),
230 start, end);
231 }
232
233 cacheResult(list);
234
235 FinderCacheUtil.putResult(finderPath, finderArgs, list);
236 }
237 catch (Exception e) {
238 FinderCacheUtil.removeResult(finderPath, finderArgs);
239
240 throw processException(e);
241 }
242 finally {
243 closeSession(session);
244 }
245 }
246
247 return list;
248 }
249
250
259 @Override
260 public AssetTagStats findByTagId_First(long tagId,
261 OrderByComparator orderByComparator)
262 throws NoSuchTagStatsException, SystemException {
263 AssetTagStats assetTagStats = fetchByTagId_First(tagId,
264 orderByComparator);
265
266 if (assetTagStats != null) {
267 return assetTagStats;
268 }
269
270 StringBundler msg = new StringBundler(4);
271
272 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
273
274 msg.append("tagId=");
275 msg.append(tagId);
276
277 msg.append(StringPool.CLOSE_CURLY_BRACE);
278
279 throw new NoSuchTagStatsException(msg.toString());
280 }
281
282
290 @Override
291 public AssetTagStats fetchByTagId_First(long tagId,
292 OrderByComparator orderByComparator) throws SystemException {
293 List<AssetTagStats> list = findByTagId(tagId, 0, 1, orderByComparator);
294
295 if (!list.isEmpty()) {
296 return list.get(0);
297 }
298
299 return null;
300 }
301
302
311 @Override
312 public AssetTagStats findByTagId_Last(long tagId,
313 OrderByComparator orderByComparator)
314 throws NoSuchTagStatsException, SystemException {
315 AssetTagStats assetTagStats = fetchByTagId_Last(tagId, orderByComparator);
316
317 if (assetTagStats != null) {
318 return assetTagStats;
319 }
320
321 StringBundler msg = new StringBundler(4);
322
323 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
324
325 msg.append("tagId=");
326 msg.append(tagId);
327
328 msg.append(StringPool.CLOSE_CURLY_BRACE);
329
330 throw new NoSuchTagStatsException(msg.toString());
331 }
332
333
341 @Override
342 public AssetTagStats fetchByTagId_Last(long tagId,
343 OrderByComparator orderByComparator) throws SystemException {
344 int count = countByTagId(tagId);
345
346 if (count == 0) {
347 return null;
348 }
349
350 List<AssetTagStats> list = findByTagId(tagId, count - 1, count,
351 orderByComparator);
352
353 if (!list.isEmpty()) {
354 return list.get(0);
355 }
356
357 return null;
358 }
359
360
370 @Override
371 public AssetTagStats[] findByTagId_PrevAndNext(long tagStatsId, long tagId,
372 OrderByComparator orderByComparator)
373 throws NoSuchTagStatsException, SystemException {
374 AssetTagStats assetTagStats = findByPrimaryKey(tagStatsId);
375
376 Session session = null;
377
378 try {
379 session = openSession();
380
381 AssetTagStats[] array = new AssetTagStatsImpl[3];
382
383 array[0] = getByTagId_PrevAndNext(session, assetTagStats, tagId,
384 orderByComparator, true);
385
386 array[1] = assetTagStats;
387
388 array[2] = getByTagId_PrevAndNext(session, assetTagStats, tagId,
389 orderByComparator, false);
390
391 return array;
392 }
393 catch (Exception e) {
394 throw processException(e);
395 }
396 finally {
397 closeSession(session);
398 }
399 }
400
401 protected AssetTagStats getByTagId_PrevAndNext(Session session,
402 AssetTagStats assetTagStats, long tagId,
403 OrderByComparator orderByComparator, boolean previous) {
404 StringBundler query = null;
405
406 if (orderByComparator != null) {
407 query = new StringBundler(6 +
408 (orderByComparator.getOrderByFields().length * 6));
409 }
410 else {
411 query = new StringBundler(3);
412 }
413
414 query.append(_SQL_SELECT_ASSETTAGSTATS_WHERE);
415
416 query.append(_FINDER_COLUMN_TAGID_TAGID_2);
417
418 if (orderByComparator != null) {
419 String[] orderByConditionFields = orderByComparator.getOrderByConditionFields();
420
421 if (orderByConditionFields.length > 0) {
422 query.append(WHERE_AND);
423 }
424
425 for (int i = 0; i < orderByConditionFields.length; i++) {
426 query.append(_ORDER_BY_ENTITY_ALIAS);
427 query.append(orderByConditionFields[i]);
428
429 if ((i + 1) < orderByConditionFields.length) {
430 if (orderByComparator.isAscending() ^ previous) {
431 query.append(WHERE_GREATER_THAN_HAS_NEXT);
432 }
433 else {
434 query.append(WHERE_LESSER_THAN_HAS_NEXT);
435 }
436 }
437 else {
438 if (orderByComparator.isAscending() ^ previous) {
439 query.append(WHERE_GREATER_THAN);
440 }
441 else {
442 query.append(WHERE_LESSER_THAN);
443 }
444 }
445 }
446
447 query.append(ORDER_BY_CLAUSE);
448
449 String[] orderByFields = orderByComparator.getOrderByFields();
450
451 for (int i = 0; i < orderByFields.length; i++) {
452 query.append(_ORDER_BY_ENTITY_ALIAS);
453 query.append(orderByFields[i]);
454
455 if ((i + 1) < orderByFields.length) {
456 if (orderByComparator.isAscending() ^ previous) {
457 query.append(ORDER_BY_ASC_HAS_NEXT);
458 }
459 else {
460 query.append(ORDER_BY_DESC_HAS_NEXT);
461 }
462 }
463 else {
464 if (orderByComparator.isAscending() ^ previous) {
465 query.append(ORDER_BY_ASC);
466 }
467 else {
468 query.append(ORDER_BY_DESC);
469 }
470 }
471 }
472 }
473 else {
474 query.append(AssetTagStatsModelImpl.ORDER_BY_JPQL);
475 }
476
477 String sql = query.toString();
478
479 Query q = session.createQuery(sql);
480
481 q.setFirstResult(0);
482 q.setMaxResults(2);
483
484 QueryPos qPos = QueryPos.getInstance(q);
485
486 qPos.add(tagId);
487
488 if (orderByComparator != null) {
489 Object[] values = orderByComparator.getOrderByConditionValues(assetTagStats);
490
491 for (Object value : values) {
492 qPos.add(value);
493 }
494 }
495
496 List<AssetTagStats> list = q.list();
497
498 if (list.size() == 2) {
499 return list.get(1);
500 }
501 else {
502 return null;
503 }
504 }
505
506
512 @Override
513 public void removeByTagId(long tagId) throws SystemException {
514 for (AssetTagStats assetTagStats : findByTagId(tagId,
515 QueryUtil.ALL_POS, QueryUtil.ALL_POS, null)) {
516 remove(assetTagStats);
517 }
518 }
519
520
527 @Override
528 public int countByTagId(long tagId) throws SystemException {
529 FinderPath finderPath = FINDER_PATH_COUNT_BY_TAGID;
530
531 Object[] finderArgs = new Object[] { tagId };
532
533 Long count = (Long)FinderCacheUtil.getResult(finderPath, finderArgs,
534 this);
535
536 if (count == null) {
537 StringBundler query = new StringBundler(2);
538
539 query.append(_SQL_COUNT_ASSETTAGSTATS_WHERE);
540
541 query.append(_FINDER_COLUMN_TAGID_TAGID_2);
542
543 String sql = query.toString();
544
545 Session session = null;
546
547 try {
548 session = openSession();
549
550 Query q = session.createQuery(sql);
551
552 QueryPos qPos = QueryPos.getInstance(q);
553
554 qPos.add(tagId);
555
556 count = (Long)q.uniqueResult();
557
558 FinderCacheUtil.putResult(finderPath, finderArgs, count);
559 }
560 catch (Exception e) {
561 FinderCacheUtil.removeResult(finderPath, finderArgs);
562
563 throw processException(e);
564 }
565 finally {
566 closeSession(session);
567 }
568 }
569
570 return count.intValue();
571 }
572
573 private static final String _FINDER_COLUMN_TAGID_TAGID_2 = "assetTagStats.tagId = ?";
574 public static final FinderPath FINDER_PATH_WITH_PAGINATION_FIND_BY_CLASSNAMEID =
575 new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
576 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED,
577 AssetTagStatsImpl.class, FINDER_CLASS_NAME_LIST_WITH_PAGINATION,
578 "findByClassNameId",
579 new String[] {
580 Long.class.getName(),
581
582 Integer.class.getName(), Integer.class.getName(),
583 OrderByComparator.class.getName()
584 });
585 public static final FinderPath FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_CLASSNAMEID =
586 new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
587 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED,
588 AssetTagStatsImpl.class, FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION,
589 "findByClassNameId", new String[] { Long.class.getName() },
590 AssetTagStatsModelImpl.CLASSNAMEID_COLUMN_BITMASK |
591 AssetTagStatsModelImpl.ASSETCOUNT_COLUMN_BITMASK);
592 public static final FinderPath FINDER_PATH_COUNT_BY_CLASSNAMEID = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
593 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED, Long.class,
594 FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION, "countByClassNameId",
595 new String[] { Long.class.getName() });
596
597
604 @Override
605 public List<AssetTagStats> findByClassNameId(long classNameId)
606 throws SystemException {
607 return findByClassNameId(classNameId, QueryUtil.ALL_POS,
608 QueryUtil.ALL_POS, null);
609 }
610
611
624 @Override
625 public List<AssetTagStats> findByClassNameId(long classNameId, int start,
626 int end) throws SystemException {
627 return findByClassNameId(classNameId, start, end, null);
628 }
629
630
644 @Override
645 public List<AssetTagStats> findByClassNameId(long classNameId, int start,
646 int end, OrderByComparator orderByComparator) throws SystemException {
647 boolean pagination = true;
648 FinderPath finderPath = null;
649 Object[] finderArgs = null;
650
651 if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) &&
652 (orderByComparator == null)) {
653 pagination = false;
654 finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_CLASSNAMEID;
655 finderArgs = new Object[] { classNameId };
656 }
657 else {
658 finderPath = FINDER_PATH_WITH_PAGINATION_FIND_BY_CLASSNAMEID;
659 finderArgs = new Object[] { classNameId, start, end, orderByComparator };
660 }
661
662 List<AssetTagStats> list = (List<AssetTagStats>)FinderCacheUtil.getResult(finderPath,
663 finderArgs, this);
664
665 if ((list != null) && !list.isEmpty()) {
666 for (AssetTagStats assetTagStats : list) {
667 if ((classNameId != assetTagStats.getClassNameId())) {
668 list = null;
669
670 break;
671 }
672 }
673 }
674
675 if (list == null) {
676 StringBundler query = null;
677
678 if (orderByComparator != null) {
679 query = new StringBundler(3 +
680 (orderByComparator.getOrderByFields().length * 3));
681 }
682 else {
683 query = new StringBundler(3);
684 }
685
686 query.append(_SQL_SELECT_ASSETTAGSTATS_WHERE);
687
688 query.append(_FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2);
689
690 if (orderByComparator != null) {
691 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
692 orderByComparator);
693 }
694 else
695 if (pagination) {
696 query.append(AssetTagStatsModelImpl.ORDER_BY_JPQL);
697 }
698
699 String sql = query.toString();
700
701 Session session = null;
702
703 try {
704 session = openSession();
705
706 Query q = session.createQuery(sql);
707
708 QueryPos qPos = QueryPos.getInstance(q);
709
710 qPos.add(classNameId);
711
712 if (!pagination) {
713 list = (List<AssetTagStats>)QueryUtil.list(q, getDialect(),
714 start, end, false);
715
716 Collections.sort(list);
717
718 list = new UnmodifiableList<AssetTagStats>(list);
719 }
720 else {
721 list = (List<AssetTagStats>)QueryUtil.list(q, getDialect(),
722 start, end);
723 }
724
725 cacheResult(list);
726
727 FinderCacheUtil.putResult(finderPath, finderArgs, list);
728 }
729 catch (Exception e) {
730 FinderCacheUtil.removeResult(finderPath, finderArgs);
731
732 throw processException(e);
733 }
734 finally {
735 closeSession(session);
736 }
737 }
738
739 return list;
740 }
741
742
751 @Override
752 public AssetTagStats findByClassNameId_First(long classNameId,
753 OrderByComparator orderByComparator)
754 throws NoSuchTagStatsException, SystemException {
755 AssetTagStats assetTagStats = fetchByClassNameId_First(classNameId,
756 orderByComparator);
757
758 if (assetTagStats != null) {
759 return assetTagStats;
760 }
761
762 StringBundler msg = new StringBundler(4);
763
764 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
765
766 msg.append("classNameId=");
767 msg.append(classNameId);
768
769 msg.append(StringPool.CLOSE_CURLY_BRACE);
770
771 throw new NoSuchTagStatsException(msg.toString());
772 }
773
774
782 @Override
783 public AssetTagStats fetchByClassNameId_First(long classNameId,
784 OrderByComparator orderByComparator) throws SystemException {
785 List<AssetTagStats> list = findByClassNameId(classNameId, 0, 1,
786 orderByComparator);
787
788 if (!list.isEmpty()) {
789 return list.get(0);
790 }
791
792 return null;
793 }
794
795
804 @Override
805 public AssetTagStats findByClassNameId_Last(long classNameId,
806 OrderByComparator orderByComparator)
807 throws NoSuchTagStatsException, SystemException {
808 AssetTagStats assetTagStats = fetchByClassNameId_Last(classNameId,
809 orderByComparator);
810
811 if (assetTagStats != null) {
812 return assetTagStats;
813 }
814
815 StringBundler msg = new StringBundler(4);
816
817 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
818
819 msg.append("classNameId=");
820 msg.append(classNameId);
821
822 msg.append(StringPool.CLOSE_CURLY_BRACE);
823
824 throw new NoSuchTagStatsException(msg.toString());
825 }
826
827
835 @Override
836 public AssetTagStats fetchByClassNameId_Last(long classNameId,
837 OrderByComparator orderByComparator) throws SystemException {
838 int count = countByClassNameId(classNameId);
839
840 if (count == 0) {
841 return null;
842 }
843
844 List<AssetTagStats> list = findByClassNameId(classNameId, count - 1,
845 count, orderByComparator);
846
847 if (!list.isEmpty()) {
848 return list.get(0);
849 }
850
851 return null;
852 }
853
854
864 @Override
865 public AssetTagStats[] findByClassNameId_PrevAndNext(long tagStatsId,
866 long classNameId, OrderByComparator orderByComparator)
867 throws NoSuchTagStatsException, SystemException {
868 AssetTagStats assetTagStats = findByPrimaryKey(tagStatsId);
869
870 Session session = null;
871
872 try {
873 session = openSession();
874
875 AssetTagStats[] array = new AssetTagStatsImpl[3];
876
877 array[0] = getByClassNameId_PrevAndNext(session, assetTagStats,
878 classNameId, orderByComparator, true);
879
880 array[1] = assetTagStats;
881
882 array[2] = getByClassNameId_PrevAndNext(session, assetTagStats,
883 classNameId, orderByComparator, false);
884
885 return array;
886 }
887 catch (Exception e) {
888 throw processException(e);
889 }
890 finally {
891 closeSession(session);
892 }
893 }
894
895 protected AssetTagStats getByClassNameId_PrevAndNext(Session session,
896 AssetTagStats assetTagStats, long classNameId,
897 OrderByComparator orderByComparator, boolean previous) {
898 StringBundler query = null;
899
900 if (orderByComparator != null) {
901 query = new StringBundler(6 +
902 (orderByComparator.getOrderByFields().length * 6));
903 }
904 else {
905 query = new StringBundler(3);
906 }
907
908 query.append(_SQL_SELECT_ASSETTAGSTATS_WHERE);
909
910 query.append(_FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2);
911
912 if (orderByComparator != null) {
913 String[] orderByConditionFields = orderByComparator.getOrderByConditionFields();
914
915 if (orderByConditionFields.length > 0) {
916 query.append(WHERE_AND);
917 }
918
919 for (int i = 0; i < orderByConditionFields.length; i++) {
920 query.append(_ORDER_BY_ENTITY_ALIAS);
921 query.append(orderByConditionFields[i]);
922
923 if ((i + 1) < orderByConditionFields.length) {
924 if (orderByComparator.isAscending() ^ previous) {
925 query.append(WHERE_GREATER_THAN_HAS_NEXT);
926 }
927 else {
928 query.append(WHERE_LESSER_THAN_HAS_NEXT);
929 }
930 }
931 else {
932 if (orderByComparator.isAscending() ^ previous) {
933 query.append(WHERE_GREATER_THAN);
934 }
935 else {
936 query.append(WHERE_LESSER_THAN);
937 }
938 }
939 }
940
941 query.append(ORDER_BY_CLAUSE);
942
943 String[] orderByFields = orderByComparator.getOrderByFields();
944
945 for (int i = 0; i < orderByFields.length; i++) {
946 query.append(_ORDER_BY_ENTITY_ALIAS);
947 query.append(orderByFields[i]);
948
949 if ((i + 1) < orderByFields.length) {
950 if (orderByComparator.isAscending() ^ previous) {
951 query.append(ORDER_BY_ASC_HAS_NEXT);
952 }
953 else {
954 query.append(ORDER_BY_DESC_HAS_NEXT);
955 }
956 }
957 else {
958 if (orderByComparator.isAscending() ^ previous) {
959 query.append(ORDER_BY_ASC);
960 }
961 else {
962 query.append(ORDER_BY_DESC);
963 }
964 }
965 }
966 }
967 else {
968 query.append(AssetTagStatsModelImpl.ORDER_BY_JPQL);
969 }
970
971 String sql = query.toString();
972
973 Query q = session.createQuery(sql);
974
975 q.setFirstResult(0);
976 q.setMaxResults(2);
977
978 QueryPos qPos = QueryPos.getInstance(q);
979
980 qPos.add(classNameId);
981
982 if (orderByComparator != null) {
983 Object[] values = orderByComparator.getOrderByConditionValues(assetTagStats);
984
985 for (Object value : values) {
986 qPos.add(value);
987 }
988 }
989
990 List<AssetTagStats> list = q.list();
991
992 if (list.size() == 2) {
993 return list.get(1);
994 }
995 else {
996 return null;
997 }
998 }
999
1000
1006 @Override
1007 public void removeByClassNameId(long classNameId) throws SystemException {
1008 for (AssetTagStats assetTagStats : findByClassNameId(classNameId,
1009 QueryUtil.ALL_POS, QueryUtil.ALL_POS, null)) {
1010 remove(assetTagStats);
1011 }
1012 }
1013
1014
1021 @Override
1022 public int countByClassNameId(long classNameId) throws SystemException {
1023 FinderPath finderPath = FINDER_PATH_COUNT_BY_CLASSNAMEID;
1024
1025 Object[] finderArgs = new Object[] { classNameId };
1026
1027 Long count = (Long)FinderCacheUtil.getResult(finderPath, finderArgs,
1028 this);
1029
1030 if (count == null) {
1031 StringBundler query = new StringBundler(2);
1032
1033 query.append(_SQL_COUNT_ASSETTAGSTATS_WHERE);
1034
1035 query.append(_FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2);
1036
1037 String sql = query.toString();
1038
1039 Session session = null;
1040
1041 try {
1042 session = openSession();
1043
1044 Query q = session.createQuery(sql);
1045
1046 QueryPos qPos = QueryPos.getInstance(q);
1047
1048 qPos.add(classNameId);
1049
1050 count = (Long)q.uniqueResult();
1051
1052 FinderCacheUtil.putResult(finderPath, finderArgs, count);
1053 }
1054 catch (Exception e) {
1055 FinderCacheUtil.removeResult(finderPath, finderArgs);
1056
1057 throw processException(e);
1058 }
1059 finally {
1060 closeSession(session);
1061 }
1062 }
1063
1064 return count.intValue();
1065 }
1066
1067 private static final String _FINDER_COLUMN_CLASSNAMEID_CLASSNAMEID_2 = "assetTagStats.classNameId = ?";
1068 public static final FinderPath FINDER_PATH_FETCH_BY_T_C = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1069 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED,
1070 AssetTagStatsImpl.class, FINDER_CLASS_NAME_ENTITY, "fetchByT_C",
1071 new String[] { Long.class.getName(), Long.class.getName() },
1072 AssetTagStatsModelImpl.TAGID_COLUMN_BITMASK |
1073 AssetTagStatsModelImpl.CLASSNAMEID_COLUMN_BITMASK);
1074 public static final FinderPath FINDER_PATH_COUNT_BY_T_C = new FinderPath(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1075 AssetTagStatsModelImpl.FINDER_CACHE_ENABLED, Long.class,
1076 FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION, "countByT_C",
1077 new String[] { Long.class.getName(), Long.class.getName() });
1078
1079
1088 @Override
1089 public AssetTagStats findByT_C(long tagId, long classNameId)
1090 throws NoSuchTagStatsException, SystemException {
1091 AssetTagStats assetTagStats = fetchByT_C(tagId, classNameId);
1092
1093 if (assetTagStats == null) {
1094 StringBundler msg = new StringBundler(6);
1095
1096 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1097
1098 msg.append("tagId=");
1099 msg.append(tagId);
1100
1101 msg.append(", classNameId=");
1102 msg.append(classNameId);
1103
1104 msg.append(StringPool.CLOSE_CURLY_BRACE);
1105
1106 if (_log.isWarnEnabled()) {
1107 _log.warn(msg.toString());
1108 }
1109
1110 throw new NoSuchTagStatsException(msg.toString());
1111 }
1112
1113 return assetTagStats;
1114 }
1115
1116
1124 @Override
1125 public AssetTagStats fetchByT_C(long tagId, long classNameId)
1126 throws SystemException {
1127 return fetchByT_C(tagId, classNameId, true);
1128 }
1129
1130
1139 @Override
1140 public AssetTagStats fetchByT_C(long tagId, long classNameId,
1141 boolean retrieveFromCache) throws SystemException {
1142 Object[] finderArgs = new Object[] { tagId, classNameId };
1143
1144 Object result = null;
1145
1146 if (retrieveFromCache) {
1147 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_T_C,
1148 finderArgs, this);
1149 }
1150
1151 if (result instanceof AssetTagStats) {
1152 AssetTagStats assetTagStats = (AssetTagStats)result;
1153
1154 if ((tagId != assetTagStats.getTagId()) ||
1155 (classNameId != assetTagStats.getClassNameId())) {
1156 result = null;
1157 }
1158 }
1159
1160 if (result == null) {
1161 StringBundler query = new StringBundler(4);
1162
1163 query.append(_SQL_SELECT_ASSETTAGSTATS_WHERE);
1164
1165 query.append(_FINDER_COLUMN_T_C_TAGID_2);
1166
1167 query.append(_FINDER_COLUMN_T_C_CLASSNAMEID_2);
1168
1169 String sql = query.toString();
1170
1171 Session session = null;
1172
1173 try {
1174 session = openSession();
1175
1176 Query q = session.createQuery(sql);
1177
1178 QueryPos qPos = QueryPos.getInstance(q);
1179
1180 qPos.add(tagId);
1181
1182 qPos.add(classNameId);
1183
1184 List<AssetTagStats> list = q.list();
1185
1186 if (list.isEmpty()) {
1187 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_C,
1188 finderArgs, list);
1189 }
1190 else {
1191 AssetTagStats assetTagStats = list.get(0);
1192
1193 result = assetTagStats;
1194
1195 cacheResult(assetTagStats);
1196
1197 if ((assetTagStats.getTagId() != tagId) ||
1198 (assetTagStats.getClassNameId() != classNameId)) {
1199 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_C,
1200 finderArgs, assetTagStats);
1201 }
1202 }
1203 }
1204 catch (Exception e) {
1205 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_T_C,
1206 finderArgs);
1207
1208 throw processException(e);
1209 }
1210 finally {
1211 closeSession(session);
1212 }
1213 }
1214
1215 if (result instanceof List<?>) {
1216 return null;
1217 }
1218 else {
1219 return (AssetTagStats)result;
1220 }
1221 }
1222
1223
1231 @Override
1232 public AssetTagStats removeByT_C(long tagId, long classNameId)
1233 throws NoSuchTagStatsException, SystemException {
1234 AssetTagStats assetTagStats = findByT_C(tagId, classNameId);
1235
1236 return remove(assetTagStats);
1237 }
1238
1239
1247 @Override
1248 public int countByT_C(long tagId, long classNameId)
1249 throws SystemException {
1250 FinderPath finderPath = FINDER_PATH_COUNT_BY_T_C;
1251
1252 Object[] finderArgs = new Object[] { tagId, classNameId };
1253
1254 Long count = (Long)FinderCacheUtil.getResult(finderPath, finderArgs,
1255 this);
1256
1257 if (count == null) {
1258 StringBundler query = new StringBundler(3);
1259
1260 query.append(_SQL_COUNT_ASSETTAGSTATS_WHERE);
1261
1262 query.append(_FINDER_COLUMN_T_C_TAGID_2);
1263
1264 query.append(_FINDER_COLUMN_T_C_CLASSNAMEID_2);
1265
1266 String sql = query.toString();
1267
1268 Session session = null;
1269
1270 try {
1271 session = openSession();
1272
1273 Query q = session.createQuery(sql);
1274
1275 QueryPos qPos = QueryPos.getInstance(q);
1276
1277 qPos.add(tagId);
1278
1279 qPos.add(classNameId);
1280
1281 count = (Long)q.uniqueResult();
1282
1283 FinderCacheUtil.putResult(finderPath, finderArgs, count);
1284 }
1285 catch (Exception e) {
1286 FinderCacheUtil.removeResult(finderPath, finderArgs);
1287
1288 throw processException(e);
1289 }
1290 finally {
1291 closeSession(session);
1292 }
1293 }
1294
1295 return count.intValue();
1296 }
1297
1298 private static final String _FINDER_COLUMN_T_C_TAGID_2 = "assetTagStats.tagId = ? AND ";
1299 private static final String _FINDER_COLUMN_T_C_CLASSNAMEID_2 = "assetTagStats.classNameId = ?";
1300
1301
1306 @Override
1307 public void cacheResult(AssetTagStats assetTagStats) {
1308 EntityCacheUtil.putResult(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1309 AssetTagStatsImpl.class, assetTagStats.getPrimaryKey(),
1310 assetTagStats);
1311
1312 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_C,
1313 new Object[] {
1314 assetTagStats.getTagId(), assetTagStats.getClassNameId()
1315 }, assetTagStats);
1316
1317 assetTagStats.resetOriginalValues();
1318 }
1319
1320
1325 @Override
1326 public void cacheResult(List<AssetTagStats> assetTagStatses) {
1327 for (AssetTagStats assetTagStats : assetTagStatses) {
1328 if (EntityCacheUtil.getResult(
1329 AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1330 AssetTagStatsImpl.class, assetTagStats.getPrimaryKey()) == null) {
1331 cacheResult(assetTagStats);
1332 }
1333 else {
1334 assetTagStats.resetOriginalValues();
1335 }
1336 }
1337 }
1338
1339
1346 @Override
1347 public void clearCache() {
1348 if (_HIBERNATE_CACHE_USE_SECOND_LEVEL_CACHE) {
1349 CacheRegistryUtil.clear(AssetTagStatsImpl.class.getName());
1350 }
1351
1352 EntityCacheUtil.clearCache(AssetTagStatsImpl.class.getName());
1353
1354 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
1355 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITH_PAGINATION);
1356 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION);
1357 }
1358
1359
1366 @Override
1367 public void clearCache(AssetTagStats assetTagStats) {
1368 EntityCacheUtil.removeResult(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1369 AssetTagStatsImpl.class, assetTagStats.getPrimaryKey());
1370
1371 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITH_PAGINATION);
1372 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION);
1373
1374 clearUniqueFindersCache(assetTagStats);
1375 }
1376
1377 @Override
1378 public void clearCache(List<AssetTagStats> assetTagStatses) {
1379 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITH_PAGINATION);
1380 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION);
1381
1382 for (AssetTagStats assetTagStats : assetTagStatses) {
1383 EntityCacheUtil.removeResult(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1384 AssetTagStatsImpl.class, assetTagStats.getPrimaryKey());
1385
1386 clearUniqueFindersCache(assetTagStats);
1387 }
1388 }
1389
1390 protected void cacheUniqueFindersCache(AssetTagStats assetTagStats) {
1391 if (assetTagStats.isNew()) {
1392 Object[] args = new Object[] {
1393 assetTagStats.getTagId(), assetTagStats.getClassNameId()
1394 };
1395
1396 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_T_C, args,
1397 Long.valueOf(1));
1398 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_C, args,
1399 assetTagStats);
1400 }
1401 else {
1402 AssetTagStatsModelImpl assetTagStatsModelImpl = (AssetTagStatsModelImpl)assetTagStats;
1403
1404 if ((assetTagStatsModelImpl.getColumnBitmask() &
1405 FINDER_PATH_FETCH_BY_T_C.getColumnBitmask()) != 0) {
1406 Object[] args = new Object[] {
1407 assetTagStats.getTagId(), assetTagStats.getClassNameId()
1408 };
1409
1410 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_T_C, args,
1411 Long.valueOf(1));
1412 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_C, args,
1413 assetTagStats);
1414 }
1415 }
1416 }
1417
1418 protected void clearUniqueFindersCache(AssetTagStats assetTagStats) {
1419 AssetTagStatsModelImpl assetTagStatsModelImpl = (AssetTagStatsModelImpl)assetTagStats;
1420
1421 Object[] args = new Object[] {
1422 assetTagStats.getTagId(), assetTagStats.getClassNameId()
1423 };
1424
1425 FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_T_C, args);
1426 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_T_C, args);
1427
1428 if ((assetTagStatsModelImpl.getColumnBitmask() &
1429 FINDER_PATH_FETCH_BY_T_C.getColumnBitmask()) != 0) {
1430 args = new Object[] {
1431 assetTagStatsModelImpl.getOriginalTagId(),
1432 assetTagStatsModelImpl.getOriginalClassNameId()
1433 };
1434
1435 FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_T_C, args);
1436 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_T_C, args);
1437 }
1438 }
1439
1440
1446 @Override
1447 public AssetTagStats create(long tagStatsId) {
1448 AssetTagStats assetTagStats = new AssetTagStatsImpl();
1449
1450 assetTagStats.setNew(true);
1451 assetTagStats.setPrimaryKey(tagStatsId);
1452
1453 return assetTagStats;
1454 }
1455
1456
1464 @Override
1465 public AssetTagStats remove(long tagStatsId)
1466 throws NoSuchTagStatsException, SystemException {
1467 return remove((Serializable)tagStatsId);
1468 }
1469
1470
1478 @Override
1479 public AssetTagStats remove(Serializable primaryKey)
1480 throws NoSuchTagStatsException, SystemException {
1481 Session session = null;
1482
1483 try {
1484 session = openSession();
1485
1486 AssetTagStats assetTagStats = (AssetTagStats)session.get(AssetTagStatsImpl.class,
1487 primaryKey);
1488
1489 if (assetTagStats == null) {
1490 if (_log.isWarnEnabled()) {
1491 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + primaryKey);
1492 }
1493
1494 throw new NoSuchTagStatsException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
1495 primaryKey);
1496 }
1497
1498 return remove(assetTagStats);
1499 }
1500 catch (NoSuchTagStatsException nsee) {
1501 throw nsee;
1502 }
1503 catch (Exception e) {
1504 throw processException(e);
1505 }
1506 finally {
1507 closeSession(session);
1508 }
1509 }
1510
1511 @Override
1512 protected AssetTagStats removeImpl(AssetTagStats assetTagStats)
1513 throws SystemException {
1514 assetTagStats = toUnwrappedModel(assetTagStats);
1515
1516 Session session = null;
1517
1518 try {
1519 session = openSession();
1520
1521 if (!session.contains(assetTagStats)) {
1522 assetTagStats = (AssetTagStats)session.get(AssetTagStatsImpl.class,
1523 assetTagStats.getPrimaryKeyObj());
1524 }
1525
1526 if (assetTagStats != null) {
1527 session.delete(assetTagStats);
1528 }
1529 }
1530 catch (Exception e) {
1531 throw processException(e);
1532 }
1533 finally {
1534 closeSession(session);
1535 }
1536
1537 if (assetTagStats != null) {
1538 clearCache(assetTagStats);
1539 }
1540
1541 return assetTagStats;
1542 }
1543
1544 @Override
1545 public AssetTagStats updateImpl(
1546 com.liferay.portlet.asset.model.AssetTagStats assetTagStats)
1547 throws SystemException {
1548 assetTagStats = toUnwrappedModel(assetTagStats);
1549
1550 boolean isNew = assetTagStats.isNew();
1551
1552 AssetTagStatsModelImpl assetTagStatsModelImpl = (AssetTagStatsModelImpl)assetTagStats;
1553
1554 Session session = null;
1555
1556 try {
1557 session = openSession();
1558
1559 if (assetTagStats.isNew()) {
1560 session.save(assetTagStats);
1561
1562 assetTagStats.setNew(false);
1563 }
1564 else {
1565 session.merge(assetTagStats);
1566 }
1567 }
1568 catch (Exception e) {
1569 throw processException(e);
1570 }
1571 finally {
1572 closeSession(session);
1573 }
1574
1575 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITH_PAGINATION);
1576
1577 if (isNew || !AssetTagStatsModelImpl.COLUMN_BITMASK_ENABLED) {
1578 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION);
1579 }
1580
1581 else {
1582 if ((assetTagStatsModelImpl.getColumnBitmask() &
1583 FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_TAGID.getColumnBitmask()) != 0) {
1584 Object[] args = new Object[] {
1585 assetTagStatsModelImpl.getOriginalTagId()
1586 };
1587
1588 FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_TAGID, args);
1589 FinderCacheUtil.removeResult(FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_TAGID,
1590 args);
1591
1592 args = new Object[] { assetTagStatsModelImpl.getTagId() };
1593
1594 FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_TAGID, args);
1595 FinderCacheUtil.removeResult(FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_TAGID,
1596 args);
1597 }
1598
1599 if ((assetTagStatsModelImpl.getColumnBitmask() &
1600 FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_CLASSNAMEID.getColumnBitmask()) != 0) {
1601 Object[] args = new Object[] {
1602 assetTagStatsModelImpl.getOriginalClassNameId()
1603 };
1604
1605 FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_CLASSNAMEID,
1606 args);
1607 FinderCacheUtil.removeResult(FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_CLASSNAMEID,
1608 args);
1609
1610 args = new Object[] { assetTagStatsModelImpl.getClassNameId() };
1611
1612 FinderCacheUtil.removeResult(FINDER_PATH_COUNT_BY_CLASSNAMEID,
1613 args);
1614 FinderCacheUtil.removeResult(FINDER_PATH_WITHOUT_PAGINATION_FIND_BY_CLASSNAMEID,
1615 args);
1616 }
1617 }
1618
1619 EntityCacheUtil.putResult(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1620 AssetTagStatsImpl.class, assetTagStats.getPrimaryKey(),
1621 assetTagStats);
1622
1623 clearUniqueFindersCache(assetTagStats);
1624 cacheUniqueFindersCache(assetTagStats);
1625
1626 return assetTagStats;
1627 }
1628
1629 protected AssetTagStats toUnwrappedModel(AssetTagStats assetTagStats) {
1630 if (assetTagStats instanceof AssetTagStatsImpl) {
1631 return assetTagStats;
1632 }
1633
1634 AssetTagStatsImpl assetTagStatsImpl = new AssetTagStatsImpl();
1635
1636 assetTagStatsImpl.setNew(assetTagStats.isNew());
1637 assetTagStatsImpl.setPrimaryKey(assetTagStats.getPrimaryKey());
1638
1639 assetTagStatsImpl.setTagStatsId(assetTagStats.getTagStatsId());
1640 assetTagStatsImpl.setTagId(assetTagStats.getTagId());
1641 assetTagStatsImpl.setClassNameId(assetTagStats.getClassNameId());
1642 assetTagStatsImpl.setAssetCount(assetTagStats.getAssetCount());
1643
1644 return assetTagStatsImpl;
1645 }
1646
1647
1655 @Override
1656 public AssetTagStats findByPrimaryKey(Serializable primaryKey)
1657 throws NoSuchTagStatsException, SystemException {
1658 AssetTagStats assetTagStats = fetchByPrimaryKey(primaryKey);
1659
1660 if (assetTagStats == null) {
1661 if (_log.isWarnEnabled()) {
1662 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + primaryKey);
1663 }
1664
1665 throw new NoSuchTagStatsException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
1666 primaryKey);
1667 }
1668
1669 return assetTagStats;
1670 }
1671
1672
1680 @Override
1681 public AssetTagStats findByPrimaryKey(long tagStatsId)
1682 throws NoSuchTagStatsException, SystemException {
1683 return findByPrimaryKey((Serializable)tagStatsId);
1684 }
1685
1686
1693 @Override
1694 public AssetTagStats fetchByPrimaryKey(Serializable primaryKey)
1695 throws SystemException {
1696 AssetTagStats assetTagStats = (AssetTagStats)EntityCacheUtil.getResult(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1697 AssetTagStatsImpl.class, primaryKey);
1698
1699 if (assetTagStats == _nullAssetTagStats) {
1700 return null;
1701 }
1702
1703 if (assetTagStats == null) {
1704 Session session = null;
1705
1706 try {
1707 session = openSession();
1708
1709 assetTagStats = (AssetTagStats)session.get(AssetTagStatsImpl.class,
1710 primaryKey);
1711
1712 if (assetTagStats != null) {
1713 cacheResult(assetTagStats);
1714 }
1715 else {
1716 EntityCacheUtil.putResult(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1717 AssetTagStatsImpl.class, primaryKey, _nullAssetTagStats);
1718 }
1719 }
1720 catch (Exception e) {
1721 EntityCacheUtil.removeResult(AssetTagStatsModelImpl.ENTITY_CACHE_ENABLED,
1722 AssetTagStatsImpl.class, primaryKey);
1723
1724 throw processException(e);
1725 }
1726 finally {
1727 closeSession(session);
1728 }
1729 }
1730
1731 return assetTagStats;
1732 }
1733
1734
1741 @Override
1742 public AssetTagStats fetchByPrimaryKey(long tagStatsId)
1743 throws SystemException {
1744 return fetchByPrimaryKey((Serializable)tagStatsId);
1745 }
1746
1747
1753 @Override
1754 public List<AssetTagStats> findAll() throws SystemException {
1755 return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
1756 }
1757
1758
1770 @Override
1771 public List<AssetTagStats> findAll(int start, int end)
1772 throws SystemException {
1773 return findAll(start, end, null);
1774 }
1775
1776
1789 @Override
1790 public List<AssetTagStats> findAll(int start, int end,
1791 OrderByComparator orderByComparator) throws SystemException {
1792 boolean pagination = true;
1793 FinderPath finderPath = null;
1794 Object[] finderArgs = null;
1795
1796 if ((start == QueryUtil.ALL_POS) && (end == QueryUtil.ALL_POS) &&
1797 (orderByComparator == null)) {
1798 pagination = false;
1799 finderPath = FINDER_PATH_WITHOUT_PAGINATION_FIND_ALL;
1800 finderArgs = FINDER_ARGS_EMPTY;
1801 }
1802 else {
1803 finderPath = FINDER_PATH_WITH_PAGINATION_FIND_ALL;
1804 finderArgs = new Object[] { start, end, orderByComparator };
1805 }
1806
1807 List<AssetTagStats> list = (List<AssetTagStats>)FinderCacheUtil.getResult(finderPath,
1808 finderArgs, this);
1809
1810 if (list == null) {
1811 StringBundler query = null;
1812 String sql = null;
1813
1814 if (orderByComparator != null) {
1815 query = new StringBundler(2 +
1816 (orderByComparator.getOrderByFields().length * 3));
1817
1818 query.append(_SQL_SELECT_ASSETTAGSTATS);
1819
1820 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1821 orderByComparator);
1822
1823 sql = query.toString();
1824 }
1825 else {
1826 sql = _SQL_SELECT_ASSETTAGSTATS;
1827
1828 if (pagination) {
1829 sql = sql.concat(AssetTagStatsModelImpl.ORDER_BY_JPQL);
1830 }
1831 }
1832
1833 Session session = null;
1834
1835 try {
1836 session = openSession();
1837
1838 Query q = session.createQuery(sql);
1839
1840 if (!pagination) {
1841 list = (List<AssetTagStats>)QueryUtil.list(q, getDialect(),
1842 start, end, false);
1843
1844 Collections.sort(list);
1845
1846 list = new UnmodifiableList<AssetTagStats>(list);
1847 }
1848 else {
1849 list = (List<AssetTagStats>)QueryUtil.list(q, getDialect(),
1850 start, end);
1851 }
1852
1853 cacheResult(list);
1854
1855 FinderCacheUtil.putResult(finderPath, finderArgs, list);
1856 }
1857 catch (Exception e) {
1858 FinderCacheUtil.removeResult(finderPath, finderArgs);
1859
1860 throw processException(e);
1861 }
1862 finally {
1863 closeSession(session);
1864 }
1865 }
1866
1867 return list;
1868 }
1869
1870
1875 @Override
1876 public void removeAll() throws SystemException {
1877 for (AssetTagStats assetTagStats : findAll()) {
1878 remove(assetTagStats);
1879 }
1880 }
1881
1882
1888 @Override
1889 public int countAll() throws SystemException {
1890 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
1891 FINDER_ARGS_EMPTY, this);
1892
1893 if (count == null) {
1894 Session session = null;
1895
1896 try {
1897 session = openSession();
1898
1899 Query q = session.createQuery(_SQL_COUNT_ASSETTAGSTATS);
1900
1901 count = (Long)q.uniqueResult();
1902
1903 FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL,
1904 FINDER_ARGS_EMPTY, count);
1905 }
1906 catch (Exception e) {
1907 FinderCacheUtil.removeResult(FINDER_PATH_COUNT_ALL,
1908 FINDER_ARGS_EMPTY);
1909
1910 throw processException(e);
1911 }
1912 finally {
1913 closeSession(session);
1914 }
1915 }
1916
1917 return count.intValue();
1918 }
1919
1920
1923 public void afterPropertiesSet() {
1924 String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
1925 com.liferay.portal.util.PropsUtil.get(
1926 "value.object.listener.com.liferay.portlet.asset.model.AssetTagStats")));
1927
1928 if (listenerClassNames.length > 0) {
1929 try {
1930 List<ModelListener<AssetTagStats>> listenersList = new ArrayList<ModelListener<AssetTagStats>>();
1931
1932 for (String listenerClassName : listenerClassNames) {
1933 listenersList.add((ModelListener<AssetTagStats>)InstanceFactory.newInstance(
1934 getClassLoader(), listenerClassName));
1935 }
1936
1937 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
1938 }
1939 catch (Exception e) {
1940 _log.error(e);
1941 }
1942 }
1943 }
1944
1945 public void destroy() {
1946 EntityCacheUtil.removeCache(AssetTagStatsImpl.class.getName());
1947 FinderCacheUtil.removeCache(FINDER_CLASS_NAME_ENTITY);
1948 FinderCacheUtil.removeCache(FINDER_CLASS_NAME_LIST_WITH_PAGINATION);
1949 FinderCacheUtil.removeCache(FINDER_CLASS_NAME_LIST_WITHOUT_PAGINATION);
1950 }
1951
1952 private static final String _SQL_SELECT_ASSETTAGSTATS = "SELECT assetTagStats FROM AssetTagStats assetTagStats";
1953 private static final String _SQL_SELECT_ASSETTAGSTATS_WHERE = "SELECT assetTagStats FROM AssetTagStats assetTagStats WHERE ";
1954 private static final String _SQL_COUNT_ASSETTAGSTATS = "SELECT COUNT(assetTagStats) FROM AssetTagStats assetTagStats";
1955 private static final String _SQL_COUNT_ASSETTAGSTATS_WHERE = "SELECT COUNT(assetTagStats) FROM AssetTagStats assetTagStats WHERE ";
1956 private static final String _ORDER_BY_ENTITY_ALIAS = "assetTagStats.";
1957 private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No AssetTagStats exists with the primary key ";
1958 private static final String _NO_SUCH_ENTITY_WITH_KEY = "No AssetTagStats exists with the key {";
1959 private static final boolean _HIBERNATE_CACHE_USE_SECOND_LEVEL_CACHE = com.liferay.portal.util.PropsValues.HIBERNATE_CACHE_USE_SECOND_LEVEL_CACHE;
1960 private static Log _log = LogFactoryUtil.getLog(AssetTagStatsPersistenceImpl.class);
1961 private static AssetTagStats _nullAssetTagStats = new AssetTagStatsImpl() {
1962 @Override
1963 public Object clone() {
1964 return this;
1965 }
1966
1967 @Override
1968 public CacheModel<AssetTagStats> toCacheModel() {
1969 return _nullAssetTagStatsCacheModel;
1970 }
1971 };
1972
1973 private static CacheModel<AssetTagStats> _nullAssetTagStatsCacheModel = new CacheModel<AssetTagStats>() {
1974 @Override
1975 public AssetTagStats toEntityModel() {
1976 return _nullAssetTagStats;
1977 }
1978 };
1979 }