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.data;
21  
22  import java.util.Collection;
23  
24  import org.fhw.cabaweb.data.abstracts.AbstractDataInterface;
25  import org.fhw.cabaweb.ojb.dataobjects.Projekte;
26  import org.fhw.cabaweb.ojb.dataobjects.Projektgruppen;
27  import org.fhw.cabaweb.ojb.interfaces.UseCase;
28  import org.fhw.cabaweb.ojb.UseCaseProjektgruppen;
29  
30  /***
31   * Klasse f&uuml;r die Kapselung der Datenzugriffe auf Projektgruppen
32   *
33   * @author  <a href="mailto:thomas.vogt@tvc-software.com">Thomas Vogt</a>
34   * @version Version 1.0 07.05.2004
35   */
36  public class DataInterfaceProjektgruppen extends AbstractDataInterface
37  {
38  
39      /*** Konstruktor
40       *  benutzt den Konstruktor der Superklasse und initialisiert das useCase Objekt
41       */
42      public DataInterfaceProjektgruppen()
43      {
44          super();
45      }
46  
47      /***
48       * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#erzeugen(java.lang.Object)
49       */
50      public boolean erzeugen(Object arg)
51      {
52          boolean rueckgabewert;
53  
54          setUp();
55  
56          this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
57          rueckgabewert = useCase.erzeugen((Projektgruppen) arg);
58  
59          tearDown();
60          return rueckgabewert;
61      }
62  
63      /***
64       * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#editieren(java.lang.Object)
65       */
66      public boolean editieren(Object arg)
67      {
68          boolean rueckgabewert;
69  
70          setUp();
71  
72          this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
73          rueckgabewert = useCase.editieren((Projektgruppen) arg);
74  
75          tearDown();
76          return rueckgabewert;
77      }
78  
79      /***
80       * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#loeschen(java.lang.Object)
81       */
82      public boolean loeschen(Object arg)
83      {
84          boolean rueckgabewert;
85  
86          setUp();
87  
88          this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
89          rueckgabewert = useCase.loeschen((Projektgruppen) arg);
90  
91          tearDown();
92          return rueckgabewert;
93      }
94  
95      /***
96       * Sucht eine bestimmte Projektgruppe anhand der Gruppennummer
97       *
98       * @param   gruppennummer    Die Integer Gruppennummer
99       * @return  Das Projektgruppen Datenobjekt
100      */
101     public Object sucheGruppennummer(Integer gruppennummer)
102     {
103         Object rueckgabewert;
104 
105         setUp();
106 
107         this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
108         rueckgabewert = this.sucheObjekt(new Projektgruppen(gruppennummer, null, null, null, null));
109 
110         tearDown();
111         return rueckgabewert;
112     }
113 
114     /***
115      * Sucht eine bestimmte Projektgruppe anhand des Gruppennamens und gibt alle in Frage kommenden
116      * Objekte als Collection zurück
117      *
118      * @param   gruppenname    Der Gruppenname als String
119      * @return  Eine Collection aller Projektgruppen Datenobjekte die einen solchen Namen enthalten
120      */
121     public Collection sucheGruppenname(String gruppenname)
122     {
123         Collection rueckgabewert;
124 
125         setUp();
126 
127         this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
128         rueckgabewert = this.sucheObjekte(new Projektgruppen(null, null, gruppenname, null, null));
129 
130         tearDown();
131         return rueckgabewert;
132     }
133 
134     /***
135      * Sucht alle Projektgruppen eines Projektes anhand des Projektnummer und gibt alle in Frage kommenden
136      * Objekte als Collection zurück
137      *
138      * @param   projektnummer    Die Projektnummer als Integer
139      * @return  Eine Collection aller Projektgruppen Datenobjekte die zu dem angegebenen Projekt gehören
140      */
141     public Collection sucheProjektnummer(Integer projektnummer)
142     {
143         Collection rueckgabewert;
144 
145         setUp();
146 
147         this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
148         rueckgabewert = this.sucheObjekte(new Projektgruppen(null, new Projekte(projektnummer, null, null, null), null, null, null));
149 
150         tearDown();
151         return rueckgabewert;
152     }
153 
154     /***
155      * Sucht alle Projektgruppen eines Projektes anhand einer Kombination und gibt alle in Frage kommenden
156      * Objekte als Collection zurück
157      *
158      * @param   gruppennummer    Die Integer Gruppennummer
159      * @param   projektnummer    Die Projektnummer als Integer
160      * @param   gruppenname      Der Gruppenname als String
161      * @param   passwort         Das Gruppenpasswort als Klartext-String
162      * @return  Eine Collection aller Projektgruppen Datenobjekte die zu dem angegebenen Projekt gehören
163      */
164     public Collection sucheKombination(Integer gruppennummer, Integer projektnummer, String gruppenname, String passwort)
165     {
166         Collection rueckgabewert;
167 
168         setUp();
169 
170         this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
171         rueckgabewert = this.sucheObjekte(new Projektgruppen(gruppennummer, new Projekte(projektnummer, null, null, null), gruppenname, passwort, null));
172 
173         tearDown();
174         return rueckgabewert;
175     }
176 
177     /***
178      * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#sucheObjekt(java.lang.Object)
179      */
180     protected Object sucheObjekt(Object arg)
181     {
182         return (Projektgruppen) useCase.sucheObjekt(arg);
183     }
184 
185     /***
186      * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#sucheObjekte(java.lang.Object)
187      */
188     protected Collection sucheObjekte(Object arg)
189     {
190         return useCase.sucheObjekte(arg);
191     }
192 
193     /***
194      * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#sucheAlle()
195      */
196     public Collection sucheAlle()
197     {
198         Collection rueckgabewert;
199 
200         setUp();
201 
202         this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
203         rueckgabewert = useCase.sucheAlle(Projektgruppen.class);
204 
205         tearDown();
206         return rueckgabewert;
207     }
208 
209     /***
210      * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#clearCache()
211      */
212     public boolean clearCache()
213     {
214         boolean rueckgabewert;
215 
216         setUp();
217 
218         this.useCase = (UseCase) new UseCaseProjektgruppen(broker);
219         rueckgabewert = useCase.clearCache();
220 
221         tearDown();
222         return rueckgabewert;
223     }
224 }