1 /**
2 *
3 */
4 package ar.com.jiji.kaya.dao.hib;
5
6 import java.util.List;
7
8 import ar.com.jiji.kaya.dao.CRUDDAO;
9 import ar.com.jiji.kaya.dao.PageableTableDAO;
10 import ar.com.jiji.kaya.query.Query;
11
12 /**
13 * @author lparra
14 * @version $Revision$ $Date$
15 */
16 public class HibernateCRUDPageableDaoImpl<T> extends AbstractHibernateDaoImpl
17 implements CRUDDAO<T>, PageableTableDAO<T> {
18 private HibernateCRUDImpl<T> crud;
19
20 private HibernatePageableImpl<T> pageable;
21
22
23
24
25 public HibernateCRUDPageableDaoImpl(Class clazz) {
26 crud = new HibernateCRUDImpl<T>(this, clazz);
27 pageable = new HibernatePageableImpl<T>(this, clazz);
28 }
29
30 public void save(T obj) {
31 crud.save(obj);
32 }
33
34 public T load(long id) {
35 return crud.load(id);
36 }
37
38 public void remove(long id) {
39 crud.remove(id);
40 }
41
42 public List<T> getAll() {
43 return crud.getAll();
44 }
45
46 public int getSize() {
47 return pageable.getSize();
48 }
49
50 public int getSize(Query query) {
51 return pageable.getSize(query);
52 }
53
54 public List<T> getPage(int nFirst, int nPageSize, String sortColumn,
55 boolean bSortOrder) {
56 return pageable.getPage(nFirst, nPageSize, sortColumn, bSortOrder);
57 }
58
59 public List<T> getPage(int nFirst, int nPageSize, String sortColumn,
60 boolean bSortOrder, Query query) {
61 return pageable.getPage(nFirst, nPageSize, sortColumn, bSortOrder,
62 query);
63 }
64
65 }