comparison flys-client/src/main/java/de/intevation/flys/client/server/meta/Converter.java @ 822:ffb98b228b3c

Add code to extract data to load from datacage tree. flys-client/trunk@2493 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 12 Aug 2011 15:51:51 +0000
parents 56069d236afa
children 63b258bf365c
comparison
equal deleted inserted replaced
821:56069d236afa 822:ffb98b228b3c
26 26
27 } // interface NodeConverter 27 } // interface NodeConverter
28 28
29 public static class NameConverter implements NodeConverter { 29 public static class NameConverter implements NodeConverter {
30 public DataCageNode convert(Element node, Converter converter) { 30 public DataCageNode convert(Element node, Converter converter) {
31 System.err.println("NameConverter called"); 31 //System.err.println("NameConverter called");
32 DataCageNode out = new DataCageNode( 32 DataCageNode out = new DataCageNode(
33 node.getAttribute("name"), 33 node.getAttribute("name"),
34 toAttrList(node.getAttributes())); 34 toAttrList(node.getAttributes()));
35 converter.convertChildren(out, node); 35 converter.convertChildren(out, node);
36 return out; 36 return out;
37 } 37 }
38 } // class NameConverter 38 } // class NameConverter
39 39
40 public static class I18NConverter implements NodeConverter { 40 public static class I18NConverter implements NodeConverter {
41 public DataCageNode convert(Element node, Converter converter) { 41 public DataCageNode convert(Element node, Converter converter) {
42 System.err.println("I18NConverter called"); 42 //System.err.println("I18NConverter called");
43 String name = node.hasAttribute("description")
44 ? node.getAttribute("description")
45 : "${" + node.getLocalName() + "}";
43 DataCageNode out = 46 DataCageNode out =
44 new DataCageNode( 47 new DataCageNode(name, toAttrList(node.getAttributes()));
45 "${" + node.getLocalName() + "}",
46 toAttrList(node.getAttributes()));
47 converter.convertChildren(out, node); 48 converter.convertChildren(out, node);
48 return out; 49 return out;
49 } 50 }
50 } // I18NConverter 51 } // I18NConverter
51 52
52 protected Map<String, NodeConverter> converters; 53 protected Map<String, NodeConverter> converters;
53 54
54 protected void convertChildren(DataCageNode parent, Element sub) { 55 protected void convertChildren(DataCageNode parent, Element sub) {
55 System.err.println("convertChildren called"); 56 //System.err.println("convertChildren called");
56 NodeList children = sub.getChildNodes(); 57 NodeList children = sub.getChildNodes();
57 for (int i = 0, N = children.getLength(); i < N; ++i) { 58 for (int i = 0, N = children.getLength(); i < N; ++i) {
58 Node child = children.item(i); 59 Node child = children.item(i);
59 if (child.getNodeType() == Node.ELEMENT_NODE) { 60 if (child.getNodeType() == Node.ELEMENT_NODE) {
60 String name = child.getLocalName(); 61 String name = child.getLocalName();
120 AttrList result = new AttrList(N); 121 AttrList result = new AttrList(N);
121 122
122 for (int i = 0; i < N; ++i) { 123 for (int i = 0; i < N; ++i) {
123 Node node = nodeMap.item(i); 124 Node node = nodeMap.item(i);
124 if (node.getNodeType() == Node.ATTRIBUTE_NODE) { 125 if (node.getNodeType() == Node.ATTRIBUTE_NODE) {
125 Attr attr = (Attr)node; 126 Attr attr = (Attr)node;
126 String key = attr.getName(); 127 String key = attr.getName();
127 String value = attr.getValue(); 128 String value = attr.getValue();
128 result.add(key, value); 129 result.add(key, value);
129 } 130 }
130 } 131 }

http://dive4elements.wald.intevation.org