# HG changeset patch # User Björn Ricks # Date 1352293672 -3600 # Node ID af728a5e03292fc1a44aa7f13508f3e3e864d37a # Parent 26774405c88403ead0941430ea48b2af09496f2b 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). diff -r 26774405c884 -r af728a5e0329 flys-artifacts/src/main/java/de/intevation/flys/exports/process/Processor.java --- /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 Björn Ricks + */ +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); +}