changeset 316:a0529572fbcb

Path Convert magpack bug fix
author tatsuki
date Fri, 27 Jan 2017 01:09:43 +0900
parents b8ddf62689ee
children d6b81870216b
files src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/DefaultNodePath.java src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/NodePath.java src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/PathType.java src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/RedBlackTreeNodePath.java src/main/java/jp/ac/u_ryukyu/ie/cr/jungleNetwork/operations/NetworkNodePath.java src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/redblacktreenode/GetKeysTest.java src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/redblacktreenode/GetfilteringKeyTest.java src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/traverse/RedBlackInterfaceTraverserTest.java
diffstat 8 files changed, 30 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/DefaultNodePath.java	Fri Jan 27 00:45:01 2017 +0900
+++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/DefaultNodePath.java	Fri Jan 27 01:09:43 2017 +0900
@@ -118,12 +118,12 @@
     }
 
     @Override
-    public PathType getPathType() {
+    public int getPathType() {
         return PathType.Default;
     }
 
     @Override // Defultでは今の所使わない
-    public NodePath setType(PathType type) {
+    public NodePath setType(int type) {
         return null;
     }
 
--- a/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/NodePath.java	Fri Jan 27 00:45:01 2017 +0900
+++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/NodePath.java	Fri Jan 27 01:09:43 2017 +0900
@@ -15,6 +15,6 @@
     public NodePath addHead(int pos);
 	public String getKey();
 	public ByteBuffer getValue();
-	public PathType getPathType();
-	public NodePath setType(PathType type);
+	public int getPathType();
+	public NodePath setType(int type);
 }
--- a/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/PathType.java	Fri Jan 27 00:45:01 2017 +0900
+++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/PathType.java	Fri Jan 27 01:09:43 2017 +0900
@@ -1,5 +1,15 @@
 package jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath;
 
-public enum PathType {
-    Default,RedBlack,RedBlackNode,RedBlackAttribute
+import org.msgpack.annotation.Message;
+
+//enumで作るとmsgPackでイニシャライズ出来なかった
+@Message
+public class PathType {
+    public static final int Default = 0;
+
+    public static final int RedBlack = 1;
+
+    public static final int RedBlackNode = 2;
+
+    public static final int RedBlackAttribute = 3;
 }
--- a/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/RedBlackTreeNodePath.java	Fri Jan 27 00:45:01 2017 +0900
+++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/nodepath/RedBlackTreeNodePath.java	Fri Jan 27 01:09:43 2017 +0900
@@ -11,7 +11,7 @@
 
     private final String key;
     private final ByteBuffer value;
-    private final PathType type;
+    private final int type;
 
     public RedBlackTreeNodePath() {
         this.key = "default";
@@ -25,7 +25,7 @@
         this.type = PathType.RedBlack;
     }
 
-    private RedBlackTreeNodePath(String key, ByteBuffer value, PathType type) {
+    private RedBlackTreeNodePath(String key, ByteBuffer value, int type) {
         this.key = key;
         this.value = value;
         this.type = type;
@@ -42,12 +42,12 @@
     }
 
     @Override
-    public PathType getPathType() {
+    public int getPathType() {
         return type;
     }
 
     @Override
-    public NodePath setType(PathType type) {
+    public NodePath setType(int type) {
         return new RedBlackTreeNodePath(this.getKey(), this.getValue(), type);
     }
 
--- a/src/main/java/jp/ac/u_ryukyu/ie/cr/jungleNetwork/operations/NetworkNodePath.java	Fri Jan 27 00:45:01 2017 +0900
+++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/jungleNetwork/operations/NetworkNodePath.java	Fri Jan 27 01:09:43 2017 +0900
@@ -13,7 +13,7 @@
 @Message
 public class NetworkNodePath implements NodePath {
     LinkedList<Integer> path;
-    PathType type;
+    int type;
 
     public NetworkNodePath() {
         path = new LinkedList<Integer>();
@@ -29,7 +29,7 @@
         type = _p.getPathType();
     }
 
-    public NetworkNodePath(NodePath _p, PathType type) {
+    public NetworkNodePath(NodePath _p, int type) {
         path = new LinkedList<Integer>();
         for (Integer pos : _p) {
             path.add(pos);
@@ -115,12 +115,12 @@
     }
 
     @Override
-    public PathType getPathType() {
+    public int getPathType() {
         return PathType.Default;
     }
 
     @Override //ネットワークでは今のところ使わない
-    public NodePath setType(PathType type) {
+    public NodePath setType(int type) {
         return null;
     }
 }
--- a/src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/redblacktreenode/GetKeysTest.java	Fri Jan 27 00:45:01 2017 +0900
+++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/redblacktreenode/GetKeysTest.java	Fri Jan 27 01:09:43 2017 +0900
@@ -3,8 +3,8 @@
 import jp.ac.u_ryukyu.ie.cr.jungle.DefaultJungle;
 import jp.ac.u_ryukyu.ie.cr.jungle.Jungle;
 import jp.ac.u_ryukyu.ie.cr.jungle.core.Attributes;
-import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.DefaultNodePath;
 import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.NodePath;
+import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.RedBlackTreeNodePath;
 import jp.ac.u_ryukyu.ie.cr.jungle.transaction.editor.jungleTreeEditor.JungleTreeEditor;
 import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNode;
 import jp.ac.u_ryukyu.ie.cr.jungle.tree.JungleTree;
@@ -32,10 +32,9 @@
         }
         Jungle jungle = new DefaultJungle(null, "hogehoge");
         JungleTree tree = jungle.createNewRedBlackTree("TreeName", "balanceKey");
-        NodePath path = new DefaultNodePath();
-
         JungleTreeEditor editor = tree.getJungleTreeEditor();
         ByteBuffer value = ByteBuffer.wrap(("value").getBytes());
+        NodePath path = new RedBlackTreeNodePath(balanceKey,value);
         Either<Error, JungleTreeEditor> either = editor.addNewChildAndPutAttribute(path, 0, balanceKey, value); //ノードの追加
         Assert.assertFalse(either.isA());
         editor = either.b();
--- a/src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/redblacktreenode/GetfilteringKeyTest.java	Fri Jan 27 00:45:01 2017 +0900
+++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/redblacktreenode/GetfilteringKeyTest.java	Fri Jan 27 01:09:43 2017 +0900
@@ -3,8 +3,8 @@
 import jp.ac.u_ryukyu.ie.cr.jungle.DefaultJungle;
 import jp.ac.u_ryukyu.ie.cr.jungle.Jungle;
 import jp.ac.u_ryukyu.ie.cr.jungle.core.Attributes;
-import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.DefaultNodePath;
 import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.NodePath;
+import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.RedBlackTreeNodePath;
 import jp.ac.u_ryukyu.ie.cr.jungle.transaction.editor.jungleTreeEditor.JungleTreeEditor;
 import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNode;
 import jp.ac.u_ryukyu.ie.cr.jungle.tree.JungleTree;
@@ -39,7 +39,7 @@
 
         Jungle jungle = new DefaultJungle(null, "hogehoge");
         JungleTree tree = jungle.createNewRedBlackTree("TreeName", "balanceKey");
-        NodePath path = new DefaultNodePath();
+        NodePath path = new RedBlackTreeNodePath(balanceKey,ByteBuffer.wrap(("value").getBytes()));
 
         JungleTreeEditor editor = tree.getJungleTreeEditor();
         ByteBuffer value = ByteBuffer.wrap(("value").getBytes());
--- a/src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/traverse/RedBlackInterfaceTraverserTest.java	Fri Jan 27 00:45:01 2017 +0900
+++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/traverse/RedBlackInterfaceTraverserTest.java	Fri Jan 27 01:09:43 2017 +0900
@@ -4,8 +4,8 @@
 import jp.ac.u_ryukyu.ie.cr.jungle.Jungle;
 import jp.ac.u_ryukyu.ie.cr.jungle.persistent.NullJournal;
 import jp.ac.u_ryukyu.ie.cr.jungle.query.traverser.InterfaceTraverser;
-import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.DefaultNodePath;
 import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.NodePath;
+import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.RedBlackTreeNodePath;
 import jp.ac.u_ryukyu.ie.cr.jungle.transaction.editor.jungleTreeEditor.JungleTreeEditor;
 import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNode;
 import jp.ac.u_ryukyu.ie.cr.jungle.tree.JungleTree;
@@ -26,7 +26,7 @@
         jungle.createNewRedBlackTree("RedBlackTree", balanceKey);
         JungleTree tree = jungle.getTreeByName("RedBlackTree");
         JungleTreeEditor editor = tree.getJungleTreeEditor();
-        NodePath path = new DefaultNodePath();
+        NodePath path = new RedBlackTreeNodePath();
         for (int nodeCount = 0; nodeCount < 100; nodeCount++) {
             ByteBuffer value = ByteBuffer.wrap(("value" + nodeCount).getBytes());
             Either<Error,JungleTreeEditor> either = editor.addNewChildAndPutAttribute(path, 0, balanceKey, value);