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