KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > webman > content > workflow > db > VersionStatusTransitionDBInterface


1 package de.webman.content.workflow.db;
2
3 import com.teamkonzept.db.*;
4 import com.teamkonzept.lib.*;
5 import de.webman.content.workflow.*;
6 import de.webman.content.workflow.db.queries.*;
7
8 import java.util.*;
9 import java.sql.*;
10
11 import org.apache.log4j.Category;
12 /**
13     * @author $Author: alex $
14     * @version $Revision: 1.1 $
15 */

16 public class VersionStatusTransitionDBInterface extends TKDBInterface
17 {
18     /** Logging Category */
19     private static Category cat = Category.getInstance(VersionStatusTransitionDBInterface.class);
20
21     private final static Class JavaDoc NEW_PRIM_QUERY = VersionStatusTransitionNew.class;
22     private final static Class JavaDoc UPDATE_PRIM_QUERY = VersionStatusTransitionUpdate.class;
23     private final static Class JavaDoc GET_PRIM_QUERY = VersionStatusTransitionGet.class;
24     private final static Class JavaDoc DEL_PRIM_QUERY = VersionStatusTransitionDel.class;
25
26     private static VersionStatusTransitionDBInterface self = new VersionStatusTransitionDBInterface();
27
28     public VersionStatusTransitionDBInterface () {
29
30         super (NEW_PRIM_QUERY, UPDATE_PRIM_QUERY, GET_PRIM_QUERY, DEL_PRIM_QUERY);
31     }
32
33     public static void Put (VersionStatusTransitionDBData dbData) throws SQLException {
34
35         self.updateEntry (dbData);
36     }
37
38     public static void Get (VersionStatusTransitionDBData dbData) throws SQLException {
39
40         self.getEntry (dbData);
41     }
42
43     public static void Del (VersionStatusTransitionDBData dbData) throws SQLException {
44
45         self.delEntry (dbData);
46     }
47
48     public static void New (VersionStatusTransitionDBData dbData) throws SQLException {
49
50         self.newEntry (dbData);
51     }
52
53     /**
54         da wird schon eine DefaultMatrix reingegeben ?
55     */

56     public static void GetAll (VersionStatics statics, TKHashtable table) throws SQLException {
57
58         TKQuery query = TKDBManager.newQuery(VersionStatusTransitionGetAll.class);
59         query.execute();
60         ResultSet rs = query.fetchResultSet();
61
62         while (rs.next()) {
63
64             VersionStatusTransitionDBData data = new VersionStatusTransitionDBData (statics,rs);
65
66             VersionStatus from = (VersionStatus) statics.getStatusPool().get (new Integer JavaDoc(data.status_id));
67             if (from.comment) continue;
68
69             VersionStatus to = (VersionStatus) statics.getStatusPool().get (new Integer JavaDoc(data.new_status_id));
70             if (to.comment) continue;
71
72             Hashtable dest = (Hashtable) table.get (new Integer JavaDoc (data.status_id));
73
74             if (dest == null) {
75
76                 dest = new TKHashtable();
77                 table.put (new Integer JavaDoc (data.status_id),dest);
78             }
79
80             dest.put (new Integer JavaDoc (data.new_status_id),data);
81         }
82     }
83
84     public static void ReplaceAll (TKHashtable table) throws SQLException {
85
86         try {
87             TKDBManager.beginTransaction();
88
89             TKQuery query = TKDBManager.newQuery(VersionStatusTransitionDeleteAll.class);
90             query.execute();
91             query.close();
92
93             Enumeration e = table.elements();
94             while (e.hasMoreElements()) {
95
96                 TKHashtable dest = (TKHashtable) e.nextElement();
97                 Enumeration ee = dest.elements();
98
99                 while (ee.hasMoreElements()) {
100
101                     VersionStatusTransitionDBData dbData =
102                         (VersionStatusTransitionDBData) ee.nextElement();
103
104                     query = TKDBManager.newQuery(NEW_PRIM_QUERY);
105                     dbData.insertIntoQuery( query );
106                     query.execute();
107                     query.close();
108                 }
109             }
110
111             TKDBManager.commitTransaction();
112
113         } catch (Throwable JavaDoc t)
114         {
115             cat.error("replaceall: " , t);
116             TKDBManager.safeRollbackTransaction(t);
117         }
118     }
119 }
120
Popular Tags