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.Ergebnissdaten_Untergruppierungsbeschreibungen;
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 20.05.2004
37   */
38  public class UseCaseErgebnissdatenUntergruppierungsbeschreibungen extends AbstractUseCase
39  {
40      /*** Konstruktor
41       * 
42       * @param broker Instanz des Persistence Brokers
43       */
44      public UseCaseErgebnissdatenUntergruppierungsbeschreibungen(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          Ergebnissdaten_Untergruppierungsbeschreibungen newErgebnissdaten_Untergruppierungsbeschreibungen = (Ergebnissdaten_Untergruppierungsbeschreibungen) arg;
55          return anlegen(newErgebnissdaten_Untergruppierungsbeschreibungen);
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          Ergebnissdaten_Untergruppierungsbeschreibungen editErgebnissdaten_UntergruppierungsbeschreibungenTemp = (Ergebnissdaten_Untergruppierungsbeschreibungen) arg;
65          Ergebnissdaten_Untergruppierungsbeschreibungen editErgebnissdaten_Untergruppierungsbeschreibungen = null;
66  
67          Collection liste =  null;
68  
69          Criteria criteria = new Criteria();
70  
71          if (editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen() != null &&
72              editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer() != null)
73              criteria.addEqualTo("Untergruppierungsnummer", editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer());
74          if (editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen() != null && 
75              editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null &&
76              editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer() != null) 
77              criteria.addEqualTo("Gruppierungsnummer", editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer());
78          if (editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen() != null &&
79              editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null && 
80              editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte() != null && 
81              editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer() != null)
82              criteria.addEqualTo("Projektnummer", editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer());
83          if (editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getSprachen() != null && 
84              editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getSprachen().getSprachnummer() != null)
85              criteria.addEqualTo("Sprachnummer", editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getSprachen().getSprachnummer());
86  
87          liste = sucheQBC(Ergebnissdaten_Untergruppierungsbeschreibungen.class, criteria, null);
88          if(liste != null && liste.size() == 1)
89              editErgebnissdaten_Untergruppierungsbeschreibungen = (Ergebnissdaten_Untergruppierungsbeschreibungen) liste.iterator().next();
90  
91          // Editieren des existierenden Eintrags
92          editErgebnissdaten_Untergruppierungsbeschreibungen.setKurzbeschreibung(editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getKurzbeschreibung());
93          editErgebnissdaten_Untergruppierungsbeschreibungen.setBeschreibung(editErgebnissdaten_UntergruppierungsbeschreibungenTemp.getBeschreibung());
94  
95          retval = beginTransaction();
96          if(retval != false)
97              retval = storeAndEndTransaction(editErgebnissdaten_Untergruppierungsbeschreibungen);
98          
99          return retval;
100     }
101 
102     /***
103       * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#loeschen(java.lang.Object)
104       */
105     public final boolean loeschen(Object arg)
106     {
107         boolean retval = true;
108 
109         Ergebnissdaten_Untergruppierungsbeschreibungen deleteErgebnissdaten_Untergruppierungsbeschreibungen = (Ergebnissdaten_Untergruppierungsbeschreibungen) arg;
110 
111         Collection liste =  null;
112         Ergebnissdaten_Untergruppierungsbeschreibungen objekt =  null;
113 
114         Criteria criteria = new Criteria();
115 
116         if (deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null &&
117             deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer() != null)
118             criteria.addEqualTo("Untergruppierungsnummer", deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer());
119         if (deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null && 
120             deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null &&
121             deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer() != null) 
122             criteria.addEqualTo("Gruppierungsnummer", deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer());
123         if (deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null &&
124             deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null && 
125             deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte() != null && 
126             deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer() != null)
127             criteria.addEqualTo("Projektnummer", deleteErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer());
128         if (deleteErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen() != null && 
129             deleteErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen().getSprachnummer() != null)
130             criteria.addEqualTo("Sprachnummer", deleteErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen().getSprachnummer());
131 
132         liste = sucheQBC(Ergebnissdaten_Untergruppierungsbeschreibungen.class, criteria, null);
133         if(liste != null && liste.size() == 1)
134             objekt = (Ergebnissdaten_Untergruppierungsbeschreibungen) liste.iterator().next();
135 
136         retval = beginTransaction();
137         if(retval != false)
138             retval = deleteAndEndTransaction(objekt);
139         
140         return retval;
141     }
142 
143     /***
144       * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#sucheObjekt(java.lang.Object)
145       */
146     public final Object sucheObjekt(Object arg)
147     {
148         Ergebnissdaten_Untergruppierungsbeschreibungen suchErgebnissdaten_Untergruppierungsbeschreibungen = (Ergebnissdaten_Untergruppierungsbeschreibungen) arg;
149         Collection liste =  null;
150         Object rueckgabeWert =  null;
151 
152         Criteria criteria = new Criteria();
153 
154         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null &&
155             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer() != null)
156             criteria.addEqualTo("Untergruppierungsnummer", suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer());
157         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null && 
158             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null &&
159             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer() != null) 
160             criteria.addEqualTo("Gruppierungsnummer", suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer());
161         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null &&
162             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null && 
163             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte() != null && 
164             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer() != null)
165             criteria.addEqualTo("Projektnummer", suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer());
166         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen() != null && 
167             suchErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen().getSprachnummer() != null)
168             criteria.addEqualTo("Sprachnummer", suchErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen().getSprachnummer());
169 
170         liste = sucheQBC(Ergebnissdaten_Untergruppierungsbeschreibungen.class, criteria, null);
171         if(liste != null && liste.size() == 1)
172             rueckgabeWert = (Ergebnissdaten_Untergruppierungsbeschreibungen) liste.iterator().next();
173 
174         return rueckgabeWert;
175     }
176 
177     /***
178       * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#sucheObjekte(java.lang.Object)
179       */
180     public final Collection sucheObjekte(Object arg)
181     {
182         Ergebnissdaten_Untergruppierungsbeschreibungen suchErgebnissdaten_Untergruppierungsbeschreibungen = (Ergebnissdaten_Untergruppierungsbeschreibungen) arg;
183         Collection rueckgabeWert =  null;
184         ArrayList orderBy = new ArrayList();
185 
186         Criteria criteria = new Criteria();
187 
188         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null &&
189             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer() != null)
190             criteria.addEqualTo("Untergruppierungsnummer", suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer());
191         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null && 
192             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null &&
193             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer() != null) 
194             criteria.addEqualTo("Gruppierungsnummer", suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer());
195         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen() != null &&
196             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null && 
197             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte() != null && 
198             suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer() != null)
199             criteria.addEqualTo("Projektnummer", suchErgebnissdaten_Untergruppierungsbeschreibungen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer());
200         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen() != null && 
201             suchErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen().getSprachnummer() != null)
202             criteria.addEqualTo("Sprachnummer", suchErgebnissdaten_Untergruppierungsbeschreibungen.getSprachen().getSprachnummer());
203         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getKurzbeschreibung() != null)
204             criteria.addLike("Kurzbeschreibung", "%"+suchErgebnissdaten_Untergruppierungsbeschreibungen.getKurzbeschreibung()+"%");
205         if (suchErgebnissdaten_Untergruppierungsbeschreibungen.getBeschreibung() != null)
206             criteria.addLike("Beschreibung", "%"+suchErgebnissdaten_Untergruppierungsbeschreibungen.getBeschreibung()+"%");
207             
208         orderBy.add(0, new FieldHelper("Untergruppierungsnummer", true));
209         orderBy.add(1, new FieldHelper("Gruppierungsnummer", true));
210         orderBy.add(2, new FieldHelper("Projektnummer", true));
211         orderBy.add(3, new FieldHelper("Sprachnummer", true));
212 
213         rueckgabeWert = sucheQBC(Ergebnissdaten_Untergruppierungsbeschreibungen.class, criteria, orderBy);
214 
215         return rueckgabeWert;
216     }
217 }