comparison gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/fis/FISArtifact.java @ 73:504570de21fd

Refactoring Work depending on Infrastructurchanges in the Artifact-Module gnv-artifacts/trunk@79 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Mon, 14 Sep 2009 10:32:38 +0000
parents e4ecf3188bdf
children 2473440671ce
comparison
equal deleted inserted replaced
72:1fece4da4f2f 73:504570de21fd
1 /** 1 /**
2 * 2 *
3 */ 3 */
4 package de.intevation.gnv.artifacts.fis; 4 package de.intevation.gnv.artifacts.fis;
5 5
6 import java.io.IOException;
7 import java.io.OutputStream;
6 import java.util.ArrayList; 8 import java.util.ArrayList;
7 import java.util.Collection; 9 import java.util.Collection;
8 import java.util.HashMap; 10 import java.util.HashMap;
9 import java.util.Iterator; 11 import java.util.Iterator;
10 import java.util.Map; 12 import java.util.Map;
18 import de.intevation.artifactdatabase.Config; 20 import de.intevation.artifactdatabase.Config;
19 import de.intevation.artifactdatabase.DefaultArtifact; 21 import de.intevation.artifactdatabase.DefaultArtifact;
20 import de.intevation.artifactdatabase.XMLUtils; 22 import de.intevation.artifactdatabase.XMLUtils;
21 import de.intevation.artifacts.Artifact; 23 import de.intevation.artifacts.Artifact;
22 import de.intevation.artifacts.ArtifactFactory; 24 import de.intevation.artifacts.ArtifactFactory;
25 import de.intevation.artifacts.CallContext;
23 import de.intevation.gnv.artifacts.GNVArtifactBase; 26 import de.intevation.gnv.artifacts.GNVArtifactBase;
24 import de.intevation.gnv.artifacts.context.GNVArtifactContext; 27 import de.intevation.gnv.artifacts.context.GNVArtifactContext;
25 import de.intevation.gnv.artifacts.fis.product.DefaultProduct; 28 import de.intevation.gnv.artifacts.fis.product.DefaultProduct;
26 import de.intevation.gnv.artifacts.fis.product.Product; 29 import de.intevation.gnv.artifacts.fis.product.Product;
27 import de.intevation.gnv.transition.DefaultInputData; 30 import de.intevation.gnv.transition.DefaultInputData;
70 73
71 private ArtifactXMLUtilities xmlUtilities = new ArtifactXMLUtilities(); 74 private ArtifactXMLUtilities xmlUtilities = new ArtifactXMLUtilities();
72 75
73 76
74 /** 77 /**
75 * @see de.intevation.artifactdatabase.DefaultArtifact#advance(org.w3c.dom.Document, java.lang.Object) 78 * @see de.intevation.artifactdatabase.DefaultArtifact#advance(org.w3c.dom.Document, de.intevation.artifacts.CallContext)
76 */ 79 */
77 @Override 80 @Override
78 public Document advance(Document target, Object context) { 81 public Document advance(Document target, CallContext context) {
79 if (this.productArtifact == null){ 82 if (this.productArtifact == null){
80 if (this.current != null){ 83 if (this.current != null){
81 String uuid = Config.getStringXPath(target, "action/uuid/@value"); // TODO: müssen wir für das subartifact eine veränderte uuid führen? 84 String uuid = Config.getStringXPath(target, "action/uuid/@value"); // TODO: müssen wir für das subartifact eine veränderte uuid führen?
82 String hash = Config.getStringXPath(target, "action/hash/@value"); 85 String hash = Config.getStringXPath(target, "action/hash/@value");
83 this.productArtifact = this.current.getArtifactFactory().createArtifact(uuid, context); 86 this.productArtifact = this.current.getArtifactFactory().createArtifact(uuid, context);
160 163
161 /** 164 /**
162 * @see de.intevation.artifactdatabase.DefaultArtifact#describe(java.lang.Object) 165 * @see de.intevation.artifactdatabase.DefaultArtifact#describe(java.lang.Object)
163 */ 166 */
164 @Override 167 @Override
165 public Document describe(Object context) { 168 public Document describe(CallContext context) {
166 if (this.productArtifact == null){ 169 if (this.productArtifact == null){
167 return this.createDescibeOutput(); 170 return this.createDescibeOutput();
168 }else{ 171 }else{
169 return this.productArtifact.describe(context); 172 return this.productArtifact.describe(context);
170 } 173 }
172 175
173 /** 176 /**
174 * @see de.intevation.artifactdatabase.DefaultArtifact#feed(org.w3c.dom.Document, java.lang.Object) 177 * @see de.intevation.artifactdatabase.DefaultArtifact#feed(org.w3c.dom.Document, java.lang.Object)
175 */ 178 */
176 @Override 179 @Override
177 public Document feed(Document target, Object context) { 180 public Document feed(Document target, CallContext context) {
178 if (this.productArtifact == null){ 181 if (this.productArtifact == null){
179 String productName = Config.getStringXPath(target, "action/data/input[@name='product']/@value"); 182 String productName = Config.getStringXPath(target, "action/data/input[@name='product']/@value");
180 if (this.products.containsKey(productName)) { 183 if (this.products.containsKey(productName)) {
181 this.current = this.products.get(productName); 184 this.current = this.products.get(productName);
182 }else{ 185 }else{
191 194
192 /** 195 /**
193 * @see de.intevation.artifactdatabase.DefaultArtifact#out(org.w3c.dom.Document, java.lang.Object) 196 * @see de.intevation.artifactdatabase.DefaultArtifact#out(org.w3c.dom.Document, java.lang.Object)
194 */ 197 */
195 @Override 198 @Override
196 public byte[] out(Document format, Object context) { 199 public void out(Document format, OutputStream outputStream, CallContext context) throws IOException {
197 byte[] returnValue = null;
198 if (this.productArtifact != null){ 200 if (this.productArtifact != null){
199 returnValue = this.productArtifact.out(format, context); 201 this.productArtifact.out(format,outputStream, context);
200 } 202 }
201 return returnValue;
202 } 203 }
203 204
204 /** 205 /**
205 * Constructor 206 * Constructor
206 */ 207 */

http://dive4elements.wald.intevation.org