1
22
23 package com.liferay.portlet.messageboards.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.portal.util.PortalUtil;
29 import com.liferay.portlet.messageboards.model.MBCategory;
30 import com.liferay.portlet.messageboards.model.impl.MBCategoryImpl;
31 import com.liferay.util.dao.hibernate.QueryPos;
32 import com.liferay.util.dao.hibernate.QueryUtil;
33
34 import java.util.Iterator;
35 import java.util.List;
36
37 import org.hibernate.Hibernate;
38 import org.hibernate.SQLQuery;
39 import org.hibernate.Session;
40
41
47 public class MBCategoryFinderImpl implements MBCategoryFinder {
48
49 public static String COUNT_BY_S_G_U =
50 MBCategoryFinder.class.getName() + ".countByS_G_U";
51
52 public static String FIND_BY_S_G_U =
53 MBCategoryFinder.class.getName() + ".findByS_G_U";
54
55 public int countByS_G_U(long groupId, long userId) throws SystemException {
56 Session session = null;
57
58 try {
59 session = HibernateUtil.openSession();
60
61 String sql = CustomSQLUtil.get(COUNT_BY_S_G_U);
62
63 SQLQuery q = session.createSQLQuery(sql);
64
65 q.addScalar(HibernateUtil.getCountColumnName(), Hibernate.LONG);
66
67 QueryPos qPos = QueryPos.getInstance(q);
68
69 qPos.add(PortalUtil.getClassNameId(MBCategory.class.getName()));
70 qPos.add(groupId);
71 qPos.add(userId);
72
73 Iterator itr = q.list().iterator();
74
75 if (itr.hasNext()) {
76 Long count = (Long)itr.next();
77
78 if (count != null) {
79 return count.intValue();
80 }
81 }
82
83 return 0;
84 }
85 catch (Exception e) {
86 throw new SystemException(e);
87 }
88 finally {
89 HibernateUtil.closeSession(session);
90 }
91 }
92
93 public List findByS_G_U(long groupId, long userId, int begin, int end)
94 throws SystemException {
95
96 Session session = null;
97
98 try {
99 session = HibernateUtil.openSession();
100
101 String sql = CustomSQLUtil.get(FIND_BY_S_G_U);
102
103 SQLQuery q = session.createSQLQuery(sql);
104
105 q.addEntity("MBCategory", MBCategoryImpl.class);
106
107 QueryPos qPos = QueryPos.getInstance(q);
108
109 qPos.add(PortalUtil.getClassNameId(MBCategory.class.getName()));
110 qPos.add(groupId);
111 qPos.add(userId);
112
113 return QueryUtil.list(q, HibernateUtil.getDialect(), begin, end);
114 }
115 catch (Exception e) {
116 throw new SystemException(e);
117 }
118 finally {
119 HibernateUtil.closeSession(session);
120 }
121 }
122
123 }