1 package de.webman.acl.db; 2 3 import java.sql.SQLException ; 4 import com.teamkonzept.db.TKDBManager; 5 import com.teamkonzept.db.TKDBTableData; 6 import com.teamkonzept.db.TKDBVectorData; 7 import com.teamkonzept.db.TKQuery; 8 import com.teamkonzept.lib.TKVector; 9 import de.webman.acl.db.queries.*; 10 11 20 public class LoginDBInterface 21 extends ObjectDBInterface 22 { 23 24 26 29 public static final String TABLE_NAME = "WM_USER"; 30 31 34 public static final String PRIMARY_KEY_NAME = "WM_USER_ID"; 35 36 39 public static final String DEPENDENT_KEY_NAME = "WM_PROFILE_ID"; 40 41 44 public static final String PRIORITY_COLUMN = "PRIORITY"; 45 46 49 public static final String LOGIN_COLUMN = "LOGIN"; 50 51 54 public static final String NAME_COLUMN = "NAME"; 55 56 59 public static final String TYPE_COLUMN = "TYPE"; 60 61 64 public static final String TYPE_USER = "U"; 65 66 69 public static final String TYPE_PROFILE = "P"; 70 71 74 public static final Class WM_USER_SELECT_ALL = UserSelectAll.class; 75 76 79 public static final Class WM_USER_SELECT_BY_LOGIN = UserSelectByLogin.class; 80 81 84 public static final Class WM_USER_SELECT_BY_TYPE = UserSelectByType.class; 85 86 89 public static final Class WM_PROFILE_SELECT_BY_USER = ProfileSelectByUser.class; 90 91 94 public static final Class WM_PROFILE_SELECT_BY_PROFILE = ProfileSelectByProfile.class; 95 96 99 public static final Class WM_PROFILE_INSERT = ProfileInsert.class; 100 101 104 public static final Class WM_PROFILE_UPDATE = ProfileUpdate.class; 105 106 109 private static final LoginDBInterface INSTANCE = new LoginDBInterface(); 110 111 112 114 117 private LoginDBInterface () 118 { 119 super(UserInsert.class, 120 UserUpdate.class, 121 UserSelect.class, 122 UserDelete.class, 123 new Class [1], 124 new Class [1], 125 UserDeleteDependent.class); 126 } 127 128 129 131 136 public static final LoginDBInterface getInstance () 137 { 138 return INSTANCE; 139 } 140 141 142 144 149 public final String getTableName () 150 { 151 return TABLE_NAME; 152 } 153 154 159 public final String getPrimaryKeyName () 160 { 161 return PRIMARY_KEY_NAME; 162 } 163 164 169 public final String getDependentKeyName () 170 { 171 return DEPENDENT_KEY_NAME; 172 } 173 174 179 public final Class getSelectAllQuery () 180 { 181 return WM_USER_SELECT_ALL; 182 } 183 184 189 public final Class getSelectDependentQuery () 190 { 191 return WM_PROFILE_SELECT_BY_USER; 192 } 193 194 199 public final Class getInsertDependentQuery () 200 { 201 return WM_PROFILE_INSERT; 202 } 203 204 205 207 public void doPutEntryTables (TKDBVectorData dbData) 208 throws SQLException 209 { 210 TKDBTableData data = dbData.getProtoType(null); 212 213 if (data != null && 214 data instanceof ProfileCollectionDBData) 215 { 216 TKQuery query = TKDBManager.newQuery(((LoginDBData) dbData).getQuery()); 217 TKVector vector = dbData.getVector(null); 218 219 int index = 0; 220 int size = vector.size(); 221 222 while (index < size) 223 { 224 ((ProfileCollectionDBData) vector.elementAt(index)).insertIntoQuery(query); 225 query.execute(); 226 query.close(); 227 index++; 228 } 229 } 230 else 231 { 232 super.doPutEntryTables(dbData); 233 } 234 } 235 236 } 237 | Popular Tags |