comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/datacage/Datacage.java @ 1006:1917f32701dc

Forwarded kill collections and artifacts events to datacage. flys-artifacts/trunk@2447 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Tue, 02 Aug 2011 11:38:20 +0000
parents 0e8c03b69627
children ed918497873b
comparison
equal deleted inserted replaced
1005:52949da92f7a 1006:1917f32701dc
75 "delete.artifact.data.by.artifact.id"; 75 "delete.artifact.data.by.artifact.id";
76 private String SQL_DELETE_OUTS_BY_ARTIFACT_ID = 76 private String SQL_DELETE_OUTS_BY_ARTIFACT_ID =
77 "delete.outs.by.artifact.id"; 77 "delete.outs.by.artifact.id";
78 private String SQL_DELETE_FACETS_BY_ARTIFACT_ID = 78 private String SQL_DELETE_FACETS_BY_ARTIFACT_ID =
79 "delete.facets.by.artifacts.id"; 79 "delete.facets.by.artifacts.id";
80 private String SQL_DELETE_ARTIFACT_BY_GID =
81 "delete.artifact.by.gid";
80 82
81 protected SQLExecutor sqlExecutor; 83 protected SQLExecutor sqlExecutor;
82 84
83 public class InitialScan 85 public class InitialScan
84 implements ArtifactDatabase.ArtifactLoadedCallback 86 implements ArtifactDatabase.ArtifactLoadedCallback
370 sql.get(SQL_DELETE_ARTIFACT_DATA_BY_ARTIFACT_ID); 372 sql.get(SQL_DELETE_ARTIFACT_DATA_BY_ARTIFACT_ID);
371 SQL_DELETE_OUTS_BY_ARTIFACT_ID = 373 SQL_DELETE_OUTS_BY_ARTIFACT_ID =
372 sql.get(SQL_DELETE_OUTS_BY_ARTIFACT_ID); 374 sql.get(SQL_DELETE_OUTS_BY_ARTIFACT_ID);
373 SQL_DELETE_FACETS_BY_ARTIFACT_ID = 375 SQL_DELETE_FACETS_BY_ARTIFACT_ID =
374 sql.get(SQL_DELETE_FACETS_BY_ARTIFACT_ID); 376 sql.get(SQL_DELETE_FACETS_BY_ARTIFACT_ID);
377 SQL_DELETE_ARTIFACT_BY_GID =
378 sql.get(SQL_DELETE_ARTIFACT_BY_GID);
375 } 379 }
376 380
377 protected static final int numFacets(List<Output> outs) { 381 protected static final int numFacets(List<Output> outs) {
378 int sum = 0; 382 int sum = 0;
379 for (Output out: outs) { 383 for (Output out: outs) {
991 995
992 if (!exec.runWrite()) { 996 if (!exec.runWrite()) {
993 log.error("storing facets failed"); 997 log.error("storing facets failed");
994 } 998 }
995 } 999 }
1000
1001 public void killedCollections(
1002 final List<String> identifiers,
1003 GlobalContext context
1004 ) {
1005 log.debug("killedCollections");
1006
1007 SQLExecutor.Instance exec = sqlExecutor.new Instance() {
1008 @Override
1009 public boolean doIt() throws SQLException {
1010 prepareStatement(SQL_DELETE_COLLECTION_BY_GID);
1011 for (String identifier: identifiers) {
1012 stmnt.setString(1, identifier);
1013 stmnt.execute();
1014 }
1015 conn.commit();
1016 return true;
1017 }
1018 };
1019
1020 if (!exec.runWrite()) {
1021 log.error("killing collections failed");
1022 }
1023 }
1024
1025 public void killedArtifacts(
1026 final List<String> identifiers,
1027 GlobalContext context
1028 ) {
1029 log.debug("killedArtifacts");
1030
1031 SQLExecutor.Instance exec = sqlExecutor.new Instance() {
1032 @Override
1033 public boolean doIt() throws SQLException {
1034 prepareStatement(SQL_DELETE_ARTIFACT_BY_GID);
1035 for (String identifier: identifiers) {
1036 stmnt.setString(1, identifier);
1037 stmnt.execute();
1038 }
1039 conn.commit();
1040 return true;
1041 }
1042 };
1043
1044 if (!exec.runWrite()) {
1045 log.error("killing artifacts failed");
1046 }
1047 }
996 } 1048 }
997 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 1049 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org