Mercurial > dive4elements > framework
comparison artifact-database/src/main/java/de/intevation/artifactdatabase/Backend.java @ 273:22a90706d32d
Enables the artifact server to set the TTL of a specific collection via REST call.
artifacts/trunk@2070 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 07 Jun 2011 16:27:47 +0000 |
parents | a2df2b48d2aa |
children | e92d5944fe4b |
comparison
equal
deleted
inserted
replaced
272:2ce31a9414ff | 273:22a90706d32d |
---|---|
123 public static final String SQL_ARTIFACTS_IN_ONLY_COLLECTION_ONLY = | 123 public static final String SQL_ARTIFACTS_IN_ONLY_COLLECTION_ONLY = |
124 SQL.get("artifacts.in.one.collection.only"); | 124 SQL.get("artifacts.in.one.collection.only"); |
125 | 125 |
126 public static final String SQL_OUTDATE_ARTIFACTS_COLLECTION = | 126 public static final String SQL_OUTDATE_ARTIFACTS_COLLECTION = |
127 SQL.get("outdate.artifacts.collection"); | 127 SQL.get("outdate.artifacts.collection"); |
128 | |
129 public static final String SQL_UPDATE_COLLECTION_TTL = | |
130 SQL.get("collections.update.ttl"); | |
128 | 131 |
129 public static final String SQL_OUTDATE_ARTIFACTS_USER = | 132 public static final String SQL_OUTDATE_ARTIFACTS_USER = |
130 SQL.get("outdate.artifacts.user"); | 133 SQL.get("outdate.artifacts.user"); |
131 | 134 |
132 public static final String SQL_DELETE_USER_COLLECTION_ITEMS = | 135 public static final String SQL_DELETE_USER_COLLECTION_ITEMS = |
1511 return exec.runRead() | 1514 return exec.runRead() |
1512 ? collectionItems.toArray( | 1515 ? collectionItems.toArray( |
1513 new CollectionItem[collectionItems.size()]) | 1516 new CollectionItem[collectionItems.size()]) |
1514 : null; | 1517 : null; |
1515 } | 1518 } |
1519 | |
1520 | |
1521 public boolean setCollectionTTL(final String uuid, final Long ttl) { | |
1522 if (!isValidIdentifier(uuid)) { | |
1523 logger.debug("Invalid collection id: '" + uuid + "'"); | |
1524 return false; | |
1525 } | |
1526 | |
1527 return new SQLExecutor() { | |
1528 public boolean doIt() throws SQLException { | |
1529 prepareStatement(SQL_UPDATE_COLLECTION_TTL); | |
1530 if (ttl == null) { | |
1531 stmnt.setNull(1, Types.BIGINT); | |
1532 } | |
1533 else { | |
1534 stmnt.setLong(1, ttl); | |
1535 } | |
1536 stmnt.setString(2, uuid); | |
1537 stmnt.execute(); | |
1538 conn.commit(); | |
1539 | |
1540 return true; | |
1541 } | |
1542 }.runWrite(); | |
1543 } | |
1516 } | 1544 } |
1517 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 1545 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |