diff gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.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 5f47881f7c97
children d117fd4b82e5
line wrap: on
line diff
--- a/gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java	Wed Sep 09 09:39:43 2009 +0000
+++ b/gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/GNVArtifactBase.java	Wed Sep 09 11:01:55 2009 +0000
@@ -21,6 +21,8 @@
 import de.intevation.gnv.transition.DefaultInputData;
 import de.intevation.gnv.transition.InputData;
 import de.intevation.gnv.transition.InputValue;
+import de.intevation.gnv.transition.OutputMode;
+import de.intevation.gnv.transition.OutputTransition;
 import de.intevation.gnv.transition.Transition;
 import de.intevation.gnv.transition.TransitionFactory;
 import de.intevation.gnv.transition.exception.TransitionException;
@@ -259,10 +261,25 @@
     }
     
     protected void createOutputs(Element parent, Document document){
+        log.debug("GNVArtifactBase.createOutputs");
         Element outputsNode = createElement(document,"outputs");
-        
-        // TODO_ Mit Leben füllen.
-        
+        if (this.current instanceof OutputTransition){
+            Collection<OutputMode> outputModes = ((OutputTransition)this.current).getOutputModes();
+            if (outputModes != null){
+                Iterator<OutputMode> it = outputModes.iterator();
+                while(it.hasNext()){
+                    OutputMode outputMode = it.next();
+                    log.debug("Write Outputnode for "+ outputMode.toString());
+                    Element outputModeNode = createElement(document,"output");
+                    outputModeNode.setAttribute("name", outputMode.getName());
+                    outputModeNode.setAttribute("description", outputMode.getDescription());
+                    outputModeNode.setAttribute("mime-type", outputMode.getMimeType());
+                    outputsNode.appendChild(outputModeNode);
+                }
+            }else{
+                log.warn("No Outputmodes given.");
+            }
+        }
         parent.appendChild(outputsNode);
     }
 

http://dive4elements.wald.intevation.org