1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.fhw.cabaweb.ojb;
21
22 import java.util.ArrayList;
23 import java.util.Collection;
24
25 import org.apache.commons.logging.Log;
26 import org.apache.commons.logging.LogFactory;
27 import org.apache.ojb.broker.metadata.FieldHelper;
28 import org.apache.ojb.broker.query.Criteria;
29 import org.apache.ojb.broker.PersistenceBroker;
30
31 import org.fhw.cabaweb.ojb.abstracts.AbstractUseCase;
32 import org.fhw.cabaweb.ojb.dataobjects.Gruppenmitglieder;
33
34 /***
35 * Abstrakte Klasse für die OJB Kapselung der Datenbankoperationen
36 *
37 * @author <a href="mailto:thomas.vogt@tvc-software.com">Thomas Vogt</a>
38 * @version Version 1.0 18.05.2004
39 */
40 public class UseCaseGruppenmitglieder extends AbstractUseCase
41 {
42 /***
43 * The <code>Log</code> instance for this application.
44 */
45 private Log log = LogFactory.getLog("org.fhw.cabaweb.ojb.UseCaseGruppenmitglieder");
46
47 /*** Konstruktor
48 *
49 * @param broker Instanz des Persistence Brokers
50 */
51 public UseCaseGruppenmitglieder(PersistenceBroker broker)
52 {
53 super(broker);
54 }
55
56 /***
57 * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#erzeugen(java.lang.Object)
58 */
59 public final boolean erzeugen(Object arg)
60 {
61 boolean retval = true;
62
63 Gruppenmitglieder newGruppenmitglieder = (Gruppenmitglieder) arg;
64
65 if (log.isDebugEnabled())
66 {
67 log.debug(" Anlegen Objekt: " + newGruppenmitglieder);
68 }
69
70 retval = anlegen(newGruppenmitglieder);
71
72 if (log.isDebugEnabled())
73 {
74 log.debug(" Anlegen Done: " + retval);
75 }
76
77 return retval;
78 }
79
80 /***
81 * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#editieren(java.lang.Object)
82 */
83 public final boolean editieren(Object arg)
84 {
85 boolean retval = true;
86
87 Gruppenmitglieder editGruppenmitgliederTemp = (Gruppenmitglieder) arg;
88 Gruppenmitglieder editGruppenmitglieder = null;
89
90 Collection liste = null;
91
92 Criteria criteria = new Criteria();
93
94 if (editGruppenmitgliederTemp.getMitgliedsnummer() != null)
95 criteria.addEqualTo("Mitgliedsnummer", editGruppenmitgliederTemp.getMitgliedsnummer());
96 if (editGruppenmitgliederTemp.getBenutzerrolle() != null && editGruppenmitgliederTemp.getBenutzerrolle().getRollenID() != null)
97 criteria.addEqualTo("RollenID", editGruppenmitgliederTemp.getBenutzerrolle().getRollenID());
98 if (editGruppenmitgliederTemp.getProjektgruppe() != null && editGruppenmitgliederTemp.getProjektgruppe().getProjekte() != null &&
99 editGruppenmitgliederTemp.getProjektgruppe().getProjekte().getProjektnummer() != null)
100 criteria.addEqualTo("Projektnummer", editGruppenmitgliederTemp.getProjektgruppe().getProjekte().getProjektnummer());
101 if (editGruppenmitgliederTemp.getProjektgruppe() != null && editGruppenmitgliederTemp.getProjektgruppe().getGruppennummer() != null)
102 criteria.addEqualTo("Gruppennummer", editGruppenmitgliederTemp.getProjektgruppe().getGruppennummer());
103
104 liste = sucheQBC(Gruppenmitglieder.class, criteria, null);
105 if(liste != null && liste.size() == 1)
106 editGruppenmitglieder = (Gruppenmitglieder) liste.iterator().next();
107
108
109 editGruppenmitglieder.setIstZugeordnet(editGruppenmitgliederTemp.getIstZugeordnet());
110 editGruppenmitglieder.setLoginName(editGruppenmitgliederTemp.getLoginName());
111 editGruppenmitglieder.setMitgliedsname(editGruppenmitgliederTemp.getMitgliedsname());
112 editGruppenmitglieder.setMitgliedsvorname(editGruppenmitgliederTemp.getMitgliedsvorname());
113 editGruppenmitglieder.setMitgliedsadresse1(editGruppenmitgliederTemp.getMitgliedsadresse1());
114 editGruppenmitglieder.setMitgliedsadresse2(editGruppenmitgliederTemp.getMitgliedsadresse2());
115 editGruppenmitglieder.setMitgliedsplz(editGruppenmitgliederTemp.getMitgliedsplz());
116 editGruppenmitglieder.setMitgliedsort(editGruppenmitgliederTemp.getMitgliedsort());
117 editGruppenmitglieder.setMitgliedskennzeichen(editGruppenmitgliederTemp.getMitgliedskennzeichen());
118 editGruppenmitglieder.setMitgliedsemailadresse(editGruppenmitgliederTemp.getMitgliedsemailadresse());
119 editGruppenmitglieder.setPassworthash(editGruppenmitgliederTemp.getPassworthash());
120 editGruppenmitglieder.setAktiv(editGruppenmitgliederTemp.getAktiv());
121 editGruppenmitglieder.setLetzterlogin(editGruppenmitgliederTemp.getLetzterlogin());
122
123 retval = beginTransaction();
124 if(retval != false)
125 retval = storeAndEndTransaction(editGruppenmitglieder);
126
127 if (log.isDebugEnabled())
128 {
129 log.debug(" Criteria: " + criteria);
130 log.debug(" Edit Done: " + retval);
131 }
132
133 return retval;
134 }
135
136 /***
137 * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#loeschen(java.lang.Object)
138 */
139 public final boolean loeschen(Object arg)
140 {
141 boolean retval = true;
142
143 Gruppenmitglieder deleteGruppenmitglieder = (Gruppenmitglieder) arg;
144
145 Collection liste = null;
146 Gruppenmitglieder objekt = null;
147
148 Criteria criteria = new Criteria();
149
150 if (deleteGruppenmitglieder.getMitgliedsnummer() != null)
151 criteria.addEqualTo("Mitgliedsnummer", deleteGruppenmitglieder.getMitgliedsnummer());
152 if (deleteGruppenmitglieder.getBenutzerrolle() != null && deleteGruppenmitglieder.getBenutzerrolle().getRollenID() != null)
153 criteria.addEqualTo("RollenID", deleteGruppenmitglieder.getBenutzerrolle().getRollenID());
154 if (deleteGruppenmitglieder.getProjektgruppe() != null && deleteGruppenmitglieder.getProjektgruppe().getProjekte() != null &&
155 deleteGruppenmitglieder.getProjektgruppe().getProjekte().getProjektnummer() != null)
156 criteria.addEqualTo("Projektnummer", deleteGruppenmitglieder.getProjektgruppe().getProjekte().getProjektnummer());
157 if (deleteGruppenmitglieder.getProjektgruppe() != null && deleteGruppenmitglieder.getProjektgruppe().getGruppennummer() != null)
158 criteria.addEqualTo("Gruppennummer", deleteGruppenmitglieder.getProjektgruppe().getGruppennummer());
159
160 liste = sucheQBC(Gruppenmitglieder.class, criteria, null);
161 if(liste != null && liste.size() == 1)
162 objekt = (Gruppenmitglieder) liste.iterator().next();
163
164 retval = beginTransaction();
165 if(retval != false)
166 retval = deleteAndEndTransaction(objekt);
167
168 if (log.isDebugEnabled())
169 {
170 log.debug(" Criteria: " + criteria);
171 log.debug(" Delete Done: " + retval);
172 }
173
174 return retval;
175 }
176
177 /***
178 * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#sucheObjekt(java.lang.Object)
179 */
180 public final Object sucheObjekt(Object arg)
181 {
182 Gruppenmitglieder suchGruppenmitglieder = (Gruppenmitglieder) arg;
183 Collection liste = null;
184 Object rueckgabeWert = null;
185
186 Criteria criteria = new Criteria();
187
188 if (suchGruppenmitglieder.getMitgliedsnummer() != null)
189 criteria.addEqualTo("Mitgliedsnummer", suchGruppenmitglieder.getMitgliedsnummer());
190 if (suchGruppenmitglieder.getBenutzerrolle() != null && suchGruppenmitglieder.getBenutzerrolle().getRollenID() != null)
191 criteria.addEqualTo("RollenID", suchGruppenmitglieder.getBenutzerrolle().getRollenID());
192 if (suchGruppenmitglieder.getProjektgruppe() != null && suchGruppenmitglieder.getProjektgruppe().getProjekte() != null &&
193 suchGruppenmitglieder.getProjektgruppe().getProjekte().getProjektnummer() != null)
194 criteria.addEqualTo("Projektnummer", suchGruppenmitglieder.getProjektgruppe().getProjekte().getProjektnummer());
195 if (suchGruppenmitglieder.getProjektgruppe() != null && suchGruppenmitglieder.getProjektgruppe().getGruppennummer() != null)
196 criteria.addEqualTo("Gruppennummer", suchGruppenmitglieder.getProjektgruppe().getGruppennummer());
197
198 liste = sucheQBC(Gruppenmitglieder.class, criteria, null);
199 if(liste != null && liste.size() == 1)
200 rueckgabeWert = (Gruppenmitglieder) liste.iterator().next();
201
202 if (log.isDebugEnabled())
203 {
204 log.debug(" Criteria: " + criteria);
205 log.debug(" Object: " + rueckgabeWert);
206 }
207
208 return rueckgabeWert;
209 }
210
211 /***
212 * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#sucheObjekte(java.lang.Object)
213 */
214 public final Collection sucheObjekte(Object arg)
215 {
216 Gruppenmitglieder suchGruppenmitglieder = (Gruppenmitglieder) arg;
217 Collection rueckgabeWert = null;
218 ArrayList orderBy = new ArrayList();
219
220 Criteria criteria = new Criteria();
221
222 if (suchGruppenmitglieder.getMitgliedsnummer() != null)
223 criteria.addEqualTo("Mitgliedsnummer", suchGruppenmitglieder.getMitgliedsnummer());
224 if (suchGruppenmitglieder.getBenutzerrolle() != null && suchGruppenmitglieder.getBenutzerrolle().getRollenID() != null)
225 criteria.addEqualTo("RollenID", suchGruppenmitglieder.getBenutzerrolle().getRollenID());
226 if (suchGruppenmitglieder.getProjektgruppe() != null && suchGruppenmitglieder.getProjektgruppe().getProjekte() != null &&
227 suchGruppenmitglieder.getProjektgruppe().getProjekte().getProjektnummer() != null)
228 criteria.addEqualTo("Projektnummer", suchGruppenmitglieder.getProjektgruppe().getProjekte().getProjektnummer());
229 if (suchGruppenmitglieder.getProjektgruppe() != null && suchGruppenmitglieder.getProjektgruppe().getGruppennummer() != null)
230 criteria.addEqualTo("Gruppennummer", suchGruppenmitglieder.getProjektgruppe().getGruppennummer());
231 if (suchGruppenmitglieder.getIstZugeordnet() != null)
232 criteria.addEqualTo("IstZugeordnet", suchGruppenmitglieder.getIstZugeordnet());
233 if (suchGruppenmitglieder.getLoginName() != null)
234 criteria.addEqualTo("LogInName", suchGruppenmitglieder.getLoginName());
235 if (suchGruppenmitglieder.getMitgliedsname() != null)
236 criteria.addLike("MitgliedName", "%"+suchGruppenmitglieder.getMitgliedsname()+"%");
237 if (suchGruppenmitglieder.getMitgliedsvorname() != null)
238 criteria.addLike("MitgliedVorname", "%"+suchGruppenmitglieder.getMitgliedsvorname()+"%");
239 if (suchGruppenmitglieder.getMitgliedsadresse1() != null)
240 criteria.addLike("MitgliedAdresse1", "%"+suchGruppenmitglieder.getMitgliedsadresse1()+"%");
241 if (suchGruppenmitglieder.getMitgliedsadresse2() != null)
242 criteria.addLike("MitgliedAdresse2", "%"+suchGruppenmitglieder.getMitgliedsadresse2()+"%");
243 if (suchGruppenmitglieder.getMitgliedsplz() != null)
244 criteria.addEqualTo("MitgliedPLZ", suchGruppenmitglieder.getMitgliedsplz());
245 if (suchGruppenmitglieder.getMitgliedsort() != null)
246 criteria.addLike("MitgliedOrt", "%"+suchGruppenmitglieder.getMitgliedsort()+"%");
247 if (suchGruppenmitglieder.getMitgliedskennzeichen() != null)
248 criteria.addLike("MitgliedKennzeichen", "%"+suchGruppenmitglieder.getMitgliedskennzeichen()+"%");
249 if (suchGruppenmitglieder.getMitgliedsemailadresse() != null)
250 criteria.addLike("MitgliedEMailAdresse", "%"+suchGruppenmitglieder.getMitgliedsemailadresse()+"%");
251 if (suchGruppenmitglieder.getAktiv() != null)
252 criteria.addEqualTo("Aktiv", suchGruppenmitglieder.getAktiv());
253
254
255
256
257
258
259
260 orderBy.add(0, new FieldHelper("Mitgliedsnummer", true));
261 orderBy.add(1, new FieldHelper("RollenID", true));
262 orderBy.add(2, new FieldHelper("Projektnummer", true));
263 orderBy.add(3, new FieldHelper("Gruppennummer", true));
264
265 rueckgabeWert = sucheQBC(Gruppenmitglieder.class, criteria, orderBy);
266
267 if (log.isDebugEnabled())
268 {
269 log.debug(" Criteria: " + criteria);
270 log.debug(" Anzahl der Objekte: " + rueckgabeWert.size());
271 }
272
273 return rueckgabeWert;
274 }
275 }