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_Feldnamen;
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 UseCaseErgebnissdatenFeldnamen extends AbstractUseCase
39  {
40      /*** Konstruktor
41       * 
42       * @param broker Instanz des Persistence Brokers
43       */
44      public UseCaseErgebnissdatenFeldnamen(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_Feldnamen newErgebnissdaten_Feldnamen = (Ergebnissdaten_Feldnamen) arg;
55          return anlegen(newErgebnissdaten_Feldnamen);
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_Feldnamen editErgebnissdaten_FeldnamenTemp = (Ergebnissdaten_Feldnamen) arg;
65          Ergebnissdaten_Feldnamen editErgebnissdaten_Feldnamen = null;
66  
67          Collection liste =  null;
68  
69          Criteria criteria = new Criteria();
70  
71          if (editErgebnissdaten_FeldnamenTemp.getFeldnummer() != null)
72              criteria.addEqualTo("Feldnummer", editErgebnissdaten_FeldnamenTemp.getFeldnummer());
73          if (editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen() != null && 
74              editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer() != null)
75              criteria.addEqualTo("Untergruppierungsnummer", editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer());
76          if (editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen() != null && 
77              editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null &&
78              editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer() != null) 
79              criteria.addEqualTo("Gruppierungsnummer", editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer());
80          if (editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen() != null &&
81              editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null && 
82              editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte() != null && 
83              editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer() != null)
84              criteria.addEqualTo("Projektnummer", editErgebnissdaten_FeldnamenTemp.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer());
85  
86          liste = sucheQBC(Ergebnissdaten_Feldnamen.class, criteria, null);
87          if(liste != null && liste.size() == 1)
88              editErgebnissdaten_Feldnamen = (Ergebnissdaten_Feldnamen) liste.iterator().next();
89  
90          // Editieren des existierenden Eintrags
91          editErgebnissdaten_Feldnamen.setReihenfolge(editErgebnissdaten_FeldnamenTemp.getReihenfolge());
92          editErgebnissdaten_Feldnamen.setTabellenname(editErgebnissdaten_FeldnamenTemp.getTabellenname());
93          editErgebnissdaten_Feldnamen.setFeldname(editErgebnissdaten_FeldnamenTemp.getFeldname());
94          editErgebnissdaten_Feldnamen.setFeldname_benutzer(editErgebnissdaten_FeldnamenTemp.getFeldname_benutzer());
95  
96          retval = beginTransaction();
97          if(retval != false)
98              retval = storeAndEndTransaction(editErgebnissdaten_Feldnamen);
99          
100         return retval;
101     }
102 
103     /***
104       * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#loeschen(java.lang.Object)
105       */
106     public final boolean loeschen(Object arg)
107     {
108         boolean retval = true;
109 
110         Ergebnissdaten_Feldnamen deleteErgebnissdaten_Feldnamen = (Ergebnissdaten_Feldnamen) arg;
111 
112         Collection liste =  null;
113         Ergebnissdaten_Feldnamen objekt =  null;
114 
115         Criteria criteria = new Criteria();
116 
117         if (deleteErgebnissdaten_Feldnamen.getFeldnummer() != null)
118             criteria.addEqualTo("Feldnummer", deleteErgebnissdaten_Feldnamen.getFeldnummer());
119         if (deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null && 
120             deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer() != null)
121             criteria.addEqualTo("Untergruppierungsnummer", deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer());
122         if (deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null && 
123             deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null &&
124             deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer() != null) 
125             criteria.addEqualTo("Gruppierungsnummer", deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer());
126         if (deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null &&
127             deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null && 
128             deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte() != null && 
129             deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer() != null)
130             criteria.addEqualTo("Projektnummer", deleteErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer());
131 
132         liste = sucheQBC(Ergebnissdaten_Feldnamen.class, criteria, null);
133         if(liste != null && liste.size() == 1)
134             objekt = (Ergebnissdaten_Feldnamen) 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_Feldnamen suchErgebnissdaten_Feldnamen = (Ergebnissdaten_Feldnamen) arg;
149         Collection liste =  null;
150         Object rueckgabeWert =  null;
151 
152         Criteria criteria = new Criteria();
153 
154         if (suchErgebnissdaten_Feldnamen.getFeldnummer() != null)
155             criteria.addEqualTo("Feldnummer", suchErgebnissdaten_Feldnamen.getFeldnummer());
156         if (suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null && 
157             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer() != null)
158             criteria.addEqualTo("Untergruppierungsnummer", suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer());
159         if (suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null && 
160             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null &&
161             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer() != null) 
162             criteria.addEqualTo("Gruppierungsnummer", suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer());
163         if (suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null &&
164             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null && 
165             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte() != null && 
166             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer() != null)
167             criteria.addEqualTo("Projektnummer", suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer());
168 
169         liste = sucheQBC(Ergebnissdaten_Feldnamen.class, criteria, null);
170         if(liste != null && liste.size() == 1)
171             rueckgabeWert = (Ergebnissdaten_Feldnamen) liste.iterator().next();
172 
173         return rueckgabeWert;
174     }
175 
176     /***
177       * @see org.fhw.cabaweb.ojb.abstracts.AbstractUseCase#sucheObjekte(java.lang.Object)
178       */
179     public final Collection sucheObjekte(Object arg)
180     {
181         Ergebnissdaten_Feldnamen suchErgebnissdaten_Feldnamen = (Ergebnissdaten_Feldnamen) arg;
182         Collection rueckgabeWert =  null;
183         ArrayList orderBy = new ArrayList();
184 
185         Criteria criteria = new Criteria();
186 
187         if (suchErgebnissdaten_Feldnamen.getFeldnummer() != null)
188             criteria.addEqualTo("Feldnummer", suchErgebnissdaten_Feldnamen.getFeldnummer());
189         if (suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null && 
190             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer() != null)
191             criteria.addEqualTo("Untergruppierungsnummer", suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getUntergruppierungsnummer());
192         if (suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null && 
193             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null &&
194             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer() != null) 
195             criteria.addEqualTo("Gruppierungsnummer", suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getGruppierungsnummer());
196         if (suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen() != null &&
197             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen() != null && 
198             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte() != null && 
199             suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer() != null)
200             criteria.addEqualTo("Projektnummer", suchErgebnissdaten_Feldnamen.getErgebnissdaten_untergruppierungsnamen().getErgebnissdaten_gruppierungsnamen().getProjekte().getProjektnummer());
201         if (suchErgebnissdaten_Feldnamen.getReihenfolge() != null)
202             criteria.addEqualTo("Reihenfolge", suchErgebnissdaten_Feldnamen.getReihenfolge());
203         if (suchErgebnissdaten_Feldnamen.getTabellenname() != null)
204             criteria.addEqualTo("Tabellenname", suchErgebnissdaten_Feldnamen.getTabellenname());
205         if (suchErgebnissdaten_Feldnamen.getFeldname() != null)
206             criteria.addEqualTo("Feldname", suchErgebnissdaten_Feldnamen.getFeldname());
207         if (suchErgebnissdaten_Feldnamen.getFeldname_benutzer() != null)
208             criteria.addEqualTo("Feldname_benutzer", suchErgebnissdaten_Feldnamen.getFeldname_benutzer());
209             
210         orderBy.add(0, new FieldHelper("Feldnummer", true));
211         orderBy.add(1, new FieldHelper("Untergruppierungsnummer", true));
212         orderBy.add(2, new FieldHelper("Gruppierungsnummer", true));
213         orderBy.add(3, new FieldHelper("Projektnummer", true));
214 
215         rueckgabeWert = sucheQBC(Ergebnissdaten_Feldnamen.class, criteria, orderBy);
216 
217         return rueckgabeWert;
218     }
219 }