changeset 2084:a5f327849b85

Added a service to invalidate caches by their names. Useful tp prevent cache inconsistencies caused by external ETL processes. flys-artifacts/trunk@3604 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Thu, 05 Jan 2012 18:35:09 +0000
parents b52012d538af
children dd3f5bd174ea
files flys-artifacts/ChangeLog flys-artifacts/doc/conf/conf.xml flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/FLYSService.java
diffstat 3 files changed, 33 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/flys-artifacts/ChangeLog	Thu Jan 05 14:32:44 2012 +0000
+++ b/flys-artifacts/ChangeLog	Thu Jan 05 18:35:09 2012 +0000
@@ -1,3 +1,31 @@
+2011-01-05	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
+
+	* src/main/java/de/intevation/flys/artifacts/services/CacheInvalidationService.java:
+	  New. Uses the CacheFactory to invalidate caches by their names.
+	  This can be used by external ETL processes like the AFT/DIPS importer
+	  to prevent cache inconsistencies.
+
+	  Input documents look like this:
+
+	    <caches>
+	      <cache name="my-cache"/>
+	      ...
+	      <cache name="your-cache"/>
+	    </caches>
+
+	  Output documents look like this:
+
+	    <caches>
+	      <cache name="my-cache">All elements removed.</cache>
+	      ...
+	      <cache name="your-cache">Error: Cache not found.</cache>
+	    </caches>
+
+	 * doc/conf/conf.xml: Added the cache invalidation service.
+
+	* src/main/java/de/intevation/flys/artifacts/services/FLYSService.java:
+	  Added Override annotation.
+
 2011-01-05	Felix Wolfsteller	<felix.wolfsteller@intevation.de>
 
 	flys/issue432 (Diagrammeigenschaften/Flächenrenderer:
--- a/flys-artifacts/doc/conf/conf.xml	Thu Jan 05 14:32:44 2012 +0000
+++ b/flys-artifacts/doc/conf/conf.xml	Thu Jan 05 18:35:09 2012 +0000
@@ -100,6 +100,10 @@
                 name="cross-section-km"
                 service="de.intevation.flys.artifacts.services.CrossSectionKMService"
                 description="The service provides the N next neighbored kms and ids of cross section lines for given cross section id, km and N.">de.intevation.artifactdatabase.DefaultServiceFactory</service-factory>
+            <service-factory
+                name="cache-invalidation"
+                service="de.intevation.flys.artifacts.services.CacheInvalidationService"
+                description="The service invalidates caches.">de.intevation.artifactdatabase.DefaultServiceFactory</service-factory>
         </service-factories>
 
     </factories>
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/FLYSService.java	Thu Jan 05 14:32:44 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/FLYSService.java	Thu Jan 05 18:35:09 2012 +0000
@@ -19,6 +19,7 @@
     private static final Logger logger = Logger.getLogger(FLYSService.class);
 
 
+    @Override
     public Document process(
         Document      data,
         GlobalContext globalContext,

http://dive4elements.wald.intevation.org