aboutsummaryrefslogtreecommitdiff
path: root/examples/TranslateXML.java
diff options
context:
space:
mode:
authorjestin2006-08-01 09:24:10 +0000
committerjestin2006-08-01 09:24:10 +0000
commitd0afba319f95f0059d201c6b7cbfbc3322f2c0f6 (patch)
tree8da823c48b5843bf7022db1f3c53b63e85b8c4f5 /examples/TranslateXML.java
parentd23e26197c375071459bbd6c5aa3d09c27020c31 (diff)
downloadivy-java-d0afba319f95f0059d201c6b7cbfbc3322f2c0f6.zip
ivy-java-d0afba319f95f0059d201c6b7cbfbc3322f2c0f6.tar.gz
ivy-java-d0afba319f95f0059d201c6b7cbfbc3322f2c0f6.tar.bz2
ivy-java-d0afba319f95f0059d201c6b7cbfbc3322f2c0f6.tar.xz
Adding a correct example of translator in XML
documentation update cleanup of IvyClient for Ping Pong
Diffstat (limited to 'examples/TranslateXML.java')
-rw-r--r--examples/TranslateXML.java33
1 files changed, 18 insertions, 15 deletions
diff --git a/examples/TranslateXML.java b/examples/TranslateXML.java
index b7ec8fb..9dc3283 100644
--- a/examples/TranslateXML.java
+++ b/examples/TranslateXML.java
@@ -8,6 +8,8 @@
* this program is LGPL ... etc etc
*
* New:
+ * 1.2.12
+ * leaving NanoXML in favor to the full featured xpath etc...
* 1.2.6
* get compatible with new Ivy version
* 1.2.3
@@ -16,10 +18,14 @@
*
*/
import fr.dgac.ivy.* ;
+import gnu.getopt.Getopt;
import java.io.* ;
-import net.n3.nanoxml.*;
import java.util.*;
-import gnu.getopt.Getopt;
+import javax.xml.parsers.*;
+import javax.xml.xpath.*;
+import org.xml.sax.*;
+import org.w3c.dom.*;
+
class TranslateXML {
@@ -42,19 +48,16 @@ class TranslateXML {
private void parseFile(String filename) {
try {
- IXMLParser parser = XMLParserFactory.createDefaultXMLParser();
- IXMLReader reader = StdXMLReader.fileReader(filename);
- parser.setReader(reader);
- IXMLElement xml = (IXMLElement) parser.parse();
- // checks if everything is OK
- // XMLWriter writer = new XMLWriter(System.out);
- // writer.write(xml);
- Vector translations = xml.getChildrenNamed("translate");
- for (int i=0;i<translations.size();i++) {
- IXMLElement trans = (IXMLElement)translations.elementAt(i);
- String from = trans.getAttribute("from",null);
- String to = trans.getAttribute("to",null);
- if ((from!=null)&&(to!=null)) {
+ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ DocumentBuilder builder = factory.newDocumentBuilder();
+ Document trans = builder.parse(new File(filename));
+ XPath xpath = XPathFactory.newInstance().newXPath();
+ NodeList list = (NodeList)xpath.evaluate("/translations/translate",trans,XPathConstants.NODESET);
+ for (int i=0;i<list.getLength();i++) {
+ NamedNodeMap nnm = list.item(i).getAttributes();
+ String from = nnm.getNamedItem("from").getNodeValue();
+ String to = nnm.getNamedItem("to").getNodeValue();
+ if ((from!=null)&&(to!=null)&&(!from.equals(to))) {
System.out.println("translating every \""+from+"\" in \""+to+"\"");
bus.bindMsg(from,new TALK(to));
}