KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > contineo > admin > dao > UserGroupDAO


1 /*
2  * UserGroupDAO.java
3  *
4  * Created on 25. August 2003, 15:37
5  */

6
7 package org.contineo.admin.dao;
8
9 import java.util.Collection JavaDoc;
10 import org.apache.log4j.Level;
11 import org.apache.log4j.Logger;
12 import org.apache.ojb.broker.PBKey;
13 import org.apache.ojb.broker.PersistenceBroker;
14 import org.apache.ojb.broker.PersistenceBrokerFactory;
15 import org.apache.ojb.broker.query.Criteria;
16 import org.apache.ojb.broker.query.Query;
17 import org.apache.ojb.broker.query.QueryByCriteria;
18 import org.contineo.core.LoggingManager;
19 /**
20  * This class is a DAO-service for usergroups.
21  * @author Michael Scholz
22  * @version 1.0
23  */

24 public class UserGroupDAO {
25
26     /**
27      * @uml.property name="broker"
28      * @uml.associationEnd
29      */

30     private PersistenceBroker broker = null;
31
32     /**
33      * @uml.property name="pbkey"
34      * @uml.associationEnd
35      */

36     private PBKey pbkey;
37
38     /**
39      * @uml.property name="logger"
40      * @uml.associationEnd
41      */

42     private Logger logger;
43
44     
45     /** Creates a new instance of UserGroupDAO */
46     public UserGroupDAO() {
47         logger = LoggingManager.getLogger(this.getClass());
48         pbkey = new PBKey("contineo");
49     }
50     
51     /**
52      * This method deletes a given usergroup.
53      * @param username Username of the usergroup to be deleted.
54      * @return True if successful deleted in a database.
55      */

56     public boolean delete(String JavaDoc username) {
57         boolean result = true;
58         try {
59             broker = PersistenceBrokerFactory.createPersistenceBroker(pbkey);
60             Criteria crit = new Criteria();
61             crit.addEqualTo("co_username", username);
62             Query query = new QueryByCriteria(org.contineo.admin.UserGroup.class, crit);
63             broker.beginTransaction();
64             broker.deleteByQuery(query);
65             broker.commitTransaction();
66         }
67         catch (Exception JavaDoc e) {
68             broker.abortTransaction();
69             if (logger.isEnabledFor(Level.ERROR))
70                 logger.error(e.getMessage());
71             result = false;
72         } finally {
73             if (broker != null) broker.close();
74         }
75         return result;
76     }
77
78     /**
79      * This method selects all groups assign by an user.
80      * @param username Username of the user.
81      * @return Collection of usergroups.
82      */

83     public Collection JavaDoc findByUserName(String JavaDoc username) {
84         Collection JavaDoc coll = null;
85         try {
86             broker = PersistenceBrokerFactory.createPersistenceBroker(pbkey);
87             Criteria crit = new Criteria();
88             crit.addEqualTo("co_username", username);
89             Query query = new QueryByCriteria(org.contineo.admin.UserGroup.class, crit, true);
90             coll = broker.getCollectionByQuery(query);
91         }
92         catch (Exception JavaDoc e) {
93             if (logger.isEnabledFor(Level.ERROR))
94                 logger.error(e.getMessage());
95         } finally {
96             if (broker != null) broker.close();
97         }
98         return coll;
99     }
100 }
101
Popular Tags