# HG changeset patch # User one # Date 1415294407 -32400 # Node ID ed831b2fc156bd08e0bc406c4ad0f0416a309550 # Parent 095813055f198570717bff587d71855d79e91d73 temporarily stored diff -r 095813055f19 -r ed831b2fc156 src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlHandler.java --- a/src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlHandler.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlHandler.java Fri Nov 07 02:20:07 2014 +0900 @@ -15,13 +15,13 @@ import org.xml.sax.*; import org.xml.sax.helpers.*; -import fj.test.reflect.Name; public class ReadXmlHandler extends DefaultHandler { private JungleTree tree; private JungleTreeEditor editor; private NodePath path; - + private String elementName; + public ReadXmlHandler(JungleTree tree){ this.tree = tree; this.editor = tree.getTreeEditor(); @@ -52,25 +52,29 @@ // System.out.println("localName= " + localName); } - if (qName != "") { - // System.out.println("qName= " + qName); - Either newEither = editor.putAttribute(path, "element", ByteBuffer.wrap(qName.getBytes())); - if (newEither.isA()) { - //error - } - this.editor = newEither.b(); - } + if (qName != "") { + // System.out.println("qName= " + qName); + elementName = qName; + Either newEither = editor.putAttribute(path, "element", ByteBuffer.wrap(qName.getBytes())); + if (newEither.isA()) { + //error + } + this.editor = newEither.b(); + } - if (attributes.getLength() != 0) { - for (int count = 0 ;attributes.getLength() > count; count++) { - // System.out.println(attributes.getLocalName(count) + " = " + attributes.getValue(count)); - Either newEither = editor.putAttribute(path,attributes.getLocalName(count) , ByteBuffer.wrap(attributes.getValue(count).getBytes())); - if (newEither.isA()) { - //error - } - this.editor = newEither.b(); - } - } + if (attributes.getLength() != 0) { + for (int count = 0 ;attributes.getLength() > count; count++) { + // System.out.println(attributes.getLocalName(count) + " = " + attributes.getValue(count)); + String key = elementName + "-" + attributes.getLocalName(count); + String value = attributes.getValue(count); + ByteBuffer bValue = ByteBuffer.wrap(value.getBytes()); + Either newEither = editor.putAttribute(path,key , bValue); + if (newEither.isA()) { + //error + } + this.editor = newEither.b(); + } + } path = path.add(-1); } @@ -80,16 +84,16 @@ Pattern pattern = Pattern.compile("\n"); Matcher macher = pattern.matcher(str); - if (!macher.find()) { - Pair nodePair = path.last(); - NodePath onePath = nodePair.right(); - //System.out.println(str); - Either newEither = editor.putAttribute(onePath, "text", ByteBuffer.wrap(str.getBytes())); - if (newEither.isA()) { - //error - } - this.editor = newEither.b(); - } + if (!macher.find()) { + Pair nodePair = path.last(); + NodePath onePath = nodePair.right(); + //System.out.println(str); + Either newEither = editor.putAttribute(onePath, "text-" + elementName, ByteBuffer.wrap(str.getBytes())); + if (newEither.isA()) { + //error + } + this.editor = newEither.b(); + } } @Override diff -r 095813055f19 -r ed831b2fc156 src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlNodeCreateIndexHandler.java --- a/src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlNodeCreateIndexHandler.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlNodeCreateIndexHandler.java Fri Nov 07 02:20:07 2014 +0900 @@ -1,9 +1,5 @@ package ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader; -import java.nio.ByteBuffer; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTreeEditor; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; diff -r 095813055f19 -r ed831b2fc156 src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlPutAttributeCreateIndex.java --- a/src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlPutAttributeCreateIndex.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/ReadXmlPutAttributeCreateIndex.java Fri Nov 07 02:20:07 2014 +0900 @@ -15,7 +15,6 @@ import org.xml.sax.*; import org.xml.sax.helpers.*; -import fj.test.reflect.Name; public class ReadXmlPutAttributeCreateIndex extends DefaultHandler { private JungleTree tree; @@ -59,7 +58,7 @@ if (attributes.getLength() != 0) { for (int count = 0 ;attributes.getLength() > count; count++) { // System.out.println(attributes.getLocalName(count) + " = " + attributes.getValue(count)); - String key = attributes.getLocalName(count); + String key = elementName + "-" + attributes.getLocalName(count); String value = attributes.getValue(count); ByteBuffer bValue = ByteBuffer.wrap(value.getBytes()); Either newEither = editor.putAttribute(path,key , bValue); @@ -81,7 +80,8 @@ if (!macher.find()) { Pair nodePair = path.last(); NodePath onePath = nodePair.right(); - System.out.println(str); + if (str.equals("o:9")) + System.out.println(onePath.toString()); Either newEither = editor.putAttribute(onePath, "text-" + elementName, ByteBuffer.wrap(str.getBytes())); if (newEither.isA()) { //error diff -r 095813055f19 -r ed831b2fc156 src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/loadXml.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/loadXml.java Fri Nov 07 02:20:07 2014 +0900 @@ -0,0 +1,68 @@ +package ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader; + +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; + +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.parsers.SAXParser; +import javax.xml.parsers.SAXParserFactory; + +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; + +import org.xml.sax.SAXException; + +public class loadXml { + + Jungle jungle; + SAXParserFactory saxParserFactory; + + public loadXml() { + saxParserFactory = SAXParserFactory.newInstance(); + jungle = new DefaultJungle(null, "jungle", new DefaultTreeEditor(new DefaultTraverser())); + } + + private JungleTree putTestDataCreate(String xmlName, JungleTree tree) throws FileNotFoundException, + SAXException, IOException, ParserConfigurationException { + SAXParser saxParser = saxParserFactory.newSAXParser(); + ReadXmlPutAttributeCreateIndex readXmlHandler = new ReadXmlPutAttributeCreateIndex(tree); + saxParser.parse(new FileInputStream("xml/" + xmlName), readXmlHandler); + JungleTree newTree = readXmlHandler.getTree(); + + return newTree; + + } + + private JungleTree createNodeTestData(String xmlName) throws FileNotFoundException, SAXException, + IOException, ParserConfigurationException { + SAXParser saxParser = saxParserFactory.newSAXParser(); + JungleTree tree = jungle.createNewTree(xmlName); + ReadXmlNodeCreateIndexHandler readXmlHandler = new ReadXmlNodeCreateIndexHandler(tree); + saxParser.parse(new FileInputStream("xml/" + xmlName), readXmlHandler); + JungleTree nodeTree = readXmlHandler.getTree(); + JungleTree newTree = putTestDataCreate(xmlName, nodeTree); + return newTree; + } + + public JungleTree loadTestDataCreateIndex(String xmlName) throws FileNotFoundException, SAXException, IOException, ParserConfigurationException{ + JungleTree newTree = createNodeTestData(xmlName); + return newTree; + } + + public JungleTree loadTestData(String xmlName) throws FileNotFoundException, SAXException, IOException, + ParserConfigurationException { + SAXParser saxParser = saxParserFactory.newSAXParser(); + JungleTree tree = jungle.createNewTree(xmlName); + ReadXmlHandler readXmlHandler = new ReadXmlHandler(tree); + saxParser.parse(new FileInputStream("xml/" + xmlName), readXmlHandler); + JungleTree newTree = readXmlHandler.getTree(); + + return newTree; + + } + +} diff -r 095813055f19 -r ed831b2fc156 src/main/java/jp/ac/u_ryukyu/cr/ie/tatsuki/bbs/JuGrix.java --- a/src/main/java/jp/ac/u_ryukyu/cr/ie/tatsuki/bbs/JuGrix.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/cr/ie/tatsuki/bbs/JuGrix.java Fri Nov 07 02:20:07 2014 +0900 @@ -5,6 +5,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader.loadXml; import fj.Ord; import fj.P2; import fj.data.TreeMap; @@ -23,13 +24,23 @@ JungleTree roleTree; JungleTree rdeTree; - public JuGrix() { + public JuGrix(boolean index) { + try { loadXml reader = new loadXml(); - personTree = reader.loadTestDataCreateIndex("Person.xml"); - organizationTree = reader.loadTestDataCreateIndex("Organization.xml"); - roleTree = reader.loadTestDataCreateIndex("Role.xml"); - rdeTree = reader.loadTestDataCreateIndex("RoleDescriptionElement.xml"); + + if (index == true) { + personTree = reader.loadTestDataCreateIndex("Person.xml"); + organizationTree = reader.loadTestDataCreateIndex("Organization.xml"); + roleTree = reader.loadTestDataCreateIndex("Role.xml"); + rdeTree = reader.loadTestDataCreateIndex("RoleDescriptionElement.xml"); + } else { + personTree = reader.loadTestData("Person.xml"); + organizationTree = reader.loadTestData("Organization.xml"); + roleTree = reader.loadTestData("Role.xml"); + rdeTree = reader.loadTestData("RoleDescriptionElement.xml"); + } + } catch (Exception e) { e.printStackTrace(); } @@ -111,6 +122,9 @@ public boolean filter(String orgId, LinkedList roleIds) { if (roleIds == null) return true; + + if (roleIds.isEmpty()) + return true; InterfaceTraverser orgTraverser = organizationTree.getTraverser(); @@ -131,27 +145,27 @@ if (!orgNodeIterator.hasNext()) return false; - Pair searchNode = orgNodeIterator.next(); + Pair searchNodePair = orgNodeIterator.next(); for (String id : roleIds) { Pattern personPattern = Pattern.compile("r:"); Matcher personMacher = personPattern.matcher(id); if (personMacher.find()) { - if (!roleFilter(id, searchNode)) + if (roleFilter(id, searchNodePair)) return false; } Pattern organizationPattern = Pattern.compile("rde:"); Matcher organizationMacher = organizationPattern.matcher(id); if (organizationMacher.find()) { - if (!rdeFilter(id, searchNode)) + if (!rdeFilter(id, searchNodePair)) return false; } } return true; } - private boolean rdeFilter(String id, Pair targetNode) { + private boolean rdeFilter(String id, Pair searchNodePair) { InterfaceTraverser orgTraverser = organizationTree.getTraverser(); Iterator> pairIdIterator = orgTraverser.findInSubTree((TreeNode node) -> { @@ -164,7 +178,7 @@ if (roleId != null) return true; return false; - }, targetNode, "element", "roleRefId"); + }, searchNodePair, "element", "roleRefId"); TreeMap idMap = TreeMap.empty(Ord.stringOrd); for (; pairIdIterator.hasNext();) { @@ -177,7 +191,6 @@ for (; ids.hasNext();) { String roleId = ids.next()._1(); - Iterator> roleNodeIterator = roleTraverser.find((TreeNode node) -> { String element = node.getAttributes().getString("element"); if (element == null) @@ -191,9 +204,9 @@ return true; return false; }, "id", roleId); - // -----------------------------------------bug------------------------------------------ for (; roleNodeIterator.hasNext();) { + Pair rolePair = roleNodeIterator.next(); Iterator> rdeNodeIterator = roleTraverser.findInSubTree((TreeNode node) -> { String elementName = node.getAttributes().getString("element"); if (elementName == null) @@ -208,7 +221,7 @@ if (personMacher.find()) return true; return false; - }, roleNodeIterator.next(), "text", "id"); + }, rolePair, "text", "id"); if (!rdeNodeIterator.hasNext()) return false; @@ -218,7 +231,8 @@ return true; } - public boolean roleFilter(String id, Pair orgPathNodePair) { + public boolean roleFilter(String id, Pair searchNodePair) { + //System.out.println(searchNodePair.getAttributes().getString("id")); InterfaceTraverser orgTraverser = organizationTree.getTraverser(); Iterator> pairIdIterator = orgTraverser.findInSubTree((TreeNode node) -> { @@ -233,13 +247,13 @@ if (roleId.equals(id)) return true; return false; - }, orgPathNodePair, "text", id); + }, searchNodePair, "text", id); if (pairIdIterator.hasNext()) { System.out.println(pairIdIterator.next().left().getAttributes().getString("text")); - return true; + return false; } - return false; + return true; } public Iterator roleIds(String id) { @@ -292,7 +306,6 @@ return false; }, searchTargetPair, "element", "roleRefId"); - for (; pairIdIterator.hasNext();) { Pair idNodePath = pairIdIterator.next(); String attribute = idNodePath.left().getAttributes().getString("text"); @@ -305,7 +318,7 @@ if (attribute != null) { ids.add(attribute); - //System.out.println("-------------------------" + attribute + "-------------------------"); + System.out.println("-------------------------" + attribute + "-------------------------"); } } } @@ -315,34 +328,46 @@ public Iterator competentRoleId(String personId) { InterfaceTraverser ifTraverser = personTree.getTraverser(); - Iterator> pairPersonIterator = searchPerson(personId, ifTraverser); + Iterator> pairPersonIterator = ifTraverser.find((TreeNode node) -> { + String nodeElement = node.getAttributes().getString("element"); + if (nodeElement == null) + return false; + if (!nodeElement.equals("Person")) + return false; + String nodeId = node.getAttributes().getString("Person-id"); + if (nodeId == null) + return false; + if (nodeId.equals(personId)) + return true; + return false; + }, "Person-id", personId); if (!pairPersonIterator.hasNext()) return new NullIterator(); - Pair personPathNodePair = pairPersonIterator.next(); - TreeNode person = personPathNodePair.left(); - + Pair person = pairPersonIterator.next(); + Iterator> targetPairIterator = ifTraverser.findInSubTree((TreeNode node) -> { String nodeElement = node.getAttributes().getString("element"); if (nodeElement == null) return false; if (!nodeElement.equals("priority")) return false; - String priority = node.getAttributes().getString("text"); + String priority = node.getAttributes().getString("text-priority"); if (priority == null) return false; if (priority.equals("0")) return true; return false; - }, personPathNodePair, "text", "0"); + }, person, "text-priority", "0"); LinkedList idList = new LinkedList(); for (; targetPairIterator.hasNext();) { NodePath searchPath = targetPairIterator.next().right(); Pair searchPair = searchPath.last(); NodePath targetPath = searchPair.right().add(searchPair.left() + 1); - TreeNode targetNode = getTarget(person, targetPath); - String id = targetNode.getAttributes().getString("text"); + TreeNode targetNode = getTarget(personTree.getRootNode(), targetPath); + // TreeNode targetNode = getTarget(person.left(), targetPath); + String id = targetNode.getAttributes().getString("text-roleRefId"); idList.add(id); } @@ -356,9 +381,8 @@ if (!pairPersonIterator.hasNext()) return new NullIterator(); - - Pair personNodePathPair = pairPersonIterator.next(); - TreeNode person = personNodePathPair.left(); + Pair person = pairPersonIterator.next(); + Iterator> targetPairIterator = ifTraverser.findInSubTree((TreeNode node) -> { String nodeElement = node.getAttributes().getString("element"); if (nodeElement == null) @@ -371,15 +395,14 @@ if (!priority.equals("0")) return true; return false; - }, personNodePathPair, "text", "0"); + }, person, "text", "0"); - LinkedList idList = new LinkedList(); for (; targetPairIterator.hasNext();) { NodePath searchPath = targetPairIterator.next().right(); Pair searchPair = searchPath.last(); NodePath targetPath = searchPair.right().add(searchPair.left() + 1); - TreeNode targetNode = getTarget(person, targetPath); + TreeNode targetNode = getTarget(person.left(), targetPath); String id = targetNode.getAttributes().getString("text"); idList.add(id); } @@ -387,22 +410,6 @@ return idList.iterator(); } - private Iterator> searchPerson(String personId, InterfaceTraverser ifTraverser) { - Iterator> pairPersonIterator = ifTraverser.find((TreeNode node) -> { - String nodeElement = node.getAttributes().getString("element"); - if (nodeElement == null) - return false; - if (!nodeElement.equals("Person")) - return false; - String nodeId = node.getAttributes().getString("id"); - if (nodeId == null) - return false; - if (nodeId.equals(personId)) - return true; - return false; - }, "element", "Person"); - return pairPersonIterator; - } public Iterator deepPersonIds(String orgId, LinkedList filterIds) { @@ -450,26 +457,27 @@ } public Iterator childOrganizationIds(String orgId, LinkedList filterIds) { - if (!filter(orgId, filterIds)) - return new NullIterator(); + InterfaceTraverser orgTraverser = organizationTree.getTraverser(); + Iterator> pairPersonIterator = orgTraverser.find((TreeNode node) -> { String nodeElement = node.getAttributes().getString("element"); if (nodeElement == null) return false; if (!nodeElement.equals("Organization")) return false; - String nodeId = node.getAttributes().getString("id"); + String nodeId = node.getAttributes().getString("Organization-id"); if (nodeId == null) return false; if (nodeId.equals(orgId)) return true; return false; - }, "id", orgId); + }, "Organization-id", orgId); if (!pairPersonIterator.hasNext()) return new NullIterator(); - Pair personPathNodePair = pairPersonIterator.next(); + + Pair person = pairPersonIterator.next(); Iterator> chilrenOrgIdsIterator = orgTraverser.findInSubTree((TreeNode node) -> { String nodeElement = node.getAttributes().getString("element"); @@ -478,32 +486,32 @@ if (nodeElement.equals("childOrganizations")) return true; return false; - }, personPathNodePair, "element", "childOrganizations"); + }, person, "element", "childOrganizations"); if (!chilrenOrgIdsIterator.hasNext()) return new NullIterator(); - Pair chilerenOrgIdsPathNodePair = chilrenOrgIdsIterator.next(); + Pair chilerenOrgIds = chilrenOrgIdsIterator.next(); - Iterator> chilrenOrgIdIterator = orgTraverser.findInSubTreeAllValue((TreeNode node) -> { + Iterator> chilrenOrgIdIterator = orgTraverser.findInSubTree((TreeNode node) -> { String nodeElement = node.getAttributes().getString("element"); if (nodeElement == null) return false; if (!nodeElement.equals("organizationRefIds")) return false; - nodeElement = node.getAttributes().getString("text"); + nodeElement = node.getAttributes().getString("text-organizationRefIds"); if (nodeElement != null) return true; return false; - }, chilerenOrgIdsPathNodePair, "text"); + }, chilerenOrgIds, "text-organizationRefIds", null); LinkedList ids = new LinkedList(); for (; chilrenOrgIdIterator.hasNext();) { - Pair aaa = chilrenOrgIdIterator.next(); - String path = aaa.right().toString(); - String id = aaa.left().getAttributes().getString("text"); - ids.add(id); + String childrenOrgId = chilrenOrgIdIterator.next().left().getAttributes().getString("text-organizationRefIds"); + if (filter(childrenOrgId, filterIds)) + ids.add(childrenOrgId); + } return ids.iterator(); @@ -544,7 +552,6 @@ } public String rolePriority(String personId, String roleId) { - InterfaceTraverser personTraverser = personTree.getTraverser(); Iterator> personIterator = personTraverser.find((TreeNode node) -> { String element = node.getAttributes().getString("element"); @@ -563,9 +570,8 @@ if (!personIterator.hasNext()) return ""; - Pair targetPersonPathNodePair = personIterator.next(); - TreeNode targetPersonNode = targetPersonPathNodePair.left(); - + Pair targetNode = personIterator.next(); + Iterator> priorityIterator = personTraverser.findInSubTree((TreeNode node) -> { String element = node.getAttributes().getString("element"); if (element == null) @@ -578,14 +584,14 @@ if (compareRoleId.equals(roleId)) return true; return false; - }, targetPersonPathNodePair, "element", "roleRefId"); + }, targetNode, "element", "roleRefId"); for (; priorityIterator.hasNext();) { Pair priorityPair = priorityIterator.next(); NodePath roleNodePath = priorityPair.right(); Pair last = roleNodePath.last(); NodePath priorityNodePath = last.right().add(last.left() - 1); - TreeNode priorityNode = getTarget(targetPersonNode, priorityNodePath); + TreeNode priorityNode = getTarget(targetNode.left(), priorityNodePath); if (priorityNode.getAttributes().getString("element").equals("priority")) return priorityNode.getAttributes().getString("text"); } @@ -616,6 +622,8 @@ if (!orgIterator.hasNext()) return new LinkedList(); + Pair orgNode = orgIterator.next(); + Iterator> parentOrgIterator = orgTraverser.findInSubTree((TreeNode node) -> { String element = node.getAttributes().getString("element"); if (element == null) @@ -623,12 +631,12 @@ if (element.equals("parentOrganizations")) return true; return false; - }, orgIterator.next(), "element", "parentOrganizations"); + }, orgNode, "element", "parentOrganizations"); LinkedList parentIds = new LinkedList(); for (; parentOrgIterator.hasNext();) { - Pair parentOrgPathNodePair = parentOrgIterator.next(); + Pair parentOrgNode = parentOrgIterator.next(); Iterator> parentNodeIterator = orgTraverser.findInSubTree((TreeNode node) -> { String element = node.getAttributes().getString("element"); @@ -640,7 +648,7 @@ if (parentId != null) return true; return false; - }, parentOrgPathNodePair, "element", "organizationRefId"); + }, parentOrgNode, "element", "organizationRefId"); for (; parentNodeIterator.hasNext();) { String parentId = parentNodeIterator.next().left().getAttributes().getString("text"); @@ -730,22 +738,6 @@ } public Iterator roleDescriptionElementIds(String id, LinkedList filterIds) { - Pattern personPattern = Pattern.compile("p:"); - Matcher personMacher = personPattern.matcher(id); - if (personMacher.find()) { - return searchRoleIds(personTree, id, "Person"); - } - - Pattern organizationPattern = Pattern.compile("o:"); - Matcher organizationMacher = organizationPattern.matcher(id); - if (organizationMacher.find()) { - return _roleDescriptionElementIds(id, filterIds); - } - - return null; - } - - public Iterator _roleDescriptionElementIds(String id, LinkedList filterIds) { Iterator orgIds = deepParentOrganizationIdsPlus(id, filterIds); @@ -789,6 +781,7 @@ if (!roleIterator.hasNext()) return ""; + Pair roleNode = roleIterator.next(); Iterator> rdeIterator = traverser.findInSubTree((TreeNode node) -> { String element = node.getAttributes().getString("element"); @@ -800,7 +793,7 @@ if (rde != null) return true; return false; - }, roleIterator.next(), "element", "roleDescriptionElementRefIds"); + }, roleNode, "element", "roleDescriptionElementRefIds"); if (!rdeIterator.hasNext()) return ""; diff -r 095813055f19 -r ed831b2fc156 src/main/java/jp/ac/u_ryukyu/cr/ie/tatsuki/bbs/loadXml.java --- a/src/main/java/jp/ac/u_ryukyu/cr/ie/tatsuki/bbs/loadXml.java Wed Oct 29 15:48:19 2014 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -package jp.ac.u_ryukyu.cr.ie.tatsuki.bbs; - -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; - -import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; - -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.CreateBoardMessageServlet; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; - -import org.xml.sax.SAXException; - -import ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader.ReadXmlHandler; -import ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader.ReadXmlNodeCreateIndexHandler; -import ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader.ReadXmlPutAttributeCreateIndex; - -public class loadXml { - - Jungle jungle; - SAXParserFactory saxParserFactory; - - public loadXml() { - saxParserFactory = SAXParserFactory.newInstance(); - jungle = new DefaultJungle(null, "jungle", new DefaultTreeEditor(new DefaultTraverser())); - } - - private JungleTree putTestDataCreate(String xmlName, JungleTree tree) throws FileNotFoundException, - SAXException, IOException, ParserConfigurationException { - SAXParser saxParser = saxParserFactory.newSAXParser(); - ReadXmlPutAttributeCreateIndex readXmlHandler = new ReadXmlPutAttributeCreateIndex(tree); - saxParser.parse(new FileInputStream("xml/" + xmlName), readXmlHandler); - JungleTree newTree = readXmlHandler.getTree(); - - return newTree; - - } - - private JungleTree createNodeTestData(String xmlName) throws FileNotFoundException, SAXException, - IOException, ParserConfigurationException { - SAXParser saxParser = saxParserFactory.newSAXParser(); - JungleTree tree = jungle.createNewTree(xmlName); - ReadXmlNodeCreateIndexHandler readXmlHandler = new ReadXmlNodeCreateIndexHandler(tree); - saxParser.parse(new FileInputStream("xml/" + xmlName), readXmlHandler); - JungleTree nodeTree = readXmlHandler.getTree(); - JungleTree newTree = putTestDataCreate(xmlName, nodeTree); - return newTree; - } - - public JungleTree loadTestDataCreateIndex(String xmlName) throws FileNotFoundException, SAXException, IOException, ParserConfigurationException{ - JungleTree newTree = createNodeTestData(xmlName); - return newTree; - } - - public JungleTree loadTestData(String xmlName) throws FileNotFoundException, SAXException, IOException, - ParserConfigurationException { - SAXParser saxParser = saxParserFactory.newSAXParser(); - JungleTree tree = jungle.createNewTree(xmlName); - ReadXmlHandler readXmlHandler = new ReadXmlHandler(tree); - saxParser.parse(new FileInputStream("xml/" + xmlName), readXmlHandler); - JungleTree newTree = readXmlHandler.getTree(); - - return newTree; - - } - -} diff -r 095813055f19 -r ed831b2fc156 src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/PersonIdsTest.java --- a/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/PersonIdsTest.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/PersonIdsTest.java Fri Nov 07 02:20:07 2014 +0900 @@ -4,12 +4,13 @@ import java.util.LinkedList; import jp.ac.u_ryukyu.cr.ie.tatsuki.bbs.JuGrix; -import jp.ac.u_ryukyu.cr.ie.tatsuki.bbs.loadXml; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; import junit.framework.Assert; import org.junit.Test; +import ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader.loadXml; + public class PersonIdsTest { @Test diff -r 095813055f19 -r ed831b2fc156 src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/childOrganizationIds.java --- a/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/childOrganizationIds.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/childOrganizationIds.java Fri Nov 07 02:20:07 2014 +0900 @@ -1,6 +1,7 @@ package jp.ac.u_ryukyu.cr.ie.tatsuki.functionTest; import java.util.Iterator; +import java.util.LinkedList; import org.junit.Assert; import org.junit.Test; @@ -11,11 +12,19 @@ @Test public void childOrganizationIdsTest(){ - JuGrix jugrix = new JuGrix(); - Iterator ids = jugrix.childOrganizationIds("o:2", null); + JuGrix jugrix = new JuGrix(false); + LinkedList list = new LinkedList(); + Iterator ids = jugrix.childOrganizationIds("o:2", list); Assert.assertTrue(ids.hasNext()); Assert.assertEquals(ids.next(),"o:3"); - Assert.assertEquals(ids.next(),"o:99"); + Assert.assertEquals(ids.next(),"o:9"); + + JuGrix indexJugrix = new JuGrix(true); + ids = indexJugrix.childOrganizationIds("o:2", list); + + Assert.assertTrue(ids.hasNext()); + Assert.assertEquals(ids.next(),"o:3"); + Assert.assertEquals(ids.next(),"o:9"); } } diff -r 095813055f19 -r ed831b2fc156 src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/competentRoleIdTest.java --- a/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/competentRoleIdTest.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/competentRoleIdTest.java Fri Nov 07 02:20:07 2014 +0900 @@ -11,7 +11,7 @@ @Test public void competentRoleIdTest(){ - JuGrix jugrix = new JuGrix(); + JuGrix jugrix = new JuGrix(false); Iterator roleIds = jugrix.competentRoleId("p:1"); Assert.assertTrue(roleIds.hasNext()); Assert.assertEquals(roleIds.next(), "r:10"); diff -r 095813055f19 -r ed831b2fc156 src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/isActiveTest.java --- a/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/isActiveTest.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/functionTest/isActiveTest.java Fri Nov 07 02:20:07 2014 +0900 @@ -10,7 +10,6 @@ import javax.xml.parsers.SAXParserFactory; import jp.ac.u_ryukyu.cr.ie.tatsuki.bbs.JuGrix; -import jp.ac.u_ryukyu.cr.ie.tatsuki.bbs.loadXml; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; @@ -22,6 +21,7 @@ import org.xml.sax.SAXException; import ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader.ReadXmlHandler; +import ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader.loadXml; public class isActiveTest { diff -r 095813055f19 -r ed831b2fc156 src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/xmlReadTest/ReadXmlTest.java --- a/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/xmlReadTest/ReadXmlTest.java Wed Oct 29 15:48:19 2014 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/cr/ie/tatsuki/xmlReadTest/ReadXmlTest.java Fri Nov 07 02:20:07 2014 +0900 @@ -11,7 +11,7 @@ @Test public void Readml(){ long t1 = System.currentTimeMillis(); - JuGrix jugrix = new JuGrix(); + JuGrix jugrix = new JuGrix(true); long t2 = System.currentTimeMillis(); System.out.println(t2 - t1 + "s"); }