comparison artifact-database/src/main/java/de/intevation/artifactdatabase/Backend.java @ 184:a22b7e367b25

Added Backend code to list the collection items in a collection. artifacts/trunk@1410 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 07 Mar 2011 11:37:49 +0000
parents 7eebe707a034
children 15c7638511dc
comparison
equal deleted inserted replaced
183:9b8923043a38 184:a22b7e367b25
181 public static final String SQL_COLLECTION_ITEM_DELETE = 181 public static final String SQL_COLLECTION_ITEM_DELETE =
182 SQL.get("collection.item.delete"); 182 SQL.get("collection.item.delete");
183 183
184 public static final String SQL_COLLECTIONS_TOUCH_BY_ID = 184 public static final String SQL_COLLECTIONS_TOUCH_BY_ID =
185 SQL.get("collections.touch.by.id"); 185 SQL.get("collections.touch.by.id");
186
187 public static final String SQL_COLLECTION_ITEMS_LIST_GID =
188 SQL.get("collection.items.list.gid");
186 189
187 /** The singleton.*/ 190 /** The singleton.*/
188 protected static Backend instance; 191 protected static Backend instance;
189 192
190 /** 193 /**
1335 return true; 1338 return true;
1336 } 1339 }
1337 }.runWrite(); 1340 }.runWrite();
1338 } 1341 }
1339 1342
1340 public ArtifactCollection [] listCollectionArtifacts(String collectionId) { 1343 public CollectionItem [] listCollectionArtifacts(
1341 // TODO: Implement me! 1344 final String collectionId
1342 return null; 1345 ) {
1343 } 1346 if (!isValidIdentifier(collectionId)) {
1344 1347 logger.debug("Invalid collection id: '" + collectionId + "'");
1348 return null;
1349 }
1350
1351 final ArrayList<CollectionItem> collectionItems =
1352 new ArrayList<CollectionItem>();
1353
1354 SQLExecutor exec = new SQLExecutor() {
1355 public boolean doIt() throws SQLException {
1356 prepareStatement(SQL_COLLECTION_ITEMS_LIST_GID);
1357 stmnt.setString(1, collectionId);
1358 result = stmnt.executeQuery();
1359 while (result.next()) {
1360 CollectionItem item = new CollectionItem(
1361 result.getString(1),
1362 result.getBytes(2));
1363 collectionItems.add(item);
1364 }
1365 return true;
1366 }
1367 };
1368
1369 return exec.runRead()
1370 ? collectionItems.toArray(
1371 new CollectionItem[collectionItems.size()])
1372 : null;
1373 }
1345 } 1374 }
1346 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 1375 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org