diff gnv-artifacts/src/main/java/de/intevation/gnv/transition/TransitionBase.java @ 52:4d6a82b96059

First Implementation of the GNV-Artifacts gnv-artifacts/trunk@32 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Mon, 07 Sep 2009 15:29:24 +0000
parents
children e464d9f9d967
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gnv-artifacts/src/main/java/de/intevation/gnv/transition/TransitionBase.java	Mon Sep 07 15:29:24 2009 +0000
@@ -0,0 +1,88 @@
+/**
+ *
+ */
+package de.intevation.gnv.transition;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.apache.log4j.Logger;
+import org.w3c.dom.Document;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+import de.intevation.artifactdatabase.Config;
+import de.intevation.gnv.artifacts.GNVArtifactBase;
+
+/**
+ * @author Tim Englich <tim.englich@intevation.de>
+ *
+ */
+public abstract class TransitionBase implements Transition {
+    /**
+     * the logger, used to log exceptions and additonaly information
+     */
+    private static Logger log = Logger.getLogger(GNVArtifactBase.class);
+    
+    private String id = null;
+    
+    protected String queryID = null;
+    
+    private Collection<String> reachableTransitions = null;
+    
+    private Transition parent = null;
+    /**
+     * Constructor
+     */
+    public TransitionBase() {
+        super();
+    }
+
+    /**
+     * @see de.intevation.gnv.transition.Transition#getID()
+     */
+    public String getID() {
+        return this.id;
+    }
+
+    /**
+     * @see de.intevation.gnv.transition.Transition#reachableTransitions()
+     */
+    public Collection<String> reachableTransitions() {
+        return this.reachableTransitions;
+    }
+
+    /**
+     * @see de.intevation.gnv.transition.Transition#setup(org.w3c.dom.Node)
+     */
+    public void setup(Node configuration) {
+        
+        this.id = Config.getStringXPath(configuration,"@id");
+        log.info("Transition-ID = "+ this.id);
+        NodeList nodes = Config.getNodeSetXPath(configuration,"reachableTransitions/transition");
+        this.reachableTransitions = new ArrayList<String>(nodes.getLength());
+        for (int i = 0 ; i < nodes.getLength(); i++){
+            String reachableTransition = nodes.item(i).getTextContent();
+            log.info("ReachableTransition ==> "+ reachableTransition);
+            this.reachableTransitions.add(reachableTransition);
+            
+        }
+        this.queryID = Config.getStringXPath(configuration,"queryID");
+        log.info("QueryID ==>"+ this.queryID);
+        
+    }
+
+    /**
+     * @see de.intevation.gnv.transition.Transition#getParent()
+     */
+    public Transition getParent() {
+        return this.parent;
+    }
+
+    /**
+     * @see de.intevation.gnv.transition.Transition#setParent(de.intevation.gnv.transition.Transition)
+     */
+    public void setParent(Transition transition) {
+        this.parent = transition;
+    }
+}

http://dive4elements.wald.intevation.org