1
14
15 package com.liferay.portlet.asset.service.persistence;
16
17 import com.liferay.portal.NoSuchModelException;
18 import com.liferay.portal.kernel.annotation.BeanReference;
19 import com.liferay.portal.kernel.cache.CacheRegistry;
20 import com.liferay.portal.kernel.dao.orm.EntityCacheUtil;
21 import com.liferay.portal.kernel.dao.orm.FinderCacheUtil;
22 import com.liferay.portal.kernel.dao.orm.FinderPath;
23 import com.liferay.portal.kernel.dao.orm.Query;
24 import com.liferay.portal.kernel.dao.orm.QueryPos;
25 import com.liferay.portal.kernel.dao.orm.QueryUtil;
26 import com.liferay.portal.kernel.dao.orm.Session;
27 import com.liferay.portal.kernel.exception.SystemException;
28 import com.liferay.portal.kernel.log.Log;
29 import com.liferay.portal.kernel.log.LogFactoryUtil;
30 import com.liferay.portal.kernel.util.GetterUtil;
31 import com.liferay.portal.kernel.util.InstanceFactory;
32 import com.liferay.portal.kernel.util.OrderByComparator;
33 import com.liferay.portal.kernel.util.StringBundler;
34 import com.liferay.portal.kernel.util.StringPool;
35 import com.liferay.portal.kernel.util.StringUtil;
36 import com.liferay.portal.kernel.util.Validator;
37 import com.liferay.portal.model.ModelListener;
38 import com.liferay.portal.service.persistence.BatchSessionUtil;
39 import com.liferay.portal.service.persistence.ResourcePersistence;
40 import com.liferay.portal.service.persistence.UserPersistence;
41 import com.liferay.portal.service.persistence.impl.BasePersistenceImpl;
42
43 import com.liferay.portlet.asset.NoSuchTagPropertyException;
44 import com.liferay.portlet.asset.model.AssetTagProperty;
45 import com.liferay.portlet.asset.model.impl.AssetTagPropertyImpl;
46 import com.liferay.portlet.asset.model.impl.AssetTagPropertyModelImpl;
47
48 import java.io.Serializable;
49
50 import java.util.ArrayList;
51 import java.util.Collections;
52 import java.util.List;
53
54
67 public class AssetTagPropertyPersistenceImpl extends BasePersistenceImpl<AssetTagProperty>
68 implements AssetTagPropertyPersistence {
69 public static final String FINDER_CLASS_NAME_ENTITY = AssetTagPropertyImpl.class.getName();
70 public static final String FINDER_CLASS_NAME_LIST = FINDER_CLASS_NAME_ENTITY +
71 ".List";
72 public static final FinderPath FINDER_PATH_FIND_BY_COMPANYID = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
73 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
74 FINDER_CLASS_NAME_LIST, "findByCompanyId",
75 new String[] {
76 Long.class.getName(),
77
78 "java.lang.Integer", "java.lang.Integer",
79 "com.liferay.portal.kernel.util.OrderByComparator"
80 });
81 public static final FinderPath FINDER_PATH_COUNT_BY_COMPANYID = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
82 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
83 FINDER_CLASS_NAME_LIST, "countByCompanyId",
84 new String[] { Long.class.getName() });
85 public static final FinderPath FINDER_PATH_FIND_BY_TAGID = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
86 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
87 FINDER_CLASS_NAME_LIST, "findByTagId",
88 new String[] {
89 Long.class.getName(),
90
91 "java.lang.Integer", "java.lang.Integer",
92 "com.liferay.portal.kernel.util.OrderByComparator"
93 });
94 public static final FinderPath FINDER_PATH_COUNT_BY_TAGID = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
95 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
96 FINDER_CLASS_NAME_LIST, "countByTagId",
97 new String[] { Long.class.getName() });
98 public static final FinderPath FINDER_PATH_FIND_BY_C_K = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
99 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
100 FINDER_CLASS_NAME_LIST, "findByC_K",
101 new String[] {
102 Long.class.getName(), String.class.getName(),
103
104 "java.lang.Integer", "java.lang.Integer",
105 "com.liferay.portal.kernel.util.OrderByComparator"
106 });
107 public static final FinderPath FINDER_PATH_COUNT_BY_C_K = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
108 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
109 FINDER_CLASS_NAME_LIST, "countByC_K",
110 new String[] { Long.class.getName(), String.class.getName() });
111 public static final FinderPath FINDER_PATH_FETCH_BY_T_K = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
112 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
113 FINDER_CLASS_NAME_ENTITY, "fetchByT_K",
114 new String[] { Long.class.getName(), String.class.getName() });
115 public static final FinderPath FINDER_PATH_COUNT_BY_T_K = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
116 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
117 FINDER_CLASS_NAME_LIST, "countByT_K",
118 new String[] { Long.class.getName(), String.class.getName() });
119 public static final FinderPath FINDER_PATH_FIND_ALL = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
120 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
121 FINDER_CLASS_NAME_LIST, "findAll", new String[0]);
122 public static final FinderPath FINDER_PATH_COUNT_ALL = new FinderPath(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
123 AssetTagPropertyModelImpl.FINDER_CACHE_ENABLED,
124 FINDER_CLASS_NAME_LIST, "countAll", new String[0]);
125
126 public void cacheResult(AssetTagProperty assetTagProperty) {
127 EntityCacheUtil.putResult(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
128 AssetTagPropertyImpl.class, assetTagProperty.getPrimaryKey(),
129 assetTagProperty);
130
131 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_K,
132 new Object[] {
133 new Long(assetTagProperty.getTagId()),
134
135 assetTagProperty.getKey()
136 }, assetTagProperty);
137 }
138
139 public void cacheResult(List<AssetTagProperty> assetTagProperties) {
140 for (AssetTagProperty assetTagProperty : assetTagProperties) {
141 if (EntityCacheUtil.getResult(
142 AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
143 AssetTagPropertyImpl.class,
144 assetTagProperty.getPrimaryKey(), this) == null) {
145 cacheResult(assetTagProperty);
146 }
147 }
148 }
149
150 public void clearCache() {
151 CacheRegistry.clear(AssetTagPropertyImpl.class.getName());
152 EntityCacheUtil.clearCache(AssetTagPropertyImpl.class.getName());
153 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_ENTITY);
154 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
155 }
156
157 public void clearCache(AssetTagProperty assetTagProperty) {
158 EntityCacheUtil.removeResult(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
159 AssetTagPropertyImpl.class, assetTagProperty.getPrimaryKey());
160
161 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_T_K,
162 new Object[] {
163 new Long(assetTagProperty.getTagId()),
164
165 assetTagProperty.getKey()
166 });
167 }
168
169 public AssetTagProperty create(long tagPropertyId) {
170 AssetTagProperty assetTagProperty = new AssetTagPropertyImpl();
171
172 assetTagProperty.setNew(true);
173 assetTagProperty.setPrimaryKey(tagPropertyId);
174
175 return assetTagProperty;
176 }
177
178 public AssetTagProperty remove(Serializable primaryKey)
179 throws NoSuchModelException, SystemException {
180 return remove(((Long)primaryKey).longValue());
181 }
182
183 public AssetTagProperty remove(long tagPropertyId)
184 throws NoSuchTagPropertyException, SystemException {
185 Session session = null;
186
187 try {
188 session = openSession();
189
190 AssetTagProperty assetTagProperty = (AssetTagProperty)session.get(AssetTagPropertyImpl.class,
191 new Long(tagPropertyId));
192
193 if (assetTagProperty == null) {
194 if (_log.isWarnEnabled()) {
195 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + tagPropertyId);
196 }
197
198 throw new NoSuchTagPropertyException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
199 tagPropertyId);
200 }
201
202 return remove(assetTagProperty);
203 }
204 catch (NoSuchTagPropertyException nsee) {
205 throw nsee;
206 }
207 catch (Exception e) {
208 throw processException(e);
209 }
210 finally {
211 closeSession(session);
212 }
213 }
214
215 public AssetTagProperty remove(AssetTagProperty assetTagProperty)
216 throws SystemException {
217 for (ModelListener<AssetTagProperty> listener : listeners) {
218 listener.onBeforeRemove(assetTagProperty);
219 }
220
221 assetTagProperty = removeImpl(assetTagProperty);
222
223 for (ModelListener<AssetTagProperty> listener : listeners) {
224 listener.onAfterRemove(assetTagProperty);
225 }
226
227 return assetTagProperty;
228 }
229
230 protected AssetTagProperty removeImpl(AssetTagProperty assetTagProperty)
231 throws SystemException {
232 assetTagProperty = toUnwrappedModel(assetTagProperty);
233
234 Session session = null;
235
236 try {
237 session = openSession();
238
239 if (assetTagProperty.isCachedModel() ||
240 BatchSessionUtil.isEnabled()) {
241 Object staleObject = session.get(AssetTagPropertyImpl.class,
242 assetTagProperty.getPrimaryKeyObj());
243
244 if (staleObject != null) {
245 session.evict(staleObject);
246 }
247 }
248
249 session.delete(assetTagProperty);
250
251 session.flush();
252 }
253 catch (Exception e) {
254 throw processException(e);
255 }
256 finally {
257 closeSession(session);
258 }
259
260 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
261
262 AssetTagPropertyModelImpl assetTagPropertyModelImpl = (AssetTagPropertyModelImpl)assetTagProperty;
263
264 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_T_K,
265 new Object[] {
266 new Long(assetTagPropertyModelImpl.getOriginalTagId()),
267
268 assetTagPropertyModelImpl.getOriginalKey()
269 });
270
271 EntityCacheUtil.removeResult(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
272 AssetTagPropertyImpl.class, assetTagProperty.getPrimaryKey());
273
274 return assetTagProperty;
275 }
276
277 public AssetTagProperty updateImpl(
278 com.liferay.portlet.asset.model.AssetTagProperty assetTagProperty,
279 boolean merge) throws SystemException {
280 assetTagProperty = toUnwrappedModel(assetTagProperty);
281
282 boolean isNew = assetTagProperty.isNew();
283
284 AssetTagPropertyModelImpl assetTagPropertyModelImpl = (AssetTagPropertyModelImpl)assetTagProperty;
285
286 Session session = null;
287
288 try {
289 session = openSession();
290
291 BatchSessionUtil.update(session, assetTagProperty, merge);
292
293 assetTagProperty.setNew(false);
294 }
295 catch (Exception e) {
296 throw processException(e);
297 }
298 finally {
299 closeSession(session);
300 }
301
302 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
303
304 EntityCacheUtil.putResult(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
305 AssetTagPropertyImpl.class, assetTagProperty.getPrimaryKey(),
306 assetTagProperty);
307
308 if (!isNew &&
309 ((assetTagProperty.getTagId() != assetTagPropertyModelImpl.getOriginalTagId()) ||
310 !Validator.equals(assetTagProperty.getKey(),
311 assetTagPropertyModelImpl.getOriginalKey()))) {
312 FinderCacheUtil.removeResult(FINDER_PATH_FETCH_BY_T_K,
313 new Object[] {
314 new Long(assetTagPropertyModelImpl.getOriginalTagId()),
315
316 assetTagPropertyModelImpl.getOriginalKey()
317 });
318 }
319
320 if (isNew ||
321 ((assetTagProperty.getTagId() != assetTagPropertyModelImpl.getOriginalTagId()) ||
322 !Validator.equals(assetTagProperty.getKey(),
323 assetTagPropertyModelImpl.getOriginalKey()))) {
324 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_K,
325 new Object[] {
326 new Long(assetTagProperty.getTagId()),
327
328 assetTagProperty.getKey()
329 }, assetTagProperty);
330 }
331
332 return assetTagProperty;
333 }
334
335 protected AssetTagProperty toUnwrappedModel(
336 AssetTagProperty assetTagProperty) {
337 if (assetTagProperty instanceof AssetTagPropertyImpl) {
338 return assetTagProperty;
339 }
340
341 AssetTagPropertyImpl assetTagPropertyImpl = new AssetTagPropertyImpl();
342
343 assetTagPropertyImpl.setNew(assetTagProperty.isNew());
344 assetTagPropertyImpl.setPrimaryKey(assetTagProperty.getPrimaryKey());
345
346 assetTagPropertyImpl.setTagPropertyId(assetTagProperty.getTagPropertyId());
347 assetTagPropertyImpl.setCompanyId(assetTagProperty.getCompanyId());
348 assetTagPropertyImpl.setUserId(assetTagProperty.getUserId());
349 assetTagPropertyImpl.setUserName(assetTagProperty.getUserName());
350 assetTagPropertyImpl.setCreateDate(assetTagProperty.getCreateDate());
351 assetTagPropertyImpl.setModifiedDate(assetTagProperty.getModifiedDate());
352 assetTagPropertyImpl.setTagId(assetTagProperty.getTagId());
353 assetTagPropertyImpl.setKey(assetTagProperty.getKey());
354 assetTagPropertyImpl.setValue(assetTagProperty.getValue());
355
356 return assetTagPropertyImpl;
357 }
358
359 public AssetTagProperty findByPrimaryKey(Serializable primaryKey)
360 throws NoSuchModelException, SystemException {
361 return findByPrimaryKey(((Long)primaryKey).longValue());
362 }
363
364 public AssetTagProperty findByPrimaryKey(long tagPropertyId)
365 throws NoSuchTagPropertyException, SystemException {
366 AssetTagProperty assetTagProperty = fetchByPrimaryKey(tagPropertyId);
367
368 if (assetTagProperty == null) {
369 if (_log.isWarnEnabled()) {
370 _log.warn(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY + tagPropertyId);
371 }
372
373 throw new NoSuchTagPropertyException(_NO_SUCH_ENTITY_WITH_PRIMARY_KEY +
374 tagPropertyId);
375 }
376
377 return assetTagProperty;
378 }
379
380 public AssetTagProperty fetchByPrimaryKey(Serializable primaryKey)
381 throws SystemException {
382 return fetchByPrimaryKey(((Long)primaryKey).longValue());
383 }
384
385 public AssetTagProperty fetchByPrimaryKey(long tagPropertyId)
386 throws SystemException {
387 AssetTagProperty assetTagProperty = (AssetTagProperty)EntityCacheUtil.getResult(AssetTagPropertyModelImpl.ENTITY_CACHE_ENABLED,
388 AssetTagPropertyImpl.class, tagPropertyId, this);
389
390 if (assetTagProperty == null) {
391 Session session = null;
392
393 try {
394 session = openSession();
395
396 assetTagProperty = (AssetTagProperty)session.get(AssetTagPropertyImpl.class,
397 new Long(tagPropertyId));
398 }
399 catch (Exception e) {
400 throw processException(e);
401 }
402 finally {
403 if (assetTagProperty != null) {
404 cacheResult(assetTagProperty);
405 }
406
407 closeSession(session);
408 }
409 }
410
411 return assetTagProperty;
412 }
413
414 public List<AssetTagProperty> findByCompanyId(long companyId)
415 throws SystemException {
416 return findByCompanyId(companyId, QueryUtil.ALL_POS, QueryUtil.ALL_POS,
417 null);
418 }
419
420 public List<AssetTagProperty> findByCompanyId(long companyId, int start,
421 int end) throws SystemException {
422 return findByCompanyId(companyId, start, end, null);
423 }
424
425 public List<AssetTagProperty> findByCompanyId(long companyId, int start,
426 int end, OrderByComparator orderByComparator) throws SystemException {
427 Object[] finderArgs = new Object[] {
428 new Long(companyId),
429
430 String.valueOf(start), String.valueOf(end),
431 String.valueOf(orderByComparator)
432 };
433
434 List<AssetTagProperty> list = (List<AssetTagProperty>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_COMPANYID,
435 finderArgs, this);
436
437 if (list == null) {
438 Session session = null;
439
440 try {
441 session = openSession();
442
443 StringBundler query = null;
444
445 if (orderByComparator != null) {
446 query = new StringBundler(3 +
447 (orderByComparator.getOrderByFields().length * 3));
448 }
449 else {
450 query = new StringBundler(3);
451 }
452
453 query.append(_SQL_SELECT_ASSETTAGPROPERTY_WHERE);
454
455 query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
456
457 if (orderByComparator != null) {
458 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
459 orderByComparator);
460 }
461
462 else {
463 query.append(AssetTagPropertyModelImpl.ORDER_BY_JPQL);
464 }
465
466 String sql = query.toString();
467
468 Query q = session.createQuery(sql);
469
470 QueryPos qPos = QueryPos.getInstance(q);
471
472 qPos.add(companyId);
473
474 list = (List<AssetTagProperty>)QueryUtil.list(q, getDialect(),
475 start, end);
476 }
477 catch (Exception e) {
478 throw processException(e);
479 }
480 finally {
481 if (list == null) {
482 list = new ArrayList<AssetTagProperty>();
483 }
484
485 cacheResult(list);
486
487 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_COMPANYID,
488 finderArgs, list);
489
490 closeSession(session);
491 }
492 }
493
494 return list;
495 }
496
497 public AssetTagProperty findByCompanyId_First(long companyId,
498 OrderByComparator orderByComparator)
499 throws NoSuchTagPropertyException, SystemException {
500 List<AssetTagProperty> list = findByCompanyId(companyId, 0, 1,
501 orderByComparator);
502
503 if (list.isEmpty()) {
504 StringBundler msg = new StringBundler(4);
505
506 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
507
508 msg.append("companyId=");
509 msg.append(companyId);
510
511 msg.append(StringPool.CLOSE_CURLY_BRACE);
512
513 throw new NoSuchTagPropertyException(msg.toString());
514 }
515 else {
516 return list.get(0);
517 }
518 }
519
520 public AssetTagProperty findByCompanyId_Last(long companyId,
521 OrderByComparator orderByComparator)
522 throws NoSuchTagPropertyException, SystemException {
523 int count = countByCompanyId(companyId);
524
525 List<AssetTagProperty> list = findByCompanyId(companyId, count - 1,
526 count, orderByComparator);
527
528 if (list.isEmpty()) {
529 StringBundler msg = new StringBundler(4);
530
531 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
532
533 msg.append("companyId=");
534 msg.append(companyId);
535
536 msg.append(StringPool.CLOSE_CURLY_BRACE);
537
538 throw new NoSuchTagPropertyException(msg.toString());
539 }
540 else {
541 return list.get(0);
542 }
543 }
544
545 public AssetTagProperty[] findByCompanyId_PrevAndNext(long tagPropertyId,
546 long companyId, OrderByComparator orderByComparator)
547 throws NoSuchTagPropertyException, SystemException {
548 AssetTagProperty assetTagProperty = findByPrimaryKey(tagPropertyId);
549
550 Session session = null;
551
552 try {
553 session = openSession();
554
555 AssetTagProperty[] array = new AssetTagPropertyImpl[3];
556
557 array[0] = getByCompanyId_PrevAndNext(session, assetTagProperty,
558 companyId, orderByComparator, true);
559
560 array[1] = assetTagProperty;
561
562 array[2] = getByCompanyId_PrevAndNext(session, assetTagProperty,
563 companyId, orderByComparator, false);
564
565 return array;
566 }
567 catch (Exception e) {
568 throw processException(e);
569 }
570 finally {
571 closeSession(session);
572 }
573 }
574
575 protected AssetTagProperty getByCompanyId_PrevAndNext(Session session,
576 AssetTagProperty assetTagProperty, long companyId,
577 OrderByComparator orderByComparator, boolean previous) {
578 StringBundler query = null;
579
580 if (orderByComparator != null) {
581 query = new StringBundler(6 +
582 (orderByComparator.getOrderByFields().length * 6));
583 }
584 else {
585 query = new StringBundler(3);
586 }
587
588 query.append(_SQL_SELECT_ASSETTAGPROPERTY_WHERE);
589
590 query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
591
592 if (orderByComparator != null) {
593 String[] orderByFields = orderByComparator.getOrderByFields();
594
595 if (orderByFields.length > 0) {
596 query.append(WHERE_AND);
597 }
598
599 for (int i = 0; i < orderByFields.length; i++) {
600 query.append(_ORDER_BY_ENTITY_ALIAS);
601 query.append(orderByFields[i]);
602
603 if ((i + 1) < orderByFields.length) {
604 if (orderByComparator.isAscending() ^ previous) {
605 query.append(WHERE_GREATER_THAN_HAS_NEXT);
606 }
607 else {
608 query.append(WHERE_LESSER_THAN_HAS_NEXT);
609 }
610 }
611 else {
612 if (orderByComparator.isAscending() ^ previous) {
613 query.append(WHERE_GREATER_THAN);
614 }
615 else {
616 query.append(WHERE_LESSER_THAN);
617 }
618 }
619 }
620
621 query.append(ORDER_BY_CLAUSE);
622
623 for (int i = 0; i < orderByFields.length; i++) {
624 query.append(_ORDER_BY_ENTITY_ALIAS);
625 query.append(orderByFields[i]);
626
627 if ((i + 1) < orderByFields.length) {
628 if (orderByComparator.isAscending() ^ previous) {
629 query.append(ORDER_BY_ASC_HAS_NEXT);
630 }
631 else {
632 query.append(ORDER_BY_DESC_HAS_NEXT);
633 }
634 }
635 else {
636 if (orderByComparator.isAscending() ^ previous) {
637 query.append(ORDER_BY_ASC);
638 }
639 else {
640 query.append(ORDER_BY_DESC);
641 }
642 }
643 }
644 }
645
646 else {
647 query.append(AssetTagPropertyModelImpl.ORDER_BY_JPQL);
648 }
649
650 String sql = query.toString();
651
652 Query q = session.createQuery(sql);
653
654 q.setFirstResult(0);
655 q.setMaxResults(2);
656
657 QueryPos qPos = QueryPos.getInstance(q);
658
659 qPos.add(companyId);
660
661 if (orderByComparator != null) {
662 Object[] values = orderByComparator.getOrderByValues(assetTagProperty);
663
664 for (Object value : values) {
665 qPos.add(value);
666 }
667 }
668
669 List<AssetTagProperty> list = q.list();
670
671 if (list.size() == 2) {
672 return list.get(1);
673 }
674 else {
675 return null;
676 }
677 }
678
679 public List<AssetTagProperty> findByTagId(long tagId)
680 throws SystemException {
681 return findByTagId(tagId, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
682 }
683
684 public List<AssetTagProperty> findByTagId(long tagId, int start, int end)
685 throws SystemException {
686 return findByTagId(tagId, start, end, null);
687 }
688
689 public List<AssetTagProperty> findByTagId(long tagId, int start, int end,
690 OrderByComparator orderByComparator) throws SystemException {
691 Object[] finderArgs = new Object[] {
692 new Long(tagId),
693
694 String.valueOf(start), String.valueOf(end),
695 String.valueOf(orderByComparator)
696 };
697
698 List<AssetTagProperty> list = (List<AssetTagProperty>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_TAGID,
699 finderArgs, this);
700
701 if (list == null) {
702 Session session = null;
703
704 try {
705 session = openSession();
706
707 StringBundler query = null;
708
709 if (orderByComparator != null) {
710 query = new StringBundler(3 +
711 (orderByComparator.getOrderByFields().length * 3));
712 }
713 else {
714 query = new StringBundler(3);
715 }
716
717 query.append(_SQL_SELECT_ASSETTAGPROPERTY_WHERE);
718
719 query.append(_FINDER_COLUMN_TAGID_TAGID_2);
720
721 if (orderByComparator != null) {
722 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
723 orderByComparator);
724 }
725
726 else {
727 query.append(AssetTagPropertyModelImpl.ORDER_BY_JPQL);
728 }
729
730 String sql = query.toString();
731
732 Query q = session.createQuery(sql);
733
734 QueryPos qPos = QueryPos.getInstance(q);
735
736 qPos.add(tagId);
737
738 list = (List<AssetTagProperty>)QueryUtil.list(q, getDialect(),
739 start, end);
740 }
741 catch (Exception e) {
742 throw processException(e);
743 }
744 finally {
745 if (list == null) {
746 list = new ArrayList<AssetTagProperty>();
747 }
748
749 cacheResult(list);
750
751 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_TAGID,
752 finderArgs, list);
753
754 closeSession(session);
755 }
756 }
757
758 return list;
759 }
760
761 public AssetTagProperty findByTagId_First(long tagId,
762 OrderByComparator orderByComparator)
763 throws NoSuchTagPropertyException, SystemException {
764 List<AssetTagProperty> list = findByTagId(tagId, 0, 1, orderByComparator);
765
766 if (list.isEmpty()) {
767 StringBundler msg = new StringBundler(4);
768
769 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
770
771 msg.append("tagId=");
772 msg.append(tagId);
773
774 msg.append(StringPool.CLOSE_CURLY_BRACE);
775
776 throw new NoSuchTagPropertyException(msg.toString());
777 }
778 else {
779 return list.get(0);
780 }
781 }
782
783 public AssetTagProperty findByTagId_Last(long tagId,
784 OrderByComparator orderByComparator)
785 throws NoSuchTagPropertyException, SystemException {
786 int count = countByTagId(tagId);
787
788 List<AssetTagProperty> list = findByTagId(tagId, count - 1, count,
789 orderByComparator);
790
791 if (list.isEmpty()) {
792 StringBundler msg = new StringBundler(4);
793
794 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
795
796 msg.append("tagId=");
797 msg.append(tagId);
798
799 msg.append(StringPool.CLOSE_CURLY_BRACE);
800
801 throw new NoSuchTagPropertyException(msg.toString());
802 }
803 else {
804 return list.get(0);
805 }
806 }
807
808 public AssetTagProperty[] findByTagId_PrevAndNext(long tagPropertyId,
809 long tagId, OrderByComparator orderByComparator)
810 throws NoSuchTagPropertyException, SystemException {
811 AssetTagProperty assetTagProperty = findByPrimaryKey(tagPropertyId);
812
813 Session session = null;
814
815 try {
816 session = openSession();
817
818 AssetTagProperty[] array = new AssetTagPropertyImpl[3];
819
820 array[0] = getByTagId_PrevAndNext(session, assetTagProperty, tagId,
821 orderByComparator, true);
822
823 array[1] = assetTagProperty;
824
825 array[2] = getByTagId_PrevAndNext(session, assetTagProperty, tagId,
826 orderByComparator, false);
827
828 return array;
829 }
830 catch (Exception e) {
831 throw processException(e);
832 }
833 finally {
834 closeSession(session);
835 }
836 }
837
838 protected AssetTagProperty getByTagId_PrevAndNext(Session session,
839 AssetTagProperty assetTagProperty, long tagId,
840 OrderByComparator orderByComparator, boolean previous) {
841 StringBundler query = null;
842
843 if (orderByComparator != null) {
844 query = new StringBundler(6 +
845 (orderByComparator.getOrderByFields().length * 6));
846 }
847 else {
848 query = new StringBundler(3);
849 }
850
851 query.append(_SQL_SELECT_ASSETTAGPROPERTY_WHERE);
852
853 query.append(_FINDER_COLUMN_TAGID_TAGID_2);
854
855 if (orderByComparator != null) {
856 String[] orderByFields = orderByComparator.getOrderByFields();
857
858 if (orderByFields.length > 0) {
859 query.append(WHERE_AND);
860 }
861
862 for (int i = 0; i < orderByFields.length; i++) {
863 query.append(_ORDER_BY_ENTITY_ALIAS);
864 query.append(orderByFields[i]);
865
866 if ((i + 1) < orderByFields.length) {
867 if (orderByComparator.isAscending() ^ previous) {
868 query.append(WHERE_GREATER_THAN_HAS_NEXT);
869 }
870 else {
871 query.append(WHERE_LESSER_THAN_HAS_NEXT);
872 }
873 }
874 else {
875 if (orderByComparator.isAscending() ^ previous) {
876 query.append(WHERE_GREATER_THAN);
877 }
878 else {
879 query.append(WHERE_LESSER_THAN);
880 }
881 }
882 }
883
884 query.append(ORDER_BY_CLAUSE);
885
886 for (int i = 0; i < orderByFields.length; i++) {
887 query.append(_ORDER_BY_ENTITY_ALIAS);
888 query.append(orderByFields[i]);
889
890 if ((i + 1) < orderByFields.length) {
891 if (orderByComparator.isAscending() ^ previous) {
892 query.append(ORDER_BY_ASC_HAS_NEXT);
893 }
894 else {
895 query.append(ORDER_BY_DESC_HAS_NEXT);
896 }
897 }
898 else {
899 if (orderByComparator.isAscending() ^ previous) {
900 query.append(ORDER_BY_ASC);
901 }
902 else {
903 query.append(ORDER_BY_DESC);
904 }
905 }
906 }
907 }
908
909 else {
910 query.append(AssetTagPropertyModelImpl.ORDER_BY_JPQL);
911 }
912
913 String sql = query.toString();
914
915 Query q = session.createQuery(sql);
916
917 q.setFirstResult(0);
918 q.setMaxResults(2);
919
920 QueryPos qPos = QueryPos.getInstance(q);
921
922 qPos.add(tagId);
923
924 if (orderByComparator != null) {
925 Object[] values = orderByComparator.getOrderByValues(assetTagProperty);
926
927 for (Object value : values) {
928 qPos.add(value);
929 }
930 }
931
932 List<AssetTagProperty> list = q.list();
933
934 if (list.size() == 2) {
935 return list.get(1);
936 }
937 else {
938 return null;
939 }
940 }
941
942 public List<AssetTagProperty> findByC_K(long companyId, String key)
943 throws SystemException {
944 return findByC_K(companyId, key, QueryUtil.ALL_POS, QueryUtil.ALL_POS,
945 null);
946 }
947
948 public List<AssetTagProperty> findByC_K(long companyId, String key,
949 int start, int end) throws SystemException {
950 return findByC_K(companyId, key, start, end, null);
951 }
952
953 public List<AssetTagProperty> findByC_K(long companyId, String key,
954 int start, int end, OrderByComparator orderByComparator)
955 throws SystemException {
956 Object[] finderArgs = new Object[] {
957 new Long(companyId),
958
959 key,
960
961 String.valueOf(start), String.valueOf(end),
962 String.valueOf(orderByComparator)
963 };
964
965 List<AssetTagProperty> list = (List<AssetTagProperty>)FinderCacheUtil.getResult(FINDER_PATH_FIND_BY_C_K,
966 finderArgs, this);
967
968 if (list == null) {
969 Session session = null;
970
971 try {
972 session = openSession();
973
974 StringBundler query = null;
975
976 if (orderByComparator != null) {
977 query = new StringBundler(4 +
978 (orderByComparator.getOrderByFields().length * 3));
979 }
980 else {
981 query = new StringBundler(4);
982 }
983
984 query.append(_SQL_SELECT_ASSETTAGPROPERTY_WHERE);
985
986 query.append(_FINDER_COLUMN_C_K_COMPANYID_2);
987
988 if (key == null) {
989 query.append(_FINDER_COLUMN_C_K_KEY_1);
990 }
991 else {
992 if (key.equals(StringPool.BLANK)) {
993 query.append(_FINDER_COLUMN_C_K_KEY_3);
994 }
995 else {
996 query.append(_FINDER_COLUMN_C_K_KEY_2);
997 }
998 }
999
1000 if (orderByComparator != null) {
1001 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1002 orderByComparator);
1003 }
1004
1005 else {
1006 query.append(AssetTagPropertyModelImpl.ORDER_BY_JPQL);
1007 }
1008
1009 String sql = query.toString();
1010
1011 Query q = session.createQuery(sql);
1012
1013 QueryPos qPos = QueryPos.getInstance(q);
1014
1015 qPos.add(companyId);
1016
1017 if (key != null) {
1018 qPos.add(key);
1019 }
1020
1021 list = (List<AssetTagProperty>)QueryUtil.list(q, getDialect(),
1022 start, end);
1023 }
1024 catch (Exception e) {
1025 throw processException(e);
1026 }
1027 finally {
1028 if (list == null) {
1029 list = new ArrayList<AssetTagProperty>();
1030 }
1031
1032 cacheResult(list);
1033
1034 FinderCacheUtil.putResult(FINDER_PATH_FIND_BY_C_K, finderArgs,
1035 list);
1036
1037 closeSession(session);
1038 }
1039 }
1040
1041 return list;
1042 }
1043
1044 public AssetTagProperty findByC_K_First(long companyId, String key,
1045 OrderByComparator orderByComparator)
1046 throws NoSuchTagPropertyException, SystemException {
1047 List<AssetTagProperty> list = findByC_K(companyId, key, 0, 1,
1048 orderByComparator);
1049
1050 if (list.isEmpty()) {
1051 StringBundler msg = new StringBundler(6);
1052
1053 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1054
1055 msg.append("companyId=");
1056 msg.append(companyId);
1057
1058 msg.append(", key=");
1059 msg.append(key);
1060
1061 msg.append(StringPool.CLOSE_CURLY_BRACE);
1062
1063 throw new NoSuchTagPropertyException(msg.toString());
1064 }
1065 else {
1066 return list.get(0);
1067 }
1068 }
1069
1070 public AssetTagProperty findByC_K_Last(long companyId, String key,
1071 OrderByComparator orderByComparator)
1072 throws NoSuchTagPropertyException, SystemException {
1073 int count = countByC_K(companyId, key);
1074
1075 List<AssetTagProperty> list = findByC_K(companyId, key, count - 1,
1076 count, orderByComparator);
1077
1078 if (list.isEmpty()) {
1079 StringBundler msg = new StringBundler(6);
1080
1081 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1082
1083 msg.append("companyId=");
1084 msg.append(companyId);
1085
1086 msg.append(", key=");
1087 msg.append(key);
1088
1089 msg.append(StringPool.CLOSE_CURLY_BRACE);
1090
1091 throw new NoSuchTagPropertyException(msg.toString());
1092 }
1093 else {
1094 return list.get(0);
1095 }
1096 }
1097
1098 public AssetTagProperty[] findByC_K_PrevAndNext(long tagPropertyId,
1099 long companyId, String key, OrderByComparator orderByComparator)
1100 throws NoSuchTagPropertyException, SystemException {
1101 AssetTagProperty assetTagProperty = findByPrimaryKey(tagPropertyId);
1102
1103 Session session = null;
1104
1105 try {
1106 session = openSession();
1107
1108 AssetTagProperty[] array = new AssetTagPropertyImpl[3];
1109
1110 array[0] = getByC_K_PrevAndNext(session, assetTagProperty,
1111 companyId, key, orderByComparator, true);
1112
1113 array[1] = assetTagProperty;
1114
1115 array[2] = getByC_K_PrevAndNext(session, assetTagProperty,
1116 companyId, key, orderByComparator, false);
1117
1118 return array;
1119 }
1120 catch (Exception e) {
1121 throw processException(e);
1122 }
1123 finally {
1124 closeSession(session);
1125 }
1126 }
1127
1128 protected AssetTagProperty getByC_K_PrevAndNext(Session session,
1129 AssetTagProperty assetTagProperty, long companyId, String key,
1130 OrderByComparator orderByComparator, boolean previous) {
1131 StringBundler query = null;
1132
1133 if (orderByComparator != null) {
1134 query = new StringBundler(6 +
1135 (orderByComparator.getOrderByFields().length * 6));
1136 }
1137 else {
1138 query = new StringBundler(3);
1139 }
1140
1141 query.append(_SQL_SELECT_ASSETTAGPROPERTY_WHERE);
1142
1143 query.append(_FINDER_COLUMN_C_K_COMPANYID_2);
1144
1145 if (key == null) {
1146 query.append(_FINDER_COLUMN_C_K_KEY_1);
1147 }
1148 else {
1149 if (key.equals(StringPool.BLANK)) {
1150 query.append(_FINDER_COLUMN_C_K_KEY_3);
1151 }
1152 else {
1153 query.append(_FINDER_COLUMN_C_K_KEY_2);
1154 }
1155 }
1156
1157 if (orderByComparator != null) {
1158 String[] orderByFields = orderByComparator.getOrderByFields();
1159
1160 if (orderByFields.length > 0) {
1161 query.append(WHERE_AND);
1162 }
1163
1164 for (int i = 0; i < orderByFields.length; i++) {
1165 query.append(_ORDER_BY_ENTITY_ALIAS);
1166 query.append(orderByFields[i]);
1167
1168 if ((i + 1) < orderByFields.length) {
1169 if (orderByComparator.isAscending() ^ previous) {
1170 query.append(WHERE_GREATER_THAN_HAS_NEXT);
1171 }
1172 else {
1173 query.append(WHERE_LESSER_THAN_HAS_NEXT);
1174 }
1175 }
1176 else {
1177 if (orderByComparator.isAscending() ^ previous) {
1178 query.append(WHERE_GREATER_THAN);
1179 }
1180 else {
1181 query.append(WHERE_LESSER_THAN);
1182 }
1183 }
1184 }
1185
1186 query.append(ORDER_BY_CLAUSE);
1187
1188 for (int i = 0; i < orderByFields.length; i++) {
1189 query.append(_ORDER_BY_ENTITY_ALIAS);
1190 query.append(orderByFields[i]);
1191
1192 if ((i + 1) < orderByFields.length) {
1193 if (orderByComparator.isAscending() ^ previous) {
1194 query.append(ORDER_BY_ASC_HAS_NEXT);
1195 }
1196 else {
1197 query.append(ORDER_BY_DESC_HAS_NEXT);
1198 }
1199 }
1200 else {
1201 if (orderByComparator.isAscending() ^ previous) {
1202 query.append(ORDER_BY_ASC);
1203 }
1204 else {
1205 query.append(ORDER_BY_DESC);
1206 }
1207 }
1208 }
1209 }
1210
1211 else {
1212 query.append(AssetTagPropertyModelImpl.ORDER_BY_JPQL);
1213 }
1214
1215 String sql = query.toString();
1216
1217 Query q = session.createQuery(sql);
1218
1219 q.setFirstResult(0);
1220 q.setMaxResults(2);
1221
1222 QueryPos qPos = QueryPos.getInstance(q);
1223
1224 qPos.add(companyId);
1225
1226 if (key != null) {
1227 qPos.add(key);
1228 }
1229
1230 if (orderByComparator != null) {
1231 Object[] values = orderByComparator.getOrderByValues(assetTagProperty);
1232
1233 for (Object value : values) {
1234 qPos.add(value);
1235 }
1236 }
1237
1238 List<AssetTagProperty> list = q.list();
1239
1240 if (list.size() == 2) {
1241 return list.get(1);
1242 }
1243 else {
1244 return null;
1245 }
1246 }
1247
1248 public AssetTagProperty findByT_K(long tagId, String key)
1249 throws NoSuchTagPropertyException, SystemException {
1250 AssetTagProperty assetTagProperty = fetchByT_K(tagId, key);
1251
1252 if (assetTagProperty == null) {
1253 StringBundler msg = new StringBundler(6);
1254
1255 msg.append(_NO_SUCH_ENTITY_WITH_KEY);
1256
1257 msg.append("tagId=");
1258 msg.append(tagId);
1259
1260 msg.append(", key=");
1261 msg.append(key);
1262
1263 msg.append(StringPool.CLOSE_CURLY_BRACE);
1264
1265 if (_log.isWarnEnabled()) {
1266 _log.warn(msg.toString());
1267 }
1268
1269 throw new NoSuchTagPropertyException(msg.toString());
1270 }
1271
1272 return assetTagProperty;
1273 }
1274
1275 public AssetTagProperty fetchByT_K(long tagId, String key)
1276 throws SystemException {
1277 return fetchByT_K(tagId, key, true);
1278 }
1279
1280 public AssetTagProperty fetchByT_K(long tagId, String key,
1281 boolean retrieveFromCache) throws SystemException {
1282 Object[] finderArgs = new Object[] { new Long(tagId), key };
1283
1284 Object result = null;
1285
1286 if (retrieveFromCache) {
1287 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_T_K,
1288 finderArgs, this);
1289 }
1290
1291 if (result == null) {
1292 Session session = null;
1293
1294 try {
1295 session = openSession();
1296
1297 StringBundler query = new StringBundler(4);
1298
1299 query.append(_SQL_SELECT_ASSETTAGPROPERTY_WHERE);
1300
1301 query.append(_FINDER_COLUMN_T_K_TAGID_2);
1302
1303 if (key == null) {
1304 query.append(_FINDER_COLUMN_T_K_KEY_1);
1305 }
1306 else {
1307 if (key.equals(StringPool.BLANK)) {
1308 query.append(_FINDER_COLUMN_T_K_KEY_3);
1309 }
1310 else {
1311 query.append(_FINDER_COLUMN_T_K_KEY_2);
1312 }
1313 }
1314
1315 query.append(AssetTagPropertyModelImpl.ORDER_BY_JPQL);
1316
1317 String sql = query.toString();
1318
1319 Query q = session.createQuery(sql);
1320
1321 QueryPos qPos = QueryPos.getInstance(q);
1322
1323 qPos.add(tagId);
1324
1325 if (key != null) {
1326 qPos.add(key);
1327 }
1328
1329 List<AssetTagProperty> list = q.list();
1330
1331 result = list;
1332
1333 AssetTagProperty assetTagProperty = null;
1334
1335 if (list.isEmpty()) {
1336 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_K,
1337 finderArgs, list);
1338 }
1339 else {
1340 assetTagProperty = list.get(0);
1341
1342 cacheResult(assetTagProperty);
1343
1344 if ((assetTagProperty.getTagId() != tagId) ||
1345 (assetTagProperty.getKey() == null) ||
1346 !assetTagProperty.getKey().equals(key)) {
1347 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_K,
1348 finderArgs, assetTagProperty);
1349 }
1350 }
1351
1352 return assetTagProperty;
1353 }
1354 catch (Exception e) {
1355 throw processException(e);
1356 }
1357 finally {
1358 if (result == null) {
1359 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_T_K,
1360 finderArgs, new ArrayList<AssetTagProperty>());
1361 }
1362
1363 closeSession(session);
1364 }
1365 }
1366 else {
1367 if (result instanceof List<?>) {
1368 return null;
1369 }
1370 else {
1371 return (AssetTagProperty)result;
1372 }
1373 }
1374 }
1375
1376 public List<AssetTagProperty> findAll() throws SystemException {
1377 return findAll(QueryUtil.ALL_POS, QueryUtil.ALL_POS, null);
1378 }
1379
1380 public List<AssetTagProperty> findAll(int start, int end)
1381 throws SystemException {
1382 return findAll(start, end, null);
1383 }
1384
1385 public List<AssetTagProperty> findAll(int start, int end,
1386 OrderByComparator orderByComparator) throws SystemException {
1387 Object[] finderArgs = new Object[] {
1388 String.valueOf(start), String.valueOf(end),
1389 String.valueOf(orderByComparator)
1390 };
1391
1392 List<AssetTagProperty> list = (List<AssetTagProperty>)FinderCacheUtil.getResult(FINDER_PATH_FIND_ALL,
1393 finderArgs, this);
1394
1395 if (list == null) {
1396 Session session = null;
1397
1398 try {
1399 session = openSession();
1400
1401 StringBundler query = null;
1402 String sql = null;
1403
1404 if (orderByComparator != null) {
1405 query = new StringBundler(2 +
1406 (orderByComparator.getOrderByFields().length * 3));
1407
1408 query.append(_SQL_SELECT_ASSETTAGPROPERTY);
1409
1410 appendOrderByComparator(query, _ORDER_BY_ENTITY_ALIAS,
1411 orderByComparator);
1412
1413 sql = query.toString();
1414 }
1415
1416 else {
1417 sql = _SQL_SELECT_ASSETTAGPROPERTY.concat(AssetTagPropertyModelImpl.ORDER_BY_JPQL);
1418 }
1419
1420 Query q = session.createQuery(sql);
1421
1422 if (orderByComparator == null) {
1423 list = (List<AssetTagProperty>)QueryUtil.list(q,
1424 getDialect(), start, end, false);
1425
1426 Collections.sort(list);
1427 }
1428 else {
1429 list = (List<AssetTagProperty>)QueryUtil.list(q,
1430 getDialect(), start, end);
1431 }
1432 }
1433 catch (Exception e) {
1434 throw processException(e);
1435 }
1436 finally {
1437 if (list == null) {
1438 list = new ArrayList<AssetTagProperty>();
1439 }
1440
1441 cacheResult(list);
1442
1443 FinderCacheUtil.putResult(FINDER_PATH_FIND_ALL, finderArgs, list);
1444
1445 closeSession(session);
1446 }
1447 }
1448
1449 return list;
1450 }
1451
1452 public void removeByCompanyId(long companyId) throws SystemException {
1453 for (AssetTagProperty assetTagProperty : findByCompanyId(companyId)) {
1454 remove(assetTagProperty);
1455 }
1456 }
1457
1458 public void removeByTagId(long tagId) throws SystemException {
1459 for (AssetTagProperty assetTagProperty : findByTagId(tagId)) {
1460 remove(assetTagProperty);
1461 }
1462 }
1463
1464 public void removeByC_K(long companyId, String key)
1465 throws SystemException {
1466 for (AssetTagProperty assetTagProperty : findByC_K(companyId, key)) {
1467 remove(assetTagProperty);
1468 }
1469 }
1470
1471 public void removeByT_K(long tagId, String key)
1472 throws NoSuchTagPropertyException, SystemException {
1473 AssetTagProperty assetTagProperty = findByT_K(tagId, key);
1474
1475 remove(assetTagProperty);
1476 }
1477
1478 public void removeAll() throws SystemException {
1479 for (AssetTagProperty assetTagProperty : findAll()) {
1480 remove(assetTagProperty);
1481 }
1482 }
1483
1484 public int countByCompanyId(long companyId) throws SystemException {
1485 Object[] finderArgs = new Object[] { new Long(companyId) };
1486
1487 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_COMPANYID,
1488 finderArgs, this);
1489
1490 if (count == null) {
1491 Session session = null;
1492
1493 try {
1494 session = openSession();
1495
1496 StringBundler query = new StringBundler(2);
1497
1498 query.append(_SQL_COUNT_ASSETTAGPROPERTY_WHERE);
1499
1500 query.append(_FINDER_COLUMN_COMPANYID_COMPANYID_2);
1501
1502 String sql = query.toString();
1503
1504 Query q = session.createQuery(sql);
1505
1506 QueryPos qPos = QueryPos.getInstance(q);
1507
1508 qPos.add(companyId);
1509
1510 count = (Long)q.uniqueResult();
1511 }
1512 catch (Exception e) {
1513 throw processException(e);
1514 }
1515 finally {
1516 if (count == null) {
1517 count = Long.valueOf(0);
1518 }
1519
1520 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_COMPANYID,
1521 finderArgs, count);
1522
1523 closeSession(session);
1524 }
1525 }
1526
1527 return count.intValue();
1528 }
1529
1530 public int countByTagId(long tagId) throws SystemException {
1531 Object[] finderArgs = new Object[] { new Long(tagId) };
1532
1533 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_TAGID,
1534 finderArgs, this);
1535
1536 if (count == null) {
1537 Session session = null;
1538
1539 try {
1540 session = openSession();
1541
1542 StringBundler query = new StringBundler(2);
1543
1544 query.append(_SQL_COUNT_ASSETTAGPROPERTY_WHERE);
1545
1546 query.append(_FINDER_COLUMN_TAGID_TAGID_2);
1547
1548 String sql = query.toString();
1549
1550 Query q = session.createQuery(sql);
1551
1552 QueryPos qPos = QueryPos.getInstance(q);
1553
1554 qPos.add(tagId);
1555
1556 count = (Long)q.uniqueResult();
1557 }
1558 catch (Exception e) {
1559 throw processException(e);
1560 }
1561 finally {
1562 if (count == null) {
1563 count = Long.valueOf(0);
1564 }
1565
1566 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_TAGID,
1567 finderArgs, count);
1568
1569 closeSession(session);
1570 }
1571 }
1572
1573 return count.intValue();
1574 }
1575
1576 public int countByC_K(long companyId, String key) throws SystemException {
1577 Object[] finderArgs = new Object[] { new Long(companyId), key };
1578
1579 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_C_K,
1580 finderArgs, this);
1581
1582 if (count == null) {
1583 Session session = null;
1584
1585 try {
1586 session = openSession();
1587
1588 StringBundler query = new StringBundler(3);
1589
1590 query.append(_SQL_COUNT_ASSETTAGPROPERTY_WHERE);
1591
1592 query.append(_FINDER_COLUMN_C_K_COMPANYID_2);
1593
1594 if (key == null) {
1595 query.append(_FINDER_COLUMN_C_K_KEY_1);
1596 }
1597 else {
1598 if (key.equals(StringPool.BLANK)) {
1599 query.append(_FINDER_COLUMN_C_K_KEY_3);
1600 }
1601 else {
1602 query.append(_FINDER_COLUMN_C_K_KEY_2);
1603 }
1604 }
1605
1606 String sql = query.toString();
1607
1608 Query q = session.createQuery(sql);
1609
1610 QueryPos qPos = QueryPos.getInstance(q);
1611
1612 qPos.add(companyId);
1613
1614 if (key != null) {
1615 qPos.add(key);
1616 }
1617
1618 count = (Long)q.uniqueResult();
1619 }
1620 catch (Exception e) {
1621 throw processException(e);
1622 }
1623 finally {
1624 if (count == null) {
1625 count = Long.valueOf(0);
1626 }
1627
1628 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_C_K, finderArgs,
1629 count);
1630
1631 closeSession(session);
1632 }
1633 }
1634
1635 return count.intValue();
1636 }
1637
1638 public int countByT_K(long tagId, String key) throws SystemException {
1639 Object[] finderArgs = new Object[] { new Long(tagId), key };
1640
1641 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_BY_T_K,
1642 finderArgs, this);
1643
1644 if (count == null) {
1645 Session session = null;
1646
1647 try {
1648 session = openSession();
1649
1650 StringBundler query = new StringBundler(3);
1651
1652 query.append(_SQL_COUNT_ASSETTAGPROPERTY_WHERE);
1653
1654 query.append(_FINDER_COLUMN_T_K_TAGID_2);
1655
1656 if (key == null) {
1657 query.append(_FINDER_COLUMN_T_K_KEY_1);
1658 }
1659 else {
1660 if (key.equals(StringPool.BLANK)) {
1661 query.append(_FINDER_COLUMN_T_K_KEY_3);
1662 }
1663 else {
1664 query.append(_FINDER_COLUMN_T_K_KEY_2);
1665 }
1666 }
1667
1668 String sql = query.toString();
1669
1670 Query q = session.createQuery(sql);
1671
1672 QueryPos qPos = QueryPos.getInstance(q);
1673
1674 qPos.add(tagId);
1675
1676 if (key != null) {
1677 qPos.add(key);
1678 }
1679
1680 count = (Long)q.uniqueResult();
1681 }
1682 catch (Exception e) {
1683 throw processException(e);
1684 }
1685 finally {
1686 if (count == null) {
1687 count = Long.valueOf(0);
1688 }
1689
1690 FinderCacheUtil.putResult(FINDER_PATH_COUNT_BY_T_K, finderArgs,
1691 count);
1692
1693 closeSession(session);
1694 }
1695 }
1696
1697 return count.intValue();
1698 }
1699
1700 public int countAll() throws SystemException {
1701 Object[] finderArgs = new Object[0];
1702
1703 Long count = (Long)FinderCacheUtil.getResult(FINDER_PATH_COUNT_ALL,
1704 finderArgs, this);
1705
1706 if (count == null) {
1707 Session session = null;
1708
1709 try {
1710 session = openSession();
1711
1712 Query q = session.createQuery(_SQL_COUNT_ASSETTAGPROPERTY);
1713
1714 count = (Long)q.uniqueResult();
1715 }
1716 catch (Exception e) {
1717 throw processException(e);
1718 }
1719 finally {
1720 if (count == null) {
1721 count = Long.valueOf(0);
1722 }
1723
1724 FinderCacheUtil.putResult(FINDER_PATH_COUNT_ALL, finderArgs,
1725 count);
1726
1727 closeSession(session);
1728 }
1729 }
1730
1731 return count.intValue();
1732 }
1733
1734 public void afterPropertiesSet() {
1735 String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
1736 com.liferay.portal.util.PropsUtil.get(
1737 "value.object.listener.com.liferay.portlet.asset.model.AssetTagProperty")));
1738
1739 if (listenerClassNames.length > 0) {
1740 try {
1741 List<ModelListener<AssetTagProperty>> listenersList = new ArrayList<ModelListener<AssetTagProperty>>();
1742
1743 for (String listenerClassName : listenerClassNames) {
1744 listenersList.add((ModelListener<AssetTagProperty>)InstanceFactory.newInstance(
1745 listenerClassName));
1746 }
1747
1748 listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
1749 }
1750 catch (Exception e) {
1751 _log.error(e);
1752 }
1753 }
1754 }
1755
1756 @BeanReference(type = AssetCategoryPersistence.class)
1757 protected AssetCategoryPersistence assetCategoryPersistence;
1758 @BeanReference(type = AssetCategoryPropertyPersistence.class)
1759 protected AssetCategoryPropertyPersistence assetCategoryPropertyPersistence;
1760 @BeanReference(type = AssetEntryPersistence.class)
1761 protected AssetEntryPersistence assetEntryPersistence;
1762 @BeanReference(type = AssetLinkPersistence.class)
1763 protected AssetLinkPersistence assetLinkPersistence;
1764 @BeanReference(type = AssetTagPersistence.class)
1765 protected AssetTagPersistence assetTagPersistence;
1766 @BeanReference(type = AssetTagPropertyPersistence.class)
1767 protected AssetTagPropertyPersistence assetTagPropertyPersistence;
1768 @BeanReference(type = AssetTagStatsPersistence.class)
1769 protected AssetTagStatsPersistence assetTagStatsPersistence;
1770 @BeanReference(type = AssetVocabularyPersistence.class)
1771 protected AssetVocabularyPersistence assetVocabularyPersistence;
1772 @BeanReference(type = ResourcePersistence.class)
1773 protected ResourcePersistence resourcePersistence;
1774 @BeanReference(type = UserPersistence.class)
1775 protected UserPersistence userPersistence;
1776 private static final String _SQL_SELECT_ASSETTAGPROPERTY = "SELECT assetTagProperty FROM AssetTagProperty assetTagProperty";
1777 private static final String _SQL_SELECT_ASSETTAGPROPERTY_WHERE = "SELECT assetTagProperty FROM AssetTagProperty assetTagProperty WHERE ";
1778 private static final String _SQL_COUNT_ASSETTAGPROPERTY = "SELECT COUNT(assetTagProperty) FROM AssetTagProperty assetTagProperty";
1779 private static final String _SQL_COUNT_ASSETTAGPROPERTY_WHERE = "SELECT COUNT(assetTagProperty) FROM AssetTagProperty assetTagProperty WHERE ";
1780 private static final String _FINDER_COLUMN_COMPANYID_COMPANYID_2 = "assetTagProperty.companyId = ?";
1781 private static final String _FINDER_COLUMN_TAGID_TAGID_2 = "assetTagProperty.tagId = ?";
1782 private static final String _FINDER_COLUMN_C_K_COMPANYID_2 = "assetTagProperty.companyId = ? AND ";
1783 private static final String _FINDER_COLUMN_C_K_KEY_1 = "assetTagProperty.key IS NULL";
1784 private static final String _FINDER_COLUMN_C_K_KEY_2 = "assetTagProperty.key = ?";
1785 private static final String _FINDER_COLUMN_C_K_KEY_3 = "(assetTagProperty.key IS NULL OR assetTagProperty.key = ?)";
1786 private static final String _FINDER_COLUMN_T_K_TAGID_2 = "assetTagProperty.tagId = ? AND ";
1787 private static final String _FINDER_COLUMN_T_K_KEY_1 = "assetTagProperty.key IS NULL";
1788 private static final String _FINDER_COLUMN_T_K_KEY_2 = "assetTagProperty.key = ?";
1789 private static final String _FINDER_COLUMN_T_K_KEY_3 = "(assetTagProperty.key IS NULL OR assetTagProperty.key = ?)";
1790 private static final String _ORDER_BY_ENTITY_ALIAS = "assetTagProperty.";
1791 private static final String _NO_SUCH_ENTITY_WITH_PRIMARY_KEY = "No AssetTagProperty exists with the primary key ";
1792 private static final String _NO_SUCH_ENTITY_WITH_KEY = "No AssetTagProperty exists with the key {";
1793 private static Log _log = LogFactoryUtil.getLog(AssetTagPropertyPersistenceImpl.class);
1794}