diff artifacts/src/main/java/org/dive4elements/river/exports/process/AnnotationProcessor.java @ 7067:eb24d5203d17 generator-refactoring

Add second doOut implementations to work with diagram generator
author Andre Heinecke <aheinecke@intevation.de>
date Fri, 20 Sep 2013 14:54:26 +0200
parents 1011a40ee79c
children 253d80af5b7f
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/exports/process/AnnotationProcessor.java	Fri Sep 20 12:35:14 2013 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/exports/process/AnnotationProcessor.java	Fri Sep 20 14:54:26 2013 +0200
@@ -14,7 +14,7 @@
 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet;
 import org.dive4elements.artifacts.CallContext;
 import org.dive4elements.river.artifacts.model.FacetTypes;
-//import org.dive4elements.river.exports.DiagramGenerator;
+import org.dive4elements.river.exports.DiagramGenerator;
 import org.dive4elements.river.exports.XYChartGenerator;
 import org.dive4elements.river.jfree.RiverAnnotation;
 import org.dive4elements.river.themes.ThemeDocument;
@@ -31,6 +31,28 @@
 
     @Override
     public void doOut(
+            DiagramGenerator generator,
+            ArtifactAndFacet aaf,
+            ThemeDocument    theme,
+            boolean          visible) {
+        if (!visible) {
+            // Nothing to do
+            return;
+        }
+        CallContext context = generator.getCallContext();
+        if (!(aaf.getData(context) instanceof RiverAnnotation)) {
+            // Just a bit defensive should not happen
+            logger.error("Incompatible facet in doOut");
+            return;
+        }
+        RiverAnnotation ra = (RiverAnnotation)aaf.getData(context);
+        ra.setTheme(theme);
+        ra.setLabel(aaf.getFacetDescription());
+        generator.addAnnotations(ra);
+    }
+
+    @Override
+    public void doOut(
             XYChartGenerator generator,
             ArtifactAndFacet aaf,
             ThemeDocument    theme,

http://dive4elements.wald.intevation.org