summaryrefslogtreecommitdiff
path: root/source/com/c2kernel/utils/XmlElementParser.java
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2012-05-30 08:37:45 +0200
committerAndrew Branson <andrew.branson@cern.ch>2012-05-30 08:37:45 +0200
commitb086f57f56bf0eb9dab9cf321a0f69aaaae84347 (patch)
tree8e6e26e8b7eed6abad7a17b093bdbb55c5e6b1ba /source/com/c2kernel/utils/XmlElementParser.java
parent22088ae8d2d5ff390518dbe1c4372325ffb3a647 (diff)
Initial Maven Conversion
Diffstat (limited to 'source/com/c2kernel/utils/XmlElementParser.java')
-rw-r--r--source/com/c2kernel/utils/XmlElementParser.java115
1 files changed, 0 insertions, 115 deletions
diff --git a/source/com/c2kernel/utils/XmlElementParser.java b/source/com/c2kernel/utils/XmlElementParser.java
deleted file mode 100644
index 69cee31..0000000
--- a/source/com/c2kernel/utils/XmlElementParser.java
+++ /dev/null
@@ -1,115 +0,0 @@
-package com.c2kernel.utils;
-
-import java.io.StringReader;
-import java.util.StringTokenizer;
-import java.util.Vector;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-
-public class XmlElementParser
-{
- public static String[] parse(String data, String xpath)
- {
- try {
- return Dom4JElementParser.parse(data, xpath);
- } catch (NoClassDefFoundError ex) {
- Logger.msg(5, "Using old xpath parser");
- return parseOld(data, xpath);
- }
- }
-
- public static String[] parseOld(String data, String path)
- {
- Vector<String> returnData = new Vector<String>();
- String[] returnArray = new String[0];
- try
- {
- DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
- DocumentBuilder builder = factory.newDocumentBuilder();
- StringReader is = new StringReader(data);
- Document doc = builder.parse(new InputSource(is));
- StringTokenizer pathTokens = new StringTokenizer(path, "/");
- int taille = pathTokens.countTokens();
- String[] pathElements = new String[taille];
- int i=taille;
- while (pathTokens.hasMoreElements())
- pathElements[--i] = pathTokens.nextToken();
-
- if (Logger.doLog(6)) {
- Logger.msg(6, "Path elements:");
- for (String pathElement : pathElements)
- Logger.debug(6, pathElement);
- }
-
- Logger.msg(6, "Looking for attribute "+pathElements[0]+" in "+pathElements[1]);
- NodeList nl = doc.getElementsByTagName(pathElements[1]);
- for (int j = 0; j < nl.getLength(); j++)
- {
- Logger.msg(6, "Found one");
- Element e = (Element)nl.item(j);
- boolean match=true;
- Node child=e;
- for (int k=2;k<taille&&match;k++)
- {
- Logger.msg(6, "Checking parent "+pathElements[k]);
- child = child.getParentNode();
- if (!child.getNodeName().equals(pathElements[k]))
- {
- Logger.msg(6, "No match for "+child.getNodeName());
- match=false;
- }
- else
- Logger.msg(6, "Match");
- }
- if (match&&e.hasAttribute(pathElements[0])) {
- Logger.msg(6, "Matching Attribute "+pathElements[0]+"="+e.getAttribute(pathElements[0]));
- returnData.add(e.getAttribute(pathElements[0]));
- }
- }
-
- Logger.msg(6, "Looking for element "+pathElements[0]);
- nl = doc.getElementsByTagName(pathElements[0]);
- for (int j = 0; j < nl.getLength(); j++)
- {
- Logger.msg(6, "Found one");
- Element e = (Element)nl.item(j);
- boolean match=true;
- Node child=e;
- for (int k=1;k<taille&&match;k++)
- {
- Logger.msg(6, "Checking parent "+pathElements[k]);
- child = child.getParentNode();
- if (!child.getNodeName().equals(pathElements[k]))
- {
- Logger.msg(6, "No match for "+child.getNodeName());
- match=false;
- }
- else
- Logger.msg(6, "Match");
- }
- if (match)
- {
- String s =e.getFirstChild().getNodeValue();
- Logger.msg(6, "Found Element "+pathElements[0]+"="+s);
- if (s!=null) returnData.add(s);
- }
- }
- }
- catch (Exception e)
- {
- //Logger.error(e);
- }
- Logger.msg(3, returnData.size()+" values found for "+path);
- returnArray=new String[returnData.size()];
- for (int i=0;i<returnArray.length;i++)
- returnArray[i] = returnData.get(i);
- return returnArray;
- }
-}