Mercurial > dive4elements > river
comparison flys-client/src/main/java/de/intevation/flys/client/server/CollectionHelper.java @ 804:374712890b94
Facets read from Collection's DESCRIBE document keep all their attributes after the Collection's attribute has been modified.
flys-client/trunk@2362 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 19 Jul 2011 16:32:52 +0000 |
parents | a0884f486711 |
children | e9337488bac3 |
comparison
equal
deleted
inserted
replaced
803:653ae84533e7 | 804:374712890b94 |
---|---|
1 package de.intevation.flys.client.server; | 1 package de.intevation.flys.client.server; |
2 | 2 |
3 import java.util.List; | 3 import java.util.List; |
4 import java.util.Map; | 4 import java.util.Map; |
5 import java.util.Set; | |
5 | 6 |
6 import org.w3c.dom.Document; | 7 import org.w3c.dom.Document; |
7 import org.w3c.dom.Element; | 8 import org.w3c.dom.Element; |
8 | 9 |
9 import de.intevation.artifacts.common.ArtifactNamespaceContext; | 10 import de.intevation.artifacts.common.ArtifactNamespaceContext; |
10 import de.intevation.artifacts.common.utils.XMLUtils; | 11 import de.intevation.artifacts.common.utils.XMLUtils; |
11 import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator; | 12 import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator; |
12 | 13 |
14 import de.intevation.flys.client.shared.model.AttributedTheme; | |
13 import de.intevation.flys.client.shared.model.Collection; | 15 import de.intevation.flys.client.shared.model.Collection; |
14 import de.intevation.flys.client.shared.model.OutputMode; | 16 import de.intevation.flys.client.shared.model.OutputMode; |
15 import de.intevation.flys.client.shared.model.Theme; | 17 import de.intevation.flys.client.shared.model.Theme; |
16 import de.intevation.flys.client.shared.model.ThemeList; | 18 import de.intevation.flys.client.shared.model.ThemeList; |
17 | 19 |
141 { | 143 { |
142 if (theme == null) { | 144 if (theme == null) { |
143 return null; | 145 return null; |
144 } | 146 } |
145 | 147 |
146 Element t = cr.create("theme"); | 148 Element t = cr.create("facet"); |
147 | 149 |
148 cr.addAttr(t, "active", theme.isActive() ? "1" : "0", true); | 150 if (theme instanceof AttributedTheme) { |
149 cr.addAttr(t, "artifact", theme.getArtifact(), true); | 151 AttributedTheme at = (AttributedTheme) theme; |
150 cr.addAttr(t, "facet", theme.getFacet(), true); | 152 Set<String> keys = at.getKeys(); |
151 cr.addAttr(t, "pos", Integer.toString(theme.getPosition()), true); | 153 |
152 cr.addAttr(t, "index", Integer.toString(theme.getIndex()), true); | 154 for (String key: keys) { |
153 cr.addAttr(t, "description", theme.getDescription(), true); | 155 cr.addAttr(t, key, at.getAttr(key), true); |
156 } | |
157 } | |
158 else { | |
159 cr.addAttr(t, "active", Integer.toString(theme.getActive()), true); | |
160 cr.addAttr(t, "artifact", theme.getArtifact(), true); | |
161 cr.addAttr(t, "facet", theme.getFacet(), true); | |
162 cr.addAttr(t, "pos", Integer.toString(theme.getPosition()), true); | |
163 cr.addAttr(t, "index", Integer.toString(theme.getIndex()), true); | |
164 cr.addAttr(t, "description", theme.getDescription(), true); | |
165 } | |
154 | 166 |
155 return t; | 167 return t; |
156 } | 168 } |
157 } | 169 } |
158 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 170 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |