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.sql.Date;
23  import java.sql.Time;
24  import java.util.Collection;
25  
26  import org.fhw.cabaweb.data.abstracts.AbstractDataInterface;
27  import org.fhw.cabaweb.ojb.dataobjects.Projekte;
28  import org.fhw.cabaweb.ojb.dataobjects.Berechnungsauftraege;
29  import org.fhw.cabaweb.ojb.interfaces.UseCase;
30  import org.fhw.cabaweb.ojb.UseCaseBerechnungsauftraege;
31  
32  /***
33   * Klasse f&uuml;r die Kapselung der Datenzugriffe auf Berechnungsauftraege
34   *
35   * @author  <a href="mailto:thomas.vogt@tvc-software.com">Thomas Vogt</a>
36   * @version Version 1.0 07.05.2004
37   */
38  public class DataInterfaceBerechnungsauftraege extends AbstractDataInterface
39  {
40  
41      /*** Konstruktor
42       *  benutzt den Konstruktor der Superklasse und initialisiert das useCase Objekt
43       */
44      public DataInterfaceBerechnungsauftraege()
45      {
46          super();
47      }
48  
49      /***
50       * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#erzeugen(java.lang.Object)
51       */
52      public boolean erzeugen(Object arg)
53      {
54          boolean rueckgabewert;
55  
56          setUp();
57  
58          this.useCase = (UseCase) new UseCaseBerechnungsauftraege(broker);
59          rueckgabewert = useCase.erzeugen((Berechnungsauftraege) arg);
60  
61          tearDown();
62          return rueckgabewert;
63      }
64  
65      /***
66       * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#editieren(java.lang.Object)
67       */
68      public boolean editieren(Object arg)
69      {
70          boolean rueckgabewert;
71  
72          setUp();
73  
74          this.useCase = (UseCase) new UseCaseBerechnungsauftraege(broker);
75          rueckgabewert = useCase.editieren((Berechnungsauftraege) arg);
76  
77          tearDown();
78          return rueckgabewert;
79      }
80  
81      /***
82       * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#loeschen(java.lang.Object)
83       */
84      public boolean loeschen(Object arg)
85      {
86          boolean rueckgabewert;
87  
88          setUp();
89  
90          this.useCase = (UseCase) new UseCaseBerechnungsauftraege(broker);
91          rueckgabewert = useCase.loeschen((Berechnungsauftraege) arg);
92  
93          tearDown();
94          return rueckgabewert;
95      }
96  
97      /***
98       * Sucht einen bestimmten Berechnungsauftrag anhand der Projektnummer
99       *
100      * @param   projektnummer    Die Integer Projektnummer
101      * @return  Das Berechnungsauftraege Datenobjekt
102      */
103     public Object sucheProjektnummer(Integer projektnummer)
104     {
105         Object rueckgabewert;
106 
107         setUp();
108 
109         this.useCase = (UseCase) new UseCaseBerechnungsauftraege(broker);
110         rueckgabewert = sucheObjekt(new Berechnungsauftraege(new Projekte(projektnummer, null, null, null), null, null, null, null));
111 
112         tearDown();
113         return rueckgabewert;
114     }
115 
116     /***
117      * Sucht einen bestimmten Berechnungsauftraege anhand des Datums/Uhrzeit und gibt alle in Frage kommenden
118      * Objekte als Collection zurück
119      *
120      * @param   datum       Das Datum
121      * @param   uhrzeit     Die Uhrzeit
122      * @return  Eine Collection aller Projektgruppen Datenobjekte die einen solchen Namen enthalten
123      */
124     //    @param   abweichung  Die Abweichung in Minuten (+/-)
125     //    public Collection sucheGruppenname(Date datum, Time uhrzeit, Integer abweichung)
126     public Collection sucheDatumUhrzeit(Date datum, Time uhrzeit)
127     {
128         Collection rueckgabewert;
129 
130         setUp();
131 
132         this.useCase = (UseCase) new UseCaseBerechnungsauftraege(broker);
133         rueckgabewert = sucheObjekte(new Berechnungsauftraege(null, datum, uhrzeit, null, null));
134 
135         tearDown();
136         return rueckgabewert;
137     }
138 
139     /***
140      * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#sucheObjekt(java.lang.Object)
141      */
142     protected Object sucheObjekt(Object arg)
143     {
144         return (Berechnungsauftraege) useCase.sucheObjekt(arg);
145     }
146 
147     /***
148      * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#sucheObjekte(java.lang.Object)
149      */
150     protected Collection sucheObjekte(Object arg)
151     {
152         return useCase.sucheObjekte(arg);
153     }
154 
155     /***
156      * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#sucheAlle()
157      */
158     public Collection sucheAlle()
159     {
160         Collection rueckgabewert;
161 
162         setUp();
163 
164         this.useCase = (UseCase) new UseCaseBerechnungsauftraege(broker);
165         rueckgabewert = useCase.sucheAlle(Berechnungsauftraege.class);
166 
167         tearDown();
168         return rueckgabewert;
169     }
170 
171     /***
172      * @see org.fhw.cabaweb.data.abstracts.AbstractDataInterface#clearCache()
173      */
174     public boolean clearCache()
175     {
176         boolean rueckgabewert;
177 
178         setUp();
179 
180         this.useCase = (UseCase) new UseCaseBerechnungsauftraege(broker);
181         rueckgabewert = useCase.clearCache();
182 
183         tearDown();
184         return rueckgabewert;
185     }
186 }