1
22
23 package com.liferay.portlet.tags.service.persistence;
24
25 import com.liferay.portal.SystemException;
26 import com.liferay.portal.spring.hibernate.CustomSQLUtil;
27 import com.liferay.portal.spring.hibernate.HibernateUtil;
28 import com.liferay.util.dao.hibernate.QueryPos;
29 import com.liferay.util.dao.hibernate.QueryUtil;
30
31 import java.util.Iterator;
32 import java.util.List;
33
34 import org.hibernate.Hibernate;
35 import org.hibernate.SQLQuery;
36 import org.hibernate.Session;
37
38
44 public class TagsPropertyKeyFinder {
45
46 public static String COUNT_BY_COMPANYID =
47 TagsPropertyKeyFinder.class.getName() + ".countByCompanyId";
48
49 public static String FIND_BY_COMPANYID =
50 TagsPropertyKeyFinder.class.getName() + ".findByCompanyId";
51
52 public static int countByCompanyId(long companyId)
53 throws SystemException {
54
55 Session session = null;
56
57 try {
58 session = HibernateUtil.openSession();
59
60 String sql = CustomSQLUtil.get(COUNT_BY_COMPANYID);
61
62 SQLQuery q = session.createSQLQuery(sql);
63
64 q.addScalar(HibernateUtil.getCountColumnName(), Hibernate.LONG);
65
66 QueryPos qPos = QueryPos.getInstance(q);
67
68 qPos.add(companyId);
69
70 Iterator itr = q.list().iterator();
71
72 if (itr.hasNext()) {
73 Long count = (Long)itr.next();
74
75 if (count != null) {
76 return count.intValue();
77 }
78 }
79
80 return 0;
81 }
82 catch (Exception e) {
83 throw new SystemException(e);
84 }
85 finally {
86 HibernateUtil.closeSession(session);
87 }
88 }
89
90 public static String[] findByCompanyId(long companyId)
91 throws SystemException {
92
93 return findByCompanyId(companyId, QueryUtil.ALL_POS, QueryUtil.ALL_POS);
94 }
95
96 public static String[] findByCompanyId(long companyId, int begin, int end)
97 throws SystemException {
98
99 Session session = null;
100
101 try {
102 session = HibernateUtil.openSession();
103
104 String sql = CustomSQLUtil.get(FIND_BY_COMPANYID);
105
106 SQLQuery q = session.createSQLQuery(sql);
107
108 q.addScalar("propertyKey", Hibernate.STRING);
109
110 QueryPos qPos = QueryPos.getInstance(q);
111
112 qPos.add(companyId);
113
114 List list = QueryUtil.list(
115 q, HibernateUtil.getDialect(), begin, end);
116
117 return (String[])list.toArray(new String[0]);
118 }
119 catch (Exception e) {
120 throw new SystemException(e);
121 }
122 finally {
123 HibernateUtil.closeSession(session);
124 }
125 }
126
127 }