annotate flys-artifacts/src/main/java/de/intevation/flys/exports/process/Processor.java @ 4446:05a54b4d579d

Remove AbstractFixGenerator and use new KMIndexProcessor instead Don't use same base class for minfo and fixings artifacts. Instead use the new KMIndexProcessor to generate the same output for the same data types and facets.
author Björn Ricks <bjoern.ricks@intevation.de>
date Wed, 07 Nov 2012 14:34:13 +0100
parents af728a5e0329
children b195fede1c3b
rev   line source
4443
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.exports.process;
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
2
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
3 import org.w3c.dom.Document;
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
4
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
5 import de.intevation.artifactdatabase.state.ArtifactAndFacet;
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
6 import de.intevation.flys.exports.XYChartGenerator;
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
7
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
8 /**
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
9 * A processor is intended to generate an output e.g. curve in a chart diagramm from
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
10 * arbitrary data input which can be reused in several generators.
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
11 *
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
12 * @author <a href="mailto:bjoern.ricks@intevation.de">Björn Ricks</a>
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
13 */
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
14 public interface Processor {
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
15
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
16 /**
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
17 * Processes data to generate e.g. a chart.
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
18 *
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
19 * @param generator XYChartGenerator to add output on.
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
20 * @param aandf The artifact and facet
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
21 * @param theme The theme that contains styling information.
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
22 * @param visible The visibility of the curve.
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
23 * @param index The index of the curve
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
24 */
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
25 public void doOut(
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
26 XYChartGenerator generator,
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
27 ArtifactAndFacet aandf,
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
28 Document theme,
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
29 boolean visible,
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
30 int index);
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
31
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
32 /**
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
33 * Returns true if the Processor class is able to generate output for a facet type
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
34 *
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
35 * @param facettype Name of the facet type
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
36 * @return true if the facettype can be processed
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
37 */
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
38 public boolean canHandle(String facettype);
af728a5e0329 Introduce a new Interface to abstract the data to curve generation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
39 }

http://dive4elements.wald.intevation.org