diff src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle-network/transaction/NetworkDefaultJungleTree.cs @ 12:b71d9ea6bd8e

Add Network Operation Class. this codes can not test yet.
author Kazuma
date Sun, 23 Oct 2016 12:25:57 +0900
parents abe0c247f5a5
children
line wrap: on
line diff
--- a/src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle-network/transaction/NetworkDefaultJungleTree.cs	Sun Oct 23 07:47:02 2016 +0900
+++ b/src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle-network/transaction/NetworkDefaultJungleTree.cs	Sun Oct 23 12:25:57 2016 +0900
@@ -1,83 +1,79 @@
-using UnityEngine;
-using System.Collections;
-
-public class NetworkDefaultJungleTree : JungleTree {
-
-	private readonly AtomicReference<TreeContext> Repository;
-	private readonly string Uuid;
-	private readonly string TreeName;
-	private readonly ChangeListWriter Writer;
-	private readonly TreeEditor Editor;
-
-	public NetworkDefaultJungleTree(string name, TreeContext tc, string uid, ChangeListWriter writer, TreeEditor edit) {
-		this.TreeName   = name;
-		this.Repository = new AtomicReference<TreeContext>(tc);
-		this.Uuid       = uid;
-		this.Writer     = writer;
-		this.Editor     = edit;
-	}
-
-	public JungleTreeEditor getTreeEditor() {
-		TreeContext tc = Repository.Get();
-		NetworkTransactionManager txManager = new NetworkTransactionManager(this.TreeName, this.Writer, tc, this.Repository, this.Uuid);
-		TreeNode root = tc.getRoot();
-		return new NetworkDefaultJungleTreeEditor(this.TreeName, root, txManager, this.Editor);
-	}
-
-	public JungleTreeEditor getLocalTreeEditor () {
-		TreeContext tc = this.Repository.Get();
-		NetworkTransactionManager txManager = new NetworkTransactionManager(this.TreeName, this.Writer, tc, this.Repository, this.Uuid);
-		TreeNode root = tc.getRoot();
-		return NetworkDefaultJungleTreeEditor.NewLocalTreeEditor(this.TreeName, root, txManager, this.Editor);
-	}
-
-	public TreeNode getRootNode () {
-		TreeContext tc = this.Repository.Get();
-		return tc.getRoot();
-	}
-
-	public long revision () {
-		return 0;
-	}
-
-	public Either<Error, JungleTree> getOldTree (long rev) {
-		TreeContext tc = this.Repository.Get();
-		while(tc.getRevision() != rev) { // If I mistake this code, change this code.
-			tc = tc.prev();
-			if (tc == null) {
-				return DefaultEither<Error, JungleTree>.newA(GetOldTreeError.OLD_TREE_NOT_FOUND);
-			}
-		}
-		string oldTreeUuid = this.Uuid + revision().ToString();
-		JungleTree oldTree = new DefaultJungleTree(tc, oldTreeUuid, this.Writer, this.Editor);
-		return DefaultEither<Error, JungleTree>.newB(oldTree);
-	}
-
-	public TreeMap<string, TreeMap<string, List<TreeNode>>> getIndex () {
-		TreeContext tc = this.Repository.Get();
-		return tc.getIndex();
-	}
-
-//	public InterfaceTraverser getTraverser (bool useIndex) {
-//		TreeMap<string, TreeMap<string, List<TreeNode>>> index = getIndex();
-//	}
-
-	public Either<Error, TreeNode> getNodeOfPath (NodePath path) {
-		TreeNode node = this.Repository.Get().getRoot();
-		foreach(var num in path) {
-			if (num == -1) {
-				continue;
-			}
-			Either<Error, TreeNode> either = node.getChildren().at(num);
-			if (either.isA()){
-				return either;
-			}
-			node = either.b();
-		}
-		return DefaultEither<Error, TreeNode>.newB(node);
-	}
-
-	public void setBufferSize (int num) {
-
-	}
-}
+using UnityEngine;
+using System.Collections;
+
+public class NetworkDefaultJungleTree : JungleTree {
+
+	private readonly AtomicReference<TreeContext> Repository;
+	private readonly string Uuid;
+	private readonly string TreeName;
+	private readonly ChangeListWriter Writer;
+	private readonly TreeEditor Editor;
+
+	public NetworkDefaultJungleTree(string name, TreeContext tc, string uid, ChangeListWriter writer, TreeEditor edit) {
+		this.TreeName   = name;
+		this.Repository = new AtomicReference<TreeContext>(tc);
+		this.Uuid       = uid;
+		this.Writer     = writer;
+		this.Editor     = edit;
+	}
+
+	public JungleTreeEditor getTreeEditor() {
+		TreeContext tc = Repository.Get();
+		NetworkTransactionManager txManager = new NetworkTransactionManager(this.TreeName, this.Writer, tc, this.Repository, this.Uuid);
+		TreeNode root = tc.getRoot();
+		return new NetworkDefaultJungleTreeEditor(this.TreeName, root, txManager, this.Editor);
+	}
+
+	public JungleTreeEditor getLocalTreeEditor () {
+		TreeContext tc = this.Repository.Get();
+		NetworkTransactionManager txManager = new NetworkTransactionManager(this.TreeName, this.Writer, tc, this.Repository, this.Uuid);
+		TreeNode root = tc.getRoot();
+		return NetworkDefaultJungleTreeEditor.NewLocalTreeEditor(this.TreeName, root, txManager, this.Editor);
+	}
+
+	public TreeNode getRootNode () {
+		TreeContext tc = this.Repository.Get();
+		return tc.getRoot();
+	}
+
+	public long revision () {
+		return 0;
+	}
+
+	public Either<Error, JungleTree> getOldTree (long rev) {
+		TreeContext tc = this.Repository.Get();
+		while(tc.getRevision() != rev) { // If I mistake this code, change this code.
+			tc = tc.prev();
+			if (tc == null) {
+				return DefaultEither<Error, JungleTree>.newA(GetOldTreeError.OLD_TREE_NOT_FOUND);
+			}
+		}
+		string oldTreeUuid = this.Uuid + revision().ToString();
+		JungleTree oldTree = new DefaultJungleTree(tc, oldTreeUuid, this.Writer, this.Editor);
+		return DefaultEither<Error, JungleTree>.newB(oldTree);
+	}
+
+	public TreeMap<string, TreeMap<string, List<TreeNode>>> getIndex () {
+		TreeContext tc = this.Repository.Get();
+		return tc.getIndex();
+	}
+
+	public Either<Error, TreeNode> getNodeOfPath (NodePath path) {
+		TreeNode node = this.Repository.Get().getRoot();
+		foreach(var num in path) {
+			if (num == -1) {
+				continue;
+			}
+			Either<Error, TreeNode> either = node.getChildren().at(num);
+			if (either.isA()){
+				return either;
+			}
+			node = either.b();
+		}
+		return DefaultEither<Error, TreeNode>.newB(node);
+	}
+
+	public void setBufferSize (int num) {
+
+	}
+}