View Javadoc

1   ////////////////////////////////////////////////////////////////////////////////
2   //CabaWeb
3   //Copyright (C) 2004  Thomas Vogt <Thomas.Vogt@TVC-Software.com>
4   //
5   //This library is free software; you can redistribute it and/or
6   //modify it under the terms of the GNU Lesser General Public
7   //License as published by the Free Software Foundation; either
8   //version 2.1 of the License, or (at your option) any later version.
9   //
10  //This library is distributed in the hope that it will be useful,
11  //but WITHOUT ANY WARRANTY; without even the implied warranty of
12  //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  //Lesser General Public License for more details.
14  //
15  //You should have received a copy of the GNU Lesser General Public
16  //License along with this library; if not, write to the Free Software
17  //Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18  ////////////////////////////////////////////////////////////////////////////////
19  
20  package org.fhw.cabaweb.ojb;
21  
22  import java.util.ArrayList;
23  import java.util.Collection;
24  
25  import org.apache.ojb.broker.metadata.FieldHelper;
26  import org.apache.ojb.broker.query.Criteria;
27  import org.apache.ojb.broker.PersistenceBroker;
28  
29  import org.fhw.cabaweb.ojb.abstracts.AbstractUseCase;
30  import org.fhw.cabaweb.ojb.dataobjects.Benutzerrollen;
31  
32  /***
33   * Abstrakte Klasse f&uuml;r die OJB Kapselung der Datenbankoperationen
34   *
35   * @author  <a href="mailto:thomas.vogt@tvc-software.com">Thomas Vogt</a>
36   * @version Version 1.0 03.05.2004
37   */
38  public class UseCaseBenutzerrollen extends AbstractUseCase
39  {
40      /*** Konstruktor
41       * 
42       * @param broker Instanz des Persistence Brokers
43       */
44      public UseCaseBenutzerrollen(PersistenceBroker broker)
45      {
46          super(broker);
47      }
48  
49      /***
50        * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#erzeugen(java.lang.Object)
51        */
52      public final boolean erzeugen(Object arg)
53      {
54          Benutzerrollen newBenutzerrollen = (Benutzerrollen) arg;
55          return anlegen(newBenutzerrollen);
56      }
57  
58      /***
59        * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#editieren(java.lang.Object)
60        */
61      public final boolean editieren(Object arg)
62      {
63          boolean retval = true;
64          
65          Benutzerrollen editBenutzerrollenTemp = (Benutzerrollen) arg;
66          Benutzerrollen editBenutzerrollen = null;
67  
68          retval = beginTransaction();
69  
70          editBenutzerrollen = (Benutzerrollen) sucheQBE(editBenutzerrollenTemp);
71  
72          // Editieren des existierenden Eintrags
73          editBenutzerrollen.setRollenID(editBenutzerrollenTemp.getRollenID());
74          editBenutzerrollen.setRollenname(editBenutzerrollenTemp.getRollenname());
75          editBenutzerrollen.setAdmin(editBenutzerrollenTemp.getAdmin());
76          editBenutzerrollen.setProjektleiter(editBenutzerrollenTemp.getProjektleiter());
77          editBenutzerrollen.setGruppenmitglied(editBenutzerrollenTemp.getGruppenmitglied());
78  
79          if(retval != false)
80              retval = storeAndEndTransaction(editBenutzerrollen);
81          
82          return retval;
83      }
84  
85      /***
86        * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#loeschen(java.lang.Object)
87        */
88      public final boolean loeschen(Object arg)
89      {
90          boolean retval = true;
91  
92          Benutzerrollen deleteBenutzerrollen = (Benutzerrollen) arg;
93  
94          retval = beginTransaction();
95  
96          deleteBenutzerrollen = (Benutzerrollen) sucheQBE(deleteBenutzerrollen);
97  
98          if(retval != false)
99              retval = deleteAndEndTransaction(deleteBenutzerrollen);
100         
101         return retval;
102     }
103 
104    /***
105       * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#sucheObjekt(java.lang.Object)
106       */
107 	public final Object sucheObjekt(Object arg)
108 	{
109         Benutzerrollen suchBenutzerrollen = (Benutzerrollen) arg;
110         Object rueckgabeWert =  null;
111 
112         beginTransaction();
113 
114         suchBenutzerrollen = (Benutzerrollen) sucheQBE(suchBenutzerrollen);
115 
116         endTransaction();
117 
118         rueckgabeWert = suchBenutzerrollen;
119 
120         return rueckgabeWert;
121 	}
122 
123     /***
124       * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#sucheObjekte(java.lang.Object)
125       */
126 	public final Collection sucheObjekte(Object arg)
127 	{
128         Benutzerrollen suchBenutzerrollen = (Benutzerrollen) arg;
129         Collection rueckgabeWert =  null;
130         ArrayList orderBy = new ArrayList();
131 
132         Criteria criteria = new Criteria();
133 
134         if (suchBenutzerrollen.getRollenID() != null)
135             criteria.addEqualTo("rollenID", suchBenutzerrollen.getRollenID());
136         if (suchBenutzerrollen.getRollenname() != null)
137             criteria.addLike("rollenname", "%"+suchBenutzerrollen.getRollenname()+"%");
138         if (suchBenutzerrollen.getAdmin() != null)
139             criteria.addEqualTo("admin", suchBenutzerrollen.getAdmin());
140         if (suchBenutzerrollen.getProjektleiter() != null)
141             criteria.addEqualTo("projektleiter", suchBenutzerrollen.getProjektleiter());
142         if (suchBenutzerrollen.getGruppenmitglied() != null)
143             criteria.addEqualTo("gruppenmitglied", suchBenutzerrollen.getGruppenmitglied());
144             
145         orderBy.add(0, new FieldHelper("rollenID", true));
146         
147         rueckgabeWert = sucheQBC(Benutzerrollen.class, criteria, orderBy);
148 
149         return rueckgabeWert;
150 	}
151 }