# HG changeset patch # User one # Date 1423535319 -32400 # Node ID 809f813d1083c4bc7ccbf4df420e9fe459c1d14b # Parent 624a7e6a3f753852a573cde1240a4b882461d170 minner change diff -r 624a7e6a3f75 -r 809f813d1083 build.gradle --- a/build.gradle Tue Jan 13 02:34:42 2015 +0900 +++ b/build.gradle Tue Feb 10 11:28:39 2015 +0900 @@ -14,6 +14,7 @@ compile "commons-collections:commons-collections:3.2.1" compile "org.apache.maven.surefire:surefire-junit4:2.13" compile "com.google.guava:guava:12.0" + compile fileTree(dir: 'lib', include: '*.jar') testCompile "junit:junit:4.7" } diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/AttributesContainer.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/AttributesContainer.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/AttributesContainer.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,6 +1,6 @@ -package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core; - -public interface AttributesContainer -{ - public Attributes getAttributes(); -} +//package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core; +// +//public interface AttributesContainer +//{ +// public Attributes getAttributes(); +//} diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/NodePath.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/NodePath.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/NodePath.java Tue Feb 10 11:28:39 2015 +0900 @@ -9,5 +9,4 @@ public NodePath tail(); public int size(); public Pair last(); - public boolean compare(NodePath path); } diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/DefaultNodePath.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/DefaultNodePath.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/DefaultNodePath.java Tue Feb 10 11:28:39 2015 +0900 @@ -87,7 +87,8 @@ }); } - +//PATHの一番後ろを取り除いたPATHを新しく作って返す +// EXAMPLE <0,0,3> → <0,0> @Override public NodePath tail() { List tail = path.reverse(); @@ -95,18 +96,4 @@ return new DefaultNodePath(tail); } - @Override - public boolean compare(NodePath targetPath) { - - if (targetPath.size() < path.length()) - return false; - - for (Integer currentNum : path) { - Pair currentTargetPathNumPair = targetPath.pop(); - targetPath = currentTargetPathNumPair.right(); - if (currentNum != currentTargetPathNumPair.left()) - return false; - } - return true; - } } diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/TreeNode.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/TreeNode.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/TreeNode.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,12 +1,9 @@ package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.AttributesContainer; -public interface TreeNode extends AttributesContainer -{ +public interface TreeNode{ public TreeNodeChildren getChildren(); - @Override public TreeNodeAttributes getAttributes(); public TreeNode createNewNode(); diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTransactionManager.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTransactionManager.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTransactionManager.java Tue Feb 10 11:28:39 2015 +0900 @@ -60,8 +60,7 @@ }; IndexManager indexManager = new IndexManager(repository.getReservation()); - InterfaceTraverser traverser = new InterfaceTraverser(_newRoot, indexManager, false); - System.out.println("not use Index"); + InterfaceTraverser traverser = new InterfaceTraverser(_newRoot, indexManager, true); traverser.createIndex(); Index index = traverser.getIndex(); ParentIndex parentIndex = traverser.getParentIndex(); diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNode.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNode.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNode.java Tue Feb 10 11:28:39 2015 +0900 @@ -6,14 +6,12 @@ import fj.data.List; import fj.data.TreeMap; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog; public class DefaultTreeNode implements TreeNode { //private final DefaultNode wrap; private List children; private TreeMap attrs; - private OperationLog log; private static final List NIL_LIST = List.nil(); private static final TreeMap NIL_MAP = TreeMap.empty(Ord.stringOrd); @@ -38,7 +36,7 @@ @Override public DefaultTreeNodeAttribute getAttributes() { - return new DefaultTreeNodeAttribute(children, attrs,log); + return new DefaultTreeNodeAttribute(children, attrs); } @Override diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNodeAttribute.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNodeAttribute.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNodeAttribute.java Tue Feb 10 11:28:39 2015 +0900 @@ -7,8 +7,6 @@ import fj.data.TreeMap; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNodeAttributes; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.DefaultOperationLog; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.NodeEditorError; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.DefaultEither; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; @@ -18,20 +16,12 @@ { public List children; public TreeMap attrs; - OperationLog log ; + public DefaultTreeNodeAttribute(List _children,TreeMap _attrs) { children = _children; attrs = _attrs; - log = new DefaultOperationLog(); - } - - public DefaultTreeNodeAttribute(List _children,TreeMap _attrs,OperationLog _log) - { - children = _children; - attrs = _attrs; - log = _log; } @Override diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNodeChildren.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNodeChildren.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNodeChildren.java Tue Feb 10 11:28:39 2015 +0900 @@ -47,6 +47,7 @@ public List getChildrenAsRawList(){ return children; } + @Override public Either addNewChildAt(int _pos) { diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/traverser/InterfaceTraverser.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/traverser/InterfaceTraverser.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/traverser/InterfaceTraverser.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,12 +1,7 @@ package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.io.PrintWriter; + import java.util.Iterator; - import fj.data.List; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.query.PathNodeIterator; diff -r 624a7e6a3f75 -r 809f813d1083 src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/store/index/ParentIndex.java --- a/src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/store/index/ParentIndex.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/store/index/ParentIndex.java Tue Feb 10 11:28:39 2015 +0900 @@ -14,8 +14,8 @@ private TreeMap parentIndex; public ParentIndex() { - Ord aaa = TreeMapOrd.treeNodeOrd; - parentIndex = TreeMap.empty(aaa); + System.out.println(System.getProperty("java.version")); + parentIndex = TreeMap.empty(TreeMapOrd.treeNodeOrd); } public ParentIndex(TreeMap parentIndex) { diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/AttributesContainerTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/AttributesContainerTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/AttributesContainerTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,22 +1,22 @@ -package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core; - -import org.junit.Assert; -import org.junit.Ignore; -import org.junit.Test; - -import junit.framework.TestCase; - -@Ignore -public abstract class AttributesContainerTest extends TestCase -{ - public abstract AttributesContainer instance(); - - @Test - public void testGetAttributes() - { - AttributesContainer instance = instance(); - Attributes attrs = instance.getAttributes(); - - Assert.assertNotNull(attrs); - } -} +//package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core; +// +//import org.junit.Assert; +//import org.junit.Ignore; +//import org.junit.Test; +// +//import junit.framework.TestCase; +// +//@Ignore +//public abstract class AttributesContainerTest extends TestCase +//{ +// public abstract AttributesContainer instance(); +// +// @Test +// public void testGetAttributes() +// { +// AttributesContainer instance = instance(); +// Attributes attrs = instance.getAttributes(); +// +// Assert.assertNotNull(attrs); +// } +//} diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/GetNodeOfPathTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/GetNodeOfPathTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/GetNodeOfPathTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -13,12 +13,8 @@ import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; import junit.framework.Assert; - import org.junit.Test; -import com.sun.corba.se.impl.orbutil.graph.Node; -import com.sun.org.apache.bcel.internal.generic.RETURN; - public class GetNodeOfPathTest { @Test diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/impl/clonable/DefaultTreeNodeTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/impl/clonable/DefaultTreeNodeTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/impl/clonable/DefaultTreeNodeTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,7 +1,5 @@ package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.impl.clonable; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.AttributesContainer; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.AttributesContainerTest; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; import junit.framework.Assert; import junit.framework.TestCase; @@ -12,7 +10,7 @@ public static TestSuite suite() { TestSuite suite = new TestSuite(); - suite.addTestSuite(AttributesContaierTestImpl.class); + //suite.addTestSuite(AttributesContaierTestImpl.class); //suite.addTestSuite(ParentTestImpl.class); return suite; } @@ -36,14 +34,14 @@ Assert.assertNotNull(node); } - public static class AttributesContaierTestImpl extends AttributesContainerTest - { - @Override - public AttributesContainer instance() - { - return DefaultTreeNodeTest.instance(); - } - } +// public static class AttributesContaierTestImpl extends AttributesContainerTest +// { +// @Override +// public AttributesContainer instance() +// { +// return DefaultTreeNodeTest.instance(); +// } +// } /*public static class ParentTestImpl extends ParentTest { diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/impl/clonable/NodePathCompareTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/impl/clonable/NodePathCompareTest.java Tue Jan 13 02:34:42 2015 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.impl.clonable; - -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; -import junit.framework.Assert; - -import org.junit.Test; - -public class NodePathCompareTest { - - @Test - public void NodePathCompare(){ - NodePath path = new DefaultNodePath(); - path = path.add(0).add(1).add(2); - System.out.println(path.toString()); - - NodePath comparePath1 = new DefaultNodePath(); - comparePath1 = comparePath1.add(0).add(1).add(2).add(3); - - NodePath comparePath2 = new DefaultNodePath(); - comparePath2 = comparePath2.add(0).add(1); - - NodePath comparePath3 = new DefaultNodePath(); - comparePath3 = comparePath3.add(1).add(1).add(2).add(3); - - Assert.assertTrue(path.compare(comparePath1)); - Assert.assertFalse(path.compare(comparePath2)); - Assert.assertFalse(path.compare(comparePath3)); - } -} diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/impl/node/DefaultNodeTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/impl/node/DefaultNodeTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/impl/node/DefaultNodeTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -5,8 +5,6 @@ import fj.Ord; import fj.data.List; import fj.data.TreeMap; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.AttributesContainer; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.AttributesContainerTest; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; import junit.framework.TestCase; @@ -22,7 +20,7 @@ public static TestSuite suite() { TestSuite suite = new TestSuite(); - suite.addTestSuite(DefaultNodeTest.AttributesContaierTestImpl.class); + //suite.addTestSuite(DefaultNodeTest.AttributesContaierTestImpl.class); //suite.addTestSuite(DefaultNodeTest.ParentTestImpl.class); return suite; } @@ -36,14 +34,14 @@ return node; } - public static class AttributesContaierTestImpl extends AttributesContainerTest - { - @Override - public AttributesContainer instance() - { - return DefaultNodeTest.instance(); - } - } +// public static class AttributesContaierTestImpl extends AttributesContainerTest +// { +// @Override +// public AttributesContainer instance() +// { +// return DefaultNodeTest.instance(); +// } +//// } /*public static class ParentTestImpl extends ParentTest { diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/AddChildrenIndexTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/AddChildrenIndexTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/AddChildrenIndexTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,105 +1,105 @@ -package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; - -import java.nio.ByteBuffer; -import java.util.Iterator; - -import org.junit.Test; -import org.junit.experimental.theories.suppliers.TestedOn; - -import fj.data.List; -import fj.data.Option; -import fj.data.TreeMap; -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.JungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.IndexTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; -import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index; -import junit.framework.Assert; - -public class AddChildrenIndexTest { - - @Test - public void DeleteChildrenTest() { - Jungle jungle = new DefaultJungle(null, "hogehoge", new DefaultTreeEditor(new DefaultTraverser())); - jungle.createNewTree("tree"); - JungleTree tree = jungle.getTreeByName("tree"); - createTree(tree); - tree.getRootNode(); - InterfaceTraverser ifTraverser = tree.getTraverser(true); - - Iterator pairIterator = ifTraverser.find((TreeNode node) -> { - ByteBuffer attribute = node.getAttributes().get(key); - if (attribute != null) { - byte[] byteAttribute = attribute.array(); - String str = new String(byteAttribute); - System.out.println("attribute = " + str); - return str.equals("<-1,0,1>"); - } - return false; - }, key, "<-1,0,1>"); - - for (; pairIterator.hasNext(); pairIterator.next()) { - - } - ifTraverser.commit(); - - JungleTreeEditor editor = tree.getTreeEditor(); - Either either = editor.addNewChildAt(new DefaultNodePath().add(0), 0); - either.b().success(); - - InterfaceTraverser newIfTraverser = tree.getTraverser(true); - Index newIndex = newIfTraverser.getIndex(); - Assert.assertEquals(newIndex.get(key,"<-1,0,1>").head().toString(), "<-1,0,2>"); - - } - - public static String key = "KEY"; - public static DefaultTreeNode factory = new DefaultTreeNode(); - - public void createTree(JungleTree tree) { - NodePath root = new DefaultNodePath(); - createChildren(tree, root, 0); - - for (int x = 0; x < 3; x++) { - createChildren(tree, root.add(0), x); - for (int y = 0; y < 3; y++) { - createChildren(tree, root.add(0).add(x), y); - } - } - - } - - public void createChildren(JungleTree tree, NodePath root, int num) { - JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成 - Either either = editor.addNewChildAt(root, num); // 新しく入れるところへのパス - if (either.isA()) { - Assert.fail(); - } - editor = either.b(); - either = editor.success(); - if (either.isA()) { - Assert.fail(); - } - NodePath childPath = root.add(num); - editor = tree.getTreeEditor(); - NodePath attribute = root.add(num); - System.out.println(attribute.toString()); - either = editor.putAttribute(childPath, key, ByteBuffer.wrap(attribute.toString().getBytes())); - if (either.isA()) { - Assert.fail(); - } - editor = either.b(); - either = editor.success(); - } -} +//package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; +// +//import java.nio.ByteBuffer; +//import java.util.Iterator; +// +//import org.junit.Test; +//import org.junit.experimental.theories.suppliers.TestedOn; +// +//import fj.data.List; +//import fj.data.Option; +//import fj.data.TreeMap; +//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.JungleTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.IndexTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; +//import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index; +//import junit.framework.Assert; +// +//public class AddChildrenIndexTest { +// +// @Test +// public void DeleteChildrenTest() { +// Jungle jungle = new DefaultJungle(null, "hogehoge", new DefaultTreeEditor(new DefaultTraverser())); +// jungle.createNewTree("tree"); +// JungleTree tree = jungle.getTreeByName("tree"); +// createTree(tree); +// tree.getRootNode(); +// InterfaceTraverser ifTraverser = tree.getTraverser(true); +// +// Iterator pairIterator = ifTraverser.find((TreeNode node) -> { +// ByteBuffer attribute = node.getAttributes().get(key); +// if (attribute != null) { +// byte[] byteAttribute = attribute.array(); +// String str = new String(byteAttribute); +// System.out.println("attribute = " + str); +// return str.equals("<-1,0,1>"); +// } +// return false; +// }, key, "<-1,0,1>"); +// +// for (; pairIterator.hasNext(); pairIterator.next()) { +// +// } +// ifTraverser.commit(); +// +// JungleTreeEditor editor = tree.getTreeEditor(); +// Either either = editor.addNewChildAt(new DefaultNodePath().add(0), 0); +// either.b().success(); +// +// InterfaceTraverser newIfTraverser = tree.getTraverser(true); +// Index newIndex = newIfTraverser.getIndex(); +// Assert.assertEquals(newIndex.get(key,"<-1,0,1>").head().toString(), "<-1,0,2>"); +// +// } +// +// public static String key = "KEY"; +// public static DefaultTreeNode factory = new DefaultTreeNode(); +// +// public void createTree(JungleTree tree) { +// NodePath root = new DefaultNodePath(); +// createChildren(tree, root, 0); +// +// for (int x = 0; x < 3; x++) { +// createChildren(tree, root.add(0), x); +// for (int y = 0; y < 3; y++) { +// createChildren(tree, root.add(0).add(x), y); +// } +// } +// +// } +// +// public void createChildren(JungleTree tree, NodePath root, int num) { +// JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成 +// Either either = editor.addNewChildAt(root, num); // 新しく入れるところへのパス +// if (either.isA()) { +// Assert.fail(); +// } +// editor = either.b(); +// either = editor.success(); +// if (either.isA()) { +// Assert.fail(); +// } +// NodePath childPath = root.add(num); +// editor = tree.getTreeEditor(); +// NodePath attribute = root.add(num); +// System.out.println(attribute.toString()); +// either = editor.putAttribute(childPath, key, ByteBuffer.wrap(attribute.toString().getBytes())); +// if (either.isA()) { +// Assert.fail(); +// } +// editor = either.b(); +// either = editor.success(); +// } +//} diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/AttributeIndexTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/AttributeIndexTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/AttributeIndexTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,65 +1,65 @@ -package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; - - - -import java.nio.ByteBuffer; - -import org.junit.Test; - -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle; -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; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.IndexJungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; -import junit.framework.Assert; -import fj.data.List; -import fj.data.Option; -import fj.data.TreeMap; - -public class AttributeIndexTest { - - @Test - public void PutAttributeIndexTest(){ - DefaultJungle jungle = new DefaultJungle(null,"hoge",new DefaultTraverser()); - JungleTree tree = jungle.createNewTree("fuga"); - IndexJungleTreeEditor editor = tree.getIndexTreeEditor(); - TreeMap>> emptyIndex = editor.getIndex(); - Assert.assertTrue(emptyIndex.isEmpty()); - NodePath path = new DefaultNodePath(); - Either either = editor.addNewChildAt(path, 0); - Assert.assertFalse(either.isA()); - - JungleTreeEditor editor2 = either.b(); - Either either2 = editor2.putAttribute(path.add(0),"key", ByteBuffer.wrap("test".toString().getBytes())); - Assert.assertFalse(either2.isA()); - JungleTreeEditor editor3 = either2.b(); - editor3 = editor3.success().b(); - - editor3.putAttribute(path.add(0),"key", ByteBuffer.wrap("tatsuki".toString().getBytes())).b().success().b(); - TreeNode targetNode = tree.getRootNode().getChildren().at(0).b(); - IndexJungleTreeEditor IndexEditor = tree.getIndexTreeEditor(); - TreeMap>> index = IndexEditor.getIndex(); - List NodeList = index.get("key").some().get("tatsuki").some(); - String attributeIndex = NodeList.head().getAttributes().getString("key"); - Assert.assertEquals(attributeIndex,"tatsuki"); - Assert.assertEquals(NodeList.head(),targetNode); - - JungleTreeEditor editor4 = tree.getIndexTreeEditor(); - Either either3 = editor4.deleteAttribute(path.add(0), "key").b().success(); - Assert.assertFalse(either3.isA()); - JungleTreeEditor editor5 = either3.b(); - editor5.success(); - - IndexJungleTreeEditor IndexEditor2 = tree.getIndexTreeEditor(); - TreeMap>> deleteIndexList = IndexEditor2.getIndex(); - Option>> deleteIndexOp = deleteIndexList.get("key"); - TreeMap> deleteIndex = deleteIndexOp.some(); - Assert.assertTrue(deleteIndex.get("test").some().isEmpty()); - Assert.assertTrue(deleteIndex.get("tatsuki").some().isEmpty()); - } -} +//package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; +// +// +// +//import java.nio.ByteBuffer; +// +//import org.junit.Test; +// +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle; +//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; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.IndexJungleTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; +//import junit.framework.Assert; +//import fj.data.List; +//import fj.data.Option; +//import fj.data.TreeMap; +// +//public class AttributeIndexTest { +// +// @Test +// public void PutAttributeIndexTest(){ +// DefaultJungle jungle = new DefaultJungle(null,"hoge",new DefaultTraverser()); +// JungleTree tree = jungle.createNewTree("fuga"); +// IndexJungleTreeEditor editor = tree.getIndexTreeEditor(); +// TreeMap>> emptyIndex = editor.getIndex(); +// Assert.assertTrue(emptyIndex.isEmpty()); +// NodePath path = new DefaultNodePath(); +// Either either = editor.addNewChildAt(path, 0); +// Assert.assertFalse(either.isA()); +// +// JungleTreeEditor editor2 = either.b(); +// Either either2 = editor2.putAttribute(path.add(0),"key", ByteBuffer.wrap("test".toString().getBytes())); +// Assert.assertFalse(either2.isA()); +// JungleTreeEditor editor3 = either2.b(); +// editor3 = editor3.success().b(); +// +// editor3.putAttribute(path.add(0),"key", ByteBuffer.wrap("tatsuki".toString().getBytes())).b().success().b(); +// TreeNode targetNode = tree.getRootNode().getChildren().at(0).b(); +// IndexJungleTreeEditor IndexEditor = tree.getIndexTreeEditor(); +// TreeMap>> index = IndexEditor.getIndex(); +// List NodeList = index.get("key").some().get("tatsuki").some(); +// String attributeIndex = NodeList.head().getAttributes().getString("key"); +// Assert.assertEquals(attributeIndex,"tatsuki"); +// Assert.assertEquals(NodeList.head(),targetNode); +// +// JungleTreeEditor editor4 = tree.getIndexTreeEditor(); +// Either either3 = editor4.deleteAttribute(path.add(0), "key").b().success(); +// Assert.assertFalse(either3.isA()); +// JungleTreeEditor editor5 = either3.b(); +// editor5.success(); +// +// IndexJungleTreeEditor IndexEditor2 = tree.getIndexTreeEditor(); +// TreeMap>> deleteIndexList = IndexEditor2.getIndex(); +// Option>> deleteIndexOp = deleteIndexList.get("key"); +// TreeMap> deleteIndex = deleteIndexOp.some(); +// Assert.assertTrue(deleteIndex.get("test").some().isEmpty()); +// Assert.assertTrue(deleteIndex.get("tatsuki").some().isEmpty()); +// } +//} diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/DeleteChildrenIndexTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/DeleteChildrenIndexTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/DeleteChildrenIndexTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,109 +1,109 @@ -package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; - -import java.nio.ByteBuffer; -import java.util.Iterator; - -import org.junit.Test; -import org.junit.experimental.theories.suppliers.TestedOn; - -import fj.data.List; -import fj.data.Option; -import fj.data.TreeMap; -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.JungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.IndexTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.IndexJungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; -import junit.framework.Assert; - -public class DeleteChildrenIndexTest { - - @Test - public void DeleteChildrenTest(){ - Jungle jungle = new DefaultJungle(null, "hogehoge",new DefaultTraverser()); - jungle.createNewTree("tree"); - JungleTree tree = jungle.getTreeByName("tree"); - createTree(tree); - tree.getRootNode(); - InterfaceTraverser ifTraverser = tree.getTraverser(); - - Iterator> pairIterator = ifTraverser.find((TreeNode node) -> { - ByteBuffer attribute = node.getAttributes().get(key); - if (attribute != null) { - byte[] byteAttribute = attribute.array(); - String str = new String(byteAttribute); - System.out.println("attribute = " + str); - return str.equals("<-1,0,1>"); - } - return false; - }, key, "<-1,0,1>"); - - for (;pairIterator.hasNext();pairIterator.next()) { - - } - //check index - ifTraverser.commitIndex(); - TreeMap>>> index = ifTraverser.getIndex(); - Assert.assertTrue(index.get(key).some().get("<-1,0,0>").isSome()); - - IndexJungleTreeEditor editor = tree.getIndexTreeEditor(); - Either either = editor.deleteChildAt(new DefaultNodePath().add(0), 0); - either.b().success(); - - InterfaceTraverser newIfTraverser = tree.getTraverser(); - TreeMap>>> newIndex = newIfTraverser.getIndex(); - Assert.assertEquals(newIndex.get(key).some().get("<-1,0,1>").some().head().right().toString(),"<-1,0,0>"); - - } - public static String key = "KEY"; - public static DefaultTreeNode factory = new DefaultTreeNode(); - - public void createTree(JungleTree tree) { - NodePath root = new DefaultNodePath(); - createChildren(tree, root, 0); - - for (int x = 0; x < 3; x++) { - createChildren(tree, root.add(0), x); - for (int y = 0; y < 3; y++) { - createChildren(tree, root.add(0).add(x), y); - } - } - - } - - public void createChildren(JungleTree tree, NodePath root, int num) { - JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成 - Either either = editor - .addNewChildAt(root, num); // 新しく入れるところへのパス - if (either.isA()) { - Assert.fail(); - } - editor = either.b(); - either = editor.success(); - if (either.isA()) { - Assert.fail(); - } - NodePath childPath = root.add(num); - editor = tree.getTreeEditor(); - NodePath attribute = root.add(num); - System.out.println(attribute.toString()); - either = editor.putAttribute(childPath, key, - ByteBuffer.wrap(attribute.toString().getBytes())); - if (either.isA()) { - Assert.fail(); - } - editor = either.b(); - either = editor.success(); - } -} +//package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; +// +//import java.nio.ByteBuffer; +//import java.util.Iterator; +// +//import org.junit.Test; +//import org.junit.experimental.theories.suppliers.TestedOn; +// +//import fj.data.List; +//import fj.data.Option; +//import fj.data.TreeMap; +//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.JungleTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.IndexTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.IndexJungleTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; +//import junit.framework.Assert; +// +//public class DeleteChildrenIndexTest { +// +// @Test +// public void DeleteChildrenTest(){ +// Jungle jungle = new DefaultJungle(null, "hogehoge",new DefaultTraverser()); +// jungle.createNewTree("tree"); +// JungleTree tree = jungle.getTreeByName("tree"); +// createTree(tree); +// tree.getRootNode(); +// InterfaceTraverser ifTraverser = tree.getTraverser(); +// +// Iterator> pairIterator = ifTraverser.find((TreeNode node) -> { +// ByteBuffer attribute = node.getAttributes().get(key); +// if (attribute != null) { +// byte[] byteAttribute = attribute.array(); +// String str = new String(byteAttribute); +// System.out.println("attribute = " + str); +// return str.equals("<-1,0,1>"); +// } +// return false; +// }, key, "<-1,0,1>"); +// +// for (;pairIterator.hasNext();pairIterator.next()) { +// +// } +// //check index +// ifTraverser.commitIndex(); +// TreeMap>>> index = ifTraverser.getIndex(); +// Assert.assertTrue(index.get(key).some().get("<-1,0,0>").isSome()); +// +// IndexJungleTreeEditor editor = tree.getIndexTreeEditor(); +// Either either = editor.deleteChildAt(new DefaultNodePath().add(0), 0); +// either.b().success(); +// +// InterfaceTraverser newIfTraverser = tree.getTraverser(); +// TreeMap>>> newIndex = newIfTraverser.getIndex(); +// Assert.assertEquals(newIndex.get(key).some().get("<-1,0,1>").some().head().right().toString(),"<-1,0,0>"); +// +// } +// public static String key = "KEY"; +// public static DefaultTreeNode factory = new DefaultTreeNode(); +// +// public void createTree(JungleTree tree) { +// NodePath root = new DefaultNodePath(); +// createChildren(tree, root, 0); +// +// for (int x = 0; x < 3; x++) { +// createChildren(tree, root.add(0), x); +// for (int y = 0; y < 3; y++) { +// createChildren(tree, root.add(0).add(x), y); +// } +// } +// +// } +// +// public void createChildren(JungleTree tree, NodePath root, int num) { +// JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成 +// Either either = editor +// .addNewChildAt(root, num); // 新しく入れるところへのパス +// if (either.isA()) { +// Assert.fail(); +// } +// editor = either.b(); +// either = editor.success(); +// if (either.isA()) { +// Assert.fail(); +// } +// NodePath childPath = root.add(num); +// editor = tree.getTreeEditor(); +// NodePath attribute = root.add(num); +// System.out.println(attribute.toString()); +// either = editor.putAttribute(childPath, key, +// ByteBuffer.wrap(attribute.toString().getBytes())); +// if (either.isA()) { +// Assert.fail(); +// } +// editor = either.b(); +// either = editor.success(); +// } +//} diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/IndexCommitTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/IndexCommitTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/IndexCommitTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,76 +1,46 @@ -package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; - -import java.util.Iterator; - -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.JungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.IndexTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; -import junit.framework.Assert; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; -import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index; - -import java.nio.ByteBuffer; - -import org.junit.Test; - -import fj.data.List; -import fj.data.Option; -import fj.data.TreeMap; - -public class IndexCommitTest { - - @Test - public void IndexCommitTest() throws InterruptedException { - - Jungle jungle = new DefaultJungle(null, "hogehoge",new DefaultTreeEditor(new DefaultTraverser())); - jungle.createNewTree("tree"); - JungleTree tree = jungle.getTreeByName("tree"); - createTree(tree); - tree.getRootNode(); - InterfaceTraverser ifTraverser = tree.getTraverser(); - - ifTraverser.find((TreeNode node) -> { - ByteBuffer attribute = node.getAttributes().get(key); - if (attribute != null) { - byte[] byteAttribute = attribute.array(); - String str = new String(byteAttribute); - System.out.println("attribute = " + str); - return str.equals("<-1,0,1>"); - } - return false; - }, key, "<-1,0,1>"); - - //check index - Index index = ifTraverser.getIndex(); - index.get(key,"<-1,0,1>"); - ifTraverser.commit(); - - JungleTree newTree = jungle.getTreeByName("tree"); - InterfaceTraverser newIfTraverser = newTree.getTraverser(); - Index newIndex = newIfTraverser.getIndex(); - newIndex.get(key,"<-1,0,1>"); - JungleTreeEditor editor = tree.getTreeEditor(); - Either either = editor.addNewChildAt(new DefaultNodePath(), 0); - editor = either.b(); - editor.success(); - - ifTraverser.commit(); -// Assert.assertTrue(newIndex.isEmpty()); +//package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; +// +//import java.util.Iterator; +// +//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.JungleTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.IndexTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; +//import junit.framework.Assert; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; +//import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index; +// +//import java.nio.ByteBuffer; +// +//import org.junit.Test; +// +//import fj.data.List; +//import fj.data.Option; +//import fj.data.TreeMap; +// +//public class IndexCommitTest { +// +// @Test +// public void IndexCommitTest() throws InterruptedException { // -// InterfaceTraverser ifTraverser1= tree.getTraverser(); +// Jungle jungle = new DefaultJungle(null, "hogehoge",new DefaultTreeEditor(new DefaultTraverser())); +// jungle.createNewTree("tree"); +// JungleTree tree = jungle.getTreeByName("tree"); +// createTree(tree); +// tree.getRootNode(); +// InterfaceTraverser ifTraverser = tree.getTraverser(); // -// ifTraverser1.find((TreeNode node) -> { +// ifTraverser.find((TreeNode node) -> { // ByteBuffer attribute = node.getAttributes().get(key); // if (attribute != null) { // byte[] byteAttribute = attribute.array(); @@ -80,60 +50,90 @@ // } // return false; // }, key, "<-1,0,1>"); -// -// ifTraverser1.commit(); -// JungleTree newTree2 = jungle.getTreeByName("tree"); -// InterfaceTraverser newIfTraverser2 = newTree2.getTraverser(); -// TreeMap>>> newIndex1 = newIfTraverser2.getIndex(); -// Assert.assertFalse(newIndex1.isEmpty()); - - } - - public boolean compare(TreeNode compareNode, String compareAttribute) { - String labName = compareNode.getAttributes().getString(key); - if (labName.equals(compareAttribute)) - return true; - return false; - } - - public static String key = "KEY"; - public static DefaultTreeNode factory = new DefaultTreeNode(); - - public void createTree(JungleTree tree) { - NodePath root = new DefaultNodePath(); - createChildren(tree, root, 0); - - for (int x = 0; x < 2; x++) { - createChildren(tree, root.add(0), x); - for (int y = 0; y < 2; y++) { - createChildren(tree, root.add(0).add(x), y); - } - } - - } - - public void createChildren(JungleTree tree, NodePath root, int num) { - JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成 - Either either = editor - .addNewChildAt(root, num); // 新しく入れるところへのパス - if (either.isA()) { - Assert.fail(); - } - editor = either.b(); - either = editor.success(); - if (either.isA()) { - Assert.fail(); - } - NodePath childPath = root.add(num); - editor = tree.getTreeEditor(); - NodePath attribute = root.add(num); - System.out.println(attribute.toString()); - either = editor.putAttribute(childPath, key, - ByteBuffer.wrap(attribute.toString().getBytes())); - if (either.isA()) { - Assert.fail(); - } - editor = either.b(); - either = editor.success(); - } -} +// +// //check index +// Index index = ifTraverser.getIndex(); +// index.get(key,"<-1,0,1>"); +// ifTraverser.commit(); +// +// JungleTree newTree = jungle.getTreeByName("tree"); +// InterfaceTraverser newIfTraverser = newTree.getTraverser(); +// Index newIndex = newIfTraverser.getIndex(); +// newIndex.get(key,"<-1,0,1>"); +// JungleTreeEditor editor = tree.getTreeEditor(); +// Either either = editor.addNewChildAt(new DefaultNodePath(), 0); +// editor = either.b(); +// editor.success(); +// +// ifTraverser.commit(); +//// Assert.assertTrue(newIndex.isEmpty()); +//// +//// InterfaceTraverser ifTraverser1= tree.getTraverser(); +//// +//// ifTraverser1.find((TreeNode node) -> { +//// ByteBuffer attribute = node.getAttributes().get(key); +//// if (attribute != null) { +//// byte[] byteAttribute = attribute.array(); +//// String str = new String(byteAttribute); +//// System.out.println("attribute = " + str); +//// return str.equals("<-1,0,1>"); +//// } +//// return false; +//// }, key, "<-1,0,1>"); +//// +//// ifTraverser1.commit(); +//// JungleTree newTree2 = jungle.getTreeByName("tree"); +//// InterfaceTraverser newIfTraverser2 = newTree2.getTraverser(); +//// TreeMap>>> newIndex1 = newIfTraverser2.getIndex(); +//// Assert.assertFalse(newIndex1.isEmpty()); +// +// } +// +// public boolean compare(TreeNode compareNode, String compareAttribute) { +// String labName = compareNode.getAttributes().getString(key); +// if (labName.equals(compareAttribute)) +// return true; +// return false; +// } +// +// public static String key = "KEY"; +// public static DefaultTreeNode factory = new DefaultTreeNode(); +// +// public void createTree(JungleTree tree) { +// NodePath root = new DefaultNodePath(); +// createChildren(tree, root, 0); +// +// for (int x = 0; x < 2; x++) { +// createChildren(tree, root.add(0), x); +// for (int y = 0; y < 2; y++) { +// createChildren(tree, root.add(0).add(x), y); +// } +// } +// +// } +// +// public void createChildren(JungleTree tree, NodePath root, int num) { +// JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成 +// Either either = editor +// .addNewChildAt(root, num); // 新しく入れるところへのパス +// if (either.isA()) { +// Assert.fail(); +// } +// editor = either.b(); +// either = editor.success(); +// if (either.isA()) { +// Assert.fail(); +// } +// NodePath childPath = root.add(num); +// editor = tree.getTreeEditor(); +// NodePath attribute = root.add(num); +// System.out.println(attribute.toString()); +// either = editor.putAttribute(childPath, key, +// ByteBuffer.wrap(attribute.toString().getBytes())); +// if (either.isA()) { +// Assert.fail(); +// } +// editor = either.b(); +// either = editor.success(); +// } +//} diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/ParentIndexTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/ParentIndexTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/ParentIndexTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,57 +1,57 @@ -package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; - -import java.nio.ByteBuffer; -import java.util.Iterator; - -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.JungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; -import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex; -import junit.framework.Assert; -import org.junit.Test; -import fj.data.Option; - -public class ParentIndexTest { - - @Test - public void testParentIndex() { - Jungle jungle = new DefaultJungle(null, "hogehoge", new DefaultTraverser()); - jungle.createNewTree("tree"); - JungleTree tree = jungle.getTreeByName("tree"); - JungleTreeEditor editor = tree.getIndexTreeEditor(); - DefaultNodePath path = new DefaultNodePath(); - editor = editor.addNewChildAt(path, 0).b(); - - for (int num = 0; num < 5; num++) { - editor = editor.addNewChildAt(path.add(0), num).b(); - editor = editor.putAttribute(path.add(0).add(num), "test", ByteBuffer.wrap("test".getBytes())).b(); - editor = editor.success().b(); - } - - ParentIndex parentIndex = tree.getParentIndex(); - TreeNode node = tree.getRootNode(); - for (int num = 0; node.getChildren().size() != 0; num++) { - Iterator children = node.getChildren().iterator(); - for (; children.hasNext();) { - TreeNode child = children.next(); - TreeNode parent = parentIndex.get(child).some(); - Assert.assertEquals(parent, node); - } - node = node.getChildren().at(num).b(); - } - - JungleTree oldTree = tree.getOldTree(tree.revision() - 1).b(); - TreeNode oldRoot = oldTree.getRootNode(); - TreeNode oldNode = oldRoot.getChildren().at(0).b(); - Option oldParentOp = parentIndex.get(oldNode); - Assert.assertTrue(oldParentOp.isNone()); - ParentIndex oldTreeParentIndex = oldTree.getParentIndex(); - oldParentOp = oldTreeParentIndex.get(oldNode); - Assert.assertTrue(oldParentOp.isSome()); - - } -} +//package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.index; +// +//import java.nio.ByteBuffer; +//import java.util.Iterator; +// +//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.JungleTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; +//import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex; +//import junit.framework.Assert; +//import org.junit.Test; +//import fj.data.Option; +// +//public class ParentIndexTest { +// +// @Test +// public void testParentIndex() { +// Jungle jungle = new DefaultJungle(null, "hogehoge", new DefaultTraverser()); +// jungle.createNewTree("tree"); +// JungleTree tree = jungle.getTreeByName("tree"); +// JungleTreeEditor editor = tree.getIndexTreeEditor(); +// DefaultNodePath path = new DefaultNodePath(); +// editor = editor.addNewChildAt(path, 0).b(); +// +// for (int num = 0; num < 5; num++) { +// editor = editor.addNewChildAt(path.add(0), num).b(); +// editor = editor.putAttribute(path.add(0).add(num), "test", ByteBuffer.wrap("test".getBytes())).b(); +// editor = editor.success().b(); +// } +// +// ParentIndex parentIndex = tree.getParentIndex(); +// TreeNode node = tree.getRootNode(); +// for (int num = 0; node.getChildren().size() != 0; num++) { +// Iterator children = node.getChildren().iterator(); +// for (; children.hasNext();) { +// TreeNode child = children.next(); +// TreeNode parent = parentIndex.get(child).some(); +// Assert.assertEquals(parent, node); +// } +// node = node.getChildren().at(num).b(); +// } +// +// JungleTree oldTree = tree.getOldTree(tree.revision() - 1).b(); +// TreeNode oldRoot = oldTree.getRootNode(); +// TreeNode oldNode = oldRoot.getChildren().at(0).b(); +// Option oldParentOp = parentIndex.get(oldNode); +// Assert.assertTrue(oldParentOp.isNone()); +// ParentIndex oldTreeParentIndex = oldTree.getParentIndex(); +// oldParentOp = oldTreeParentIndex.get(oldNode); +// Assert.assertTrue(oldParentOp.isSome()); +// +// } +//} diff -r 624a7e6a3f75 -r 809f813d1083 src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/query/SearchQueryTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/query/SearchQueryTest.java Tue Jan 13 02:34:42 2015 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/query/SearchQueryTest.java Tue Feb 10 11:28:39 2015 +0900 @@ -1,116 +1,116 @@ -package jp.ac.u_ryukyu.ie.cr.tatsuki.query; - -import java.nio.ByteBuffer; -import java.security.KeyStore.Entry.Attribute; -import java.util.Iterator; - -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungleTree; -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.JungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.IndexTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; -import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.query.PathNodeIndexIterator; - -import org.junit.Assert; -import org.junit.Test; - -import fj.data.List; -import fj.data.Option; -import fj.data.TreeMap; - -public class SearchQueryTest { - - @Test - public void SearchQueryTest() { - Jungle jungle = new DefaultJungle(null, "hogehoge",new DefaultTraverser()); - jungle.createNewTree("tree"); - JungleTree tree = jungle.getTreeByName("tree"); - createTree(tree); - tree.getRootNode(); - InterfaceTraverser ifTraverser = tree.getTraverser(); - TreeMap>>> cheackIndex = ifTraverser.getIndex(); - Assert.assertTrue(cheackIndex.isEmpty()); - - Iterator> searchNode = ifTraverser.find( - (TreeNode node) -> { - ByteBuffer attribute = node.getAttributes().get(key); - if(attribute != null){ - byte[] byteAttribute = attribute.array(); - String str = new String(byteAttribute); - System.out.println("attribute = " + str); - return str.equals("<-1,0,1>"); - } - return false; - } - ,key,"<-1,0,1>"); - - - while (searchNode.hasNext()){ - Assert.assertTrue(compare(searchNode.next().left(),"<-1,0,1>")); - } - - TreeMap>>> index = ifTraverser.getIndex(); - Option>>> opIndex = index.get(key); - Assert.assertTrue(!opIndex.isNone()); - TreeMap>> innerIndex = opIndex.some(); - Assert.assertTrue(!innerIndex.get("<-1,0,0>").isNone()); - } - - - public boolean compare(TreeNode compareNode, String compareAttribute) { - String labName = compareNode.getAttributes().getString(key); - if (labName.equals(compareAttribute)) - return true; - return false; - } - - public static String key = "KEY"; - public static DefaultTreeNode factory = new DefaultTreeNode(); - - public void createTree(JungleTree tree) { - NodePath root = new DefaultNodePath(); - createChildren(tree, root, 0); - - for (int x = 0; x < 2; x++) { - createChildren(tree, root.add(0), x); - for (int y = 0; y < 2; y++) { - createChildren(tree, root.add(0).add(x), y); - } - } - - } - - public void createChildren(JungleTree tree, NodePath root, int num) { - JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成 - Either either = editor.addNewChildAt(root,num); // 新しく入れるところへのパス - if (either.isA()) { - Assert.fail(); - } - editor = either.b(); - either = editor.success(); - if (either.isA()) { - Assert.fail(); - } - NodePath childPath = root.add(num); - editor = tree.getTreeEditor(); - NodePath attribute = root.add(num); - System.out.println(attribute.toString()); - either = editor.putAttribute(childPath, key,ByteBuffer.wrap(attribute.toString().getBytes())); - if (either.isA()) { - Assert.fail(); - } - editor = either.b(); - either = editor.success(); - } -} +//package jp.ac.u_ryukyu.ie.cr.tatsuki.query; +// +//import java.nio.ByteBuffer; +//import java.security.KeyStore.Entry.Attribute; +//import java.util.Iterator; +// +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungleTree; +//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.JungleTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.IndexTreeEditor; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; +//import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; +//import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.query.PathNodeIndexIterator; +// +//import org.junit.Assert; +//import org.junit.Test; +// +//import fj.data.List; +//import fj.data.Option; +//import fj.data.TreeMap; +// +//public class SearchQueryTest { +// +// @Test +// public void SearchQueryTest() { +// Jungle jungle = new DefaultJungle(null, "hogehoge",new DefaultTraverser()); +// jungle.createNewTree("tree"); +// JungleTree tree = jungle.getTreeByName("tree"); +// createTree(tree); +// tree.getRootNode(); +// InterfaceTraverser ifTraverser = tree.getTraverser(); +// TreeMap>>> cheackIndex = ifTraverser.getIndex(); +// Assert.assertTrue(cheackIndex.isEmpty()); +// +// Iterator> searchNode = ifTraverser.find( +// (TreeNode node) -> { +// ByteBuffer attribute = node.getAttributes().get(key); +// if(attribute != null){ +// byte[] byteAttribute = attribute.array(); +// String str = new String(byteAttribute); +// System.out.println("attribute = " + str); +// return str.equals("<-1,0,1>"); +// } +// return false; +// } +// ,key,"<-1,0,1>"); +// +// +// while (searchNode.hasNext()){ +// Assert.assertTrue(compare(searchNode.next().left(),"<-1,0,1>")); +// } +// +// TreeMap>>> index = ifTraverser.getIndex(); +// Option>>> opIndex = index.get(key); +// Assert.assertTrue(!opIndex.isNone()); +// TreeMap>> innerIndex = opIndex.some(); +// Assert.assertTrue(!innerIndex.get("<-1,0,0>").isNone()); +// } +// +// +// public boolean compare(TreeNode compareNode, String compareAttribute) { +// String labName = compareNode.getAttributes().getString(key); +// if (labName.equals(compareAttribute)) +// return true; +// return false; +// } +// +// public static String key = "KEY"; +// public static DefaultTreeNode factory = new DefaultTreeNode(); +// +// public void createTree(JungleTree tree) { +// NodePath root = new DefaultNodePath(); +// createChildren(tree, root, 0); +// +// for (int x = 0; x < 2; x++) { +// createChildren(tree, root.add(0), x); +// for (int y = 0; y < 2; y++) { +// createChildren(tree, root.add(0).add(x), y); +// } +// } +// +// } +// +// public void createChildren(JungleTree tree, NodePath root, int num) { +// JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成 +// Either either = editor.addNewChildAt(root,num); // 新しく入れるところへのパス +// if (either.isA()) { +// Assert.fail(); +// } +// editor = either.b(); +// either = editor.success(); +// if (either.isA()) { +// Assert.fail(); +// } +// NodePath childPath = root.add(num); +// editor = tree.getTreeEditor(); +// NodePath attribute = root.add(num); +// System.out.println(attribute.toString()); +// either = editor.putAttribute(childPath, key,ByteBuffer.wrap(attribute.toString().getBytes())); +// if (either.isA()) { +// Assert.fail(); +// } +// editor = either.b(); +// either = editor.success(); +// } +//}