diff gnv/src/main/java/de/intevation/gnv/action/sessionmodel/DefaultSessionModel.java @ 30:07e9c137a2f1

Added dynamic Outputparameter Support and Outputparameter-manipulation gnv/trunk@134 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Fri, 25 Sep 2009 14:24:08 +0000
parents bba8fd97e549
children 0f4362d75e9e
line wrap: on
line diff
--- a/gnv/src/main/java/de/intevation/gnv/action/sessionmodel/DefaultSessionModel.java	Fri Sep 25 07:28:49 2009 +0000
+++ b/gnv/src/main/java/de/intevation/gnv/action/sessionmodel/DefaultSessionModel.java	Fri Sep 25 14:24:08 2009 +0000
@@ -6,7 +6,11 @@
 import java.util.Collection;
 import java.util.Iterator;
 
+import org.apache.log4j.Logger;
+
+import de.intevation.gnv.artifactdatabase.objects.ArtifactDescription;
 import de.intevation.gnv.artifactdatabase.objects.ArtifactObject;
+import de.intevation.gnv.artifactdatabase.objects.OutputMode;
 
 /**
  * @author Tim Englich <tim.englich@intevation.de>
@@ -15,7 +19,15 @@
 public class DefaultSessionModel implements SessionModel{
 
 
+    /**
+     * the logger, used to log exceptions and additonaly information
+     */
+    private static Logger log = Logger.getLogger(DefaultSessionModel.class);
 
+    /**
+     * The UID of this Class.
+     */
+    private static final long serialVersionUID = 3431484439985158311L;
 
     private Collection<ArtifactObject> artifactFactories = null;
     
@@ -91,14 +103,52 @@
     public void setCurrentArtifact(ArtifactObject artifact) {
         this.currentArtifact = artifact;
     }
-    
+
+    /**
+     * @see de.intevation.gnv.action.sessionmodel.SessionModel#getDiagrammOptions()
+     */
     public DiagrammOptions getDiagrammOptions() {
-        if (diagrammOptions == null){
-            diagrammOptions = new DiagrammOptions();
+        return this.diagrammOptions;
+    }
+
+    /**
+     * @see de.intevation.gnv.action.sessionmodel.SessionModel#setDiagrammOptions(de.intevation.gnv.action.sessionmodel.DiagrammOptions)
+     */
+    public void setDiagrammOptions(DiagrammOptions diagrammOptions) {
+        this.diagrammOptions = diagrammOptions;
+    }
+
+    /**
+     * @see de.intevation.gnv.action.sessionmodel.SessionModel#getArtifactDescription()
+     */
+    public ArtifactDescription getArtifactDescription() {
+        if (this.currentArtifact != null){
+            return (ArtifactDescription)this.currentArtifact;
         }
-        return diagrammOptions;
+        return null;
+    }
+
+    /**
+     * @see de.intevation.gnv.action.sessionmodel.SessionModel#getOutputMode(java.lang.String)
+     */
+    public OutputMode getOutputMode(String name) {
+        ArtifactDescription ad = this.getArtifactDescription();
+        if (ad != null){
+            if (ad.getOutputModes() != null){
+                return ad.getOutputModes().get(name);
+            }
+        }
+        return null;
     }
     
-    
-
+    /**
+     * @see de.intevation.gnv.action.sessionmodel.SessionModel#resetModel()
+     */
+    public void resetModel() {
+        log.debug("DefaultSessionModel.resetModel");
+        selectedArtifactFactory = null;
+        currentArtifact  =null;
+        diagrammOptions= null;
+       
+    }
 }

http://dive4elements.wald.intevation.org