diff flys-artifacts/src/main/java/de/intevation/flys/collections/AttributeWriter.java @ 1993:85132c9edd64

Make reuse of the old CollectionAttribute during the describe() operation of FLYSArtifactCollection - remove the old facets only. flys-artifacts/trunk@3430 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 16 Dec 2011 09:19:11 +0000
parents 9c0acaa369ea
children f114c0d55d19
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/collections/AttributeWriter.java	Fri Dec 16 07:28:17 2011 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/collections/AttributeWriter.java	Fri Dec 16 09:19:11 2011 +0000
@@ -61,6 +61,7 @@
      */
     public AttributeWriter(
         ArtifactDatabase    db,
+        CollectionAttribute attribute,
         Map<String, Output> oldAttr,
         List<Facet>         oldFacets,
         Map<String, Output> newAttr,
@@ -68,6 +69,7 @@
         Map<String, List<String>> matrix)
     {
         this.db        = db;
+        this.attribute = attribute;
         this.oldAttr   = oldAttr;
         this.newAttr   = newAttr;
         this.oldFacets = oldFacets;
@@ -88,12 +90,9 @@
      * @return document with merged outputs as described.
      */
     protected CollectionAttribute write() {
-        attribute = new CollectionAttribute();
-
         for (String outName: newAttr.keySet()) {
             Output a = newAttr.get(outName);
-
-            attribute.addOutput(a.getName(), a);
+            attribute.clearFacets(outName);
 
             writeOutput(a.getName(), newFacets, oldFacets);
         }

http://dive4elements.wald.intevation.org