annotate src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/xmlReadTest/SaxTest.java @ 44:5e8eac03fed3

miner change
author one
date Tue, 25 Nov 2014 17:51:35 +0900
parents 1bdd50e26fac
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
1 package jp.ac.u_ryukyu.cr.ie.tatsuki.xmlReadTest;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
2
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
3 import java.io.*;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
4 import java.nio.ByteBuffer;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
5 import java.util.Iterator;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
6
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
7 import javax.xml.parsers.*;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
8
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
16 import junit.framework.Assert;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
17
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
18 class SaxTest {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
19 public static void main(String args[]) {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
20 try {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
21 SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
22 SAXParser saxParser = saxParserFactory.newSAXParser();
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
23 Jungle jungle = new DefaultJungle(null, "hoge",new DefaultTreeEditor(new DefaultTraverser()));
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
24 JungleTree tree = jungle.createNewTree("XMLTEST");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
25 TestHandler testHandler = new TestHandler(tree);
25
6f9439ca3eb5 change name find to findInSubTree
one
parents: 4
diff changeset
26 saxParser.parse(new FileInputStream("xml/sample.xml"), testHandler);
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
27 JungleTree newTree = testHandler.getTree();
44
5e8eac03fed3 miner change
one
parents: 43
diff changeset
28 InterfaceTraverser ifTraverser = newTree.getTraverser(false);
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
29
42
c036d36c33af function refactor
one
parents: 25
diff changeset
30 Iterator<TreeNode> searchNodeIterator = ifTraverser.find((
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
31 TreeNode node) -> {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
32 ByteBuffer attribute = node.getAttributes().get("element");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
33 if (attribute != null) {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
34 byte[] byteAttribute = attribute.array();
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
35 String str = new String(byteAttribute);
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
36 System.out.println("attribute = " + str);
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
37 return str.equals("Person");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
38 }
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
39 return false;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
40 }, "element", "Person");
42
c036d36c33af function refactor
one
parents: 25
diff changeset
41 TreeNode searchNode = searchNodeIterator.next();
c036d36c33af function refactor
one
parents: 25
diff changeset
42 Assert.assertEquals(searchNode.getAttributes().getString("element"),"Person");
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
43
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
44
42
c036d36c33af function refactor
one
parents: 25
diff changeset
45 searchNodeIterator = ifTraverser.find((TreeNode node) -> {
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
46 ByteBuffer attribute = node.getAttributes().get("element");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
47 if (attribute != null) {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
48 byte[] byteAttribute = attribute.array();
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
49 String str = new String(byteAttribute);
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
50 System.out.println("attribute = " + str);
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
51 return str.equals("name");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
52 }
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
53 return false;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
54 }, "element", "name");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
55
42
c036d36c33af function refactor
one
parents: 25
diff changeset
56 searchNode = searchNodeIterator.next();
c036d36c33af function refactor
one
parents: 25
diff changeset
57 Assert.assertEquals(searchNode.getAttributes().getString("text"),"tatsuki");
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
58
42
c036d36c33af function refactor
one
parents: 25
diff changeset
59 searchNodeIterator = ifTraverser.find((TreeNode node) -> {
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
60 ByteBuffer attribute = node.getAttributes().get("text");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
61 if (attribute != null) {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
62 byte[] byteAttribute = attribute.array();
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
63 String str = new String(byteAttribute);
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
64 System.out.println("attribute = " + str);
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
65 return str.equals("tatsuki");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
66 }
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
67 return false;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
68 }, "text", "tatsuki");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
69
42
c036d36c33af function refactor
one
parents: 25
diff changeset
70 searchNode = searchNodeIterator.next();
c036d36c33af function refactor
one
parents: 25
diff changeset
71 Assert.assertEquals(searchNode.getAttributes().getString("id"),"10");
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
72
42
c036d36c33af function refactor
one
parents: 25
diff changeset
73 searchNodeIterator = ifTraverser.find((TreeNode node) -> {
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
74 ByteBuffer attribute = node.getAttributes().get("id");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
75 if (attribute != null) {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
76 byte[] byteAttribute = attribute.array();
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
77 String str = new String(byteAttribute);
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
78 System.out.println("attribute = " + str);
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
79 return str.equals("10");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
80 }
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
81 return false;
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
82 }, "id", "10");
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
83
42
c036d36c33af function refactor
one
parents: 25
diff changeset
84 searchNode = searchNodeIterator.next();
c036d36c33af function refactor
one
parents: 25
diff changeset
85 Assert.assertEquals(searchNode.getAttributes().getString("id"),"10");
0
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
86
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
87 } catch (Exception e) {
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
88 e.printStackTrace();
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
89 }
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
90 }
faedeec97605 read Jungle xml
tatsuki
parents:
diff changeset
91 }