changeset 4443:af728a5e0329

Introduce a new Interface to abstract the data to curve generation A Processor class should be used to generate curves from a specific data input (e.g. WQKm).
author Björn Ricks <bjoern.ricks@intevation.de>
date Wed, 07 Nov 2012 14:07:52 +0100
parents 26774405c884
children 47d50572844a
files flys-artifacts/src/main/java/de/intevation/flys/exports/process/Processor.java
diffstat 1 files changed, 39 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/exports/process/Processor.java	Wed Nov 07 14:07:52 2012 +0100
@@ -0,0 +1,39 @@
+package de.intevation.flys.exports.process;
+
+import org.w3c.dom.Document;
+
+import de.intevation.artifactdatabase.state.ArtifactAndFacet;
+import de.intevation.flys.exports.XYChartGenerator;
+
+/**
+ * A processor is intended to generate an output e.g. curve in a chart diagramm from
+ * arbitrary data input which can be reused in several generators.
+ *
+ * @author <a href="mailto:bjoern.ricks@intevation.de">Björn Ricks</a>
+ */
+public interface Processor {
+
+    /**
+     * Processes data to generate e.g. a chart.
+     *
+     * @param generator XYChartGenerator to add output on. 
+     * @param aandf       The artifact and facet
+     * @param theme      The theme that contains styling information.
+     * @param visible       The visibility of the curve.
+     * @param index        The index of the curve
+     */
+    public void doOut(
+            XYChartGenerator generator,
+            ArtifactAndFacet    aandf,
+            Document             theme,
+            boolean               visible,
+            int                         index);
+
+    /**
+     * Returns true if the Processor class is able to generate output for a facet type
+     * 
+     * @param facettype Name of the facet type
+     * @return true if the facettype can be processed
+     */
+    public boolean canHandle(String facettype); 
+}

http://dive4elements.wald.intevation.org