comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/DGMSelect.java @ 3812:f788d2d901d6

merged flys-artifacts/pre2.6-2011-12-05
author Thomas Arendsen Hein <thomas@intevation.de>
date Fri, 28 Sep 2012 12:14:53 +0200
parents 8a2cbf947395
children 9d5f339d83a3
comparison
equal deleted inserted replaced
3808:5fab0fe3c445 3812:f788d2d901d6
1 package de.intevation.flys.artifacts.states;
2
3 import java.io.File;
4
5 import org.w3c.dom.Element;
6
7 import org.apache.log4j.Logger;
8
9 import de.intevation.artifacts.CallContext;
10
11 import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator;
12
13 import de.intevation.flys.artifacts.FLYSArtifact;
14 import de.intevation.flys.model.DGM;
15
16
17 /**
18 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
19 */
20 public class DGMSelect extends DefaultState {
21
22 private static final Logger logger = Logger.getLogger(DGMSelect.class);
23
24
25 @Override
26 protected String getUIProvider() {
27 return "dgm_datacage_panel";
28 }
29
30
31 @Override
32 protected Element createStaticData(
33 FLYSArtifact flys,
34 ElementCreator creator,
35 CallContext cc,
36 String name,
37 String value,
38 String type
39 ) {
40 Element dataElement = creator.create("data");
41 creator.addAttr(dataElement, "name", name, true);
42 creator.addAttr(dataElement, "type", type, true);
43
44 Element itemElement = creator.create("item");
45 creator.addAttr(itemElement, "value", value, true);
46
47 creator.addAttr(itemElement, "label", getLabel(cc, value), true);
48 dataElement.appendChild(itemElement);
49
50 return dataElement;
51 }
52
53
54 public static String getLabel(CallContext cc, String value) {
55 logger.debug("Create label for value: " + value);
56
57 try {
58 DGM dgm = DGM.getDGM(Integer.parseInt(value));
59
60 File file = new File(dgm.getPath());
61 return file.getName();
62 }
63 catch (NumberFormatException nfe) {
64 logger.warn("Cannot parse int value: '" + value + "'");
65 }
66
67 return "";
68 }
69 }
70 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org