[Dive4elements-commits] [PATCH] Refactor Converter to use common code
Wald Commits
scm-commit at wald.intevation.org
Thu Nov 1 14:51:42 CET 2012
# HG changeset patch
# User Björn Ricks <bjoern.ricks at intevation.de>
# Date 1351777783 -3600
# Node ID 823c8afa13356a4983cb9f2dbed8dfe389c44940
# Parent cb1655e87ce67d44baca4dd674a7e9f436d381b9
Refactor Converter to use common code
diff -r cb1655e87ce6 -r 823c8afa1335 flys-client/src/main/java/de/intevation/flys/client/server/meta/Converter.java
--- a/flys-client/src/main/java/de/intevation/flys/client/server/meta/Converter.java Thu Nov 01 12:30:07 2012 +0100
+++ b/flys-client/src/main/java/de/intevation/flys/client/server/meta/Converter.java Thu Nov 01 14:49:43 2012 +0100
@@ -82,19 +82,18 @@
public DataCageTree convert(Document document) {
logger.debug("convert called");
- //System.err.println(XMLUtils.toString(document));
+
+ if (logger.isDebugEnabled()) {
+ logger.debug(XMLUtils.toString(document));
+ }
ArrayList<DataCageNode> roots = new ArrayList<DataCageNode>();
NodeList nodes = document.getChildNodes();
for (int i = 0, N = nodes.getLength(); i < N; ++i) {
Node node = nodes.item(i);
if (node.getNodeType() == Node.ELEMENT_NODE) {
- logger.debug("search for name: " + node.getLocalName());
- NodeConverter converter = converters.get(node.getLocalName());
- if (converter == null) {
- converter = I18N_CONVERTER;
- }
- roots.add(converter.convert((Element)node, this));
+ Element ele = (Element)node;
+ roots.add(convertElement(ele));
}
}
return roots.isEmpty()
@@ -108,21 +107,28 @@
for (int i = 0, N = children.getLength(); i < N; ++i) {
Node child = children.item(i);
if (child.getNodeType() == Node.ELEMENT_NODE) {
- String name = child.getLocalName();
- NodeConverter converter = converters.get(name);
- if (converter == null) {
- converter = I18N_CONVERTER;
- }
- DataCageNode son = converter.convert(
- (Element)child, this);
- parent.addChild(son);
+ Element childele = (Element)child;
+ parent.addChild(convertElement(childele));
- if (((Element)child).hasAttribute("description"))
- logger.debug("nwd: " + ((Element)child).getAttribute("description"));
+ if (childele.hasAttribute("description"))
+ logger.debug("nwd: " + childele.getAttribute("description"));
}
} // for all children
}
+ private DataCageNode convertElement(Element element) {
+ String name = element.getLocalName();
+
+ logger.debug("search for name: " + name);
+
+ NodeConverter converter = converters.get(name);
+ if (converter == null) {
+ converter = I18N_CONVERTER;
+ }
+ return converter.convert(element, this);
+
+ }
+
/**
* Creates key/value pairs from Nodes Attributes.
More information about the Dive4elements-commits
mailing list