Mercurial > dive4elements > gnv-client
comparison gnv-artifacts/src/main/java/de/intevation/gnv/transition/OutputTransitionBase.java @ 64:5db77e0a8594
Integrated Output Methods and Interfacsstructure
gnv-artifacts/trunk@47 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Wed, 09 Sep 2009 11:01:55 +0000 |
parents | |
children | 5d4f5d26bb7a |
comparison
equal
deleted
inserted
replaced
63:6ae2d4134da3 | 64:5db77e0a8594 |
---|---|
1 /** | |
2 * | |
3 */ | |
4 package de.intevation.gnv.transition; | |
5 | |
6 import java.util.ArrayList; | |
7 import java.util.Collection; | |
8 | |
9 import org.apache.log4j.Logger; | |
10 import org.w3c.dom.Node; | |
11 import org.w3c.dom.NodeList; | |
12 | |
13 import de.intevation.artifactdatabase.Config; | |
14 | |
15 /** | |
16 * @author Tim Englich <tim.englich@intevation.de> | |
17 * | |
18 */ | |
19 public abstract class OutputTransitionBase extends TransitionBase implements | |
20 OutputTransition { | |
21 /** | |
22 * the logger, used to log exceptions and additonaly information | |
23 */ | |
24 private static Logger log = Logger.getLogger(OutputTransitionBase.class); | |
25 | |
26 protected Collection<OutputMode> outputModes = null; | |
27 /** | |
28 * Constructor | |
29 */ | |
30 public OutputTransitionBase() { | |
31 super(); | |
32 } | |
33 | |
34 /** | |
35 * @see de.intevation.gnv.transition.OutputTransition#getOutputModes() | |
36 */ | |
37 public Collection<OutputMode> getOutputModes() { | |
38 log.debug("OutputTransitionBase.getOutputModes"); | |
39 return this.outputModes; | |
40 } | |
41 | |
42 /** | |
43 * @see de.intevation.gnv.transition.TransitionBase#setup(org.w3c.dom.Node) | |
44 */ | |
45 @Override | |
46 public void setup(Node configuration) { | |
47 log.debug("OutputTransitionBase.setup"); | |
48 super.setup(configuration); | |
49 NodeList outputModeList = Config.getNodeSetXPath(configuration, "outputsModes/outputsMode"); | |
50 if (outputModeList != null){ | |
51 log.debug(outputModeList.getLength()+ " were found."); | |
52 this.outputModes = new ArrayList<OutputMode>(outputModeList.getLength()); | |
53 for (int i = 0; i < outputModeList.getLength(); i++){ | |
54 Node currentNode = outputModeList.item(i); | |
55 String name = Config.getStringXPath(currentNode, "@name"); | |
56 String description = Config.getStringXPath(currentNode, "@description"); | |
57 String mimeType = Config.getStringXPath(currentNode, "@mime-type"); | |
58 OutputMode outputMode = new DefaultOutputMode(name, description, mimeType); | |
59 log.debug(outputMode.toString()); | |
60 this.outputModes.add(outputMode); | |
61 | |
62 } | |
63 } | |
64 } | |
65 | |
66 } |