changeset 43:12d87bb4b84d

modified LogUpdateCodeSegment
author one
date Fri, 12 Jul 2013 09:13:54 +0900
parents 4419ac56cbfd
children 9202247e6077
files src/alice/jungle/codesegment/LogUpdateCodeSegment.java src/alice/jungle/datasegment/store/operations/DefaultTreeOperationLogContainer.java src/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java src/alice/jungle/transaction/NetworkTransactionManager.java src/jungle/test/bbs/JungleManager.java src/jungle/test/bbs/NetworkJungleBulletinBoard.java
diffstat 6 files changed, 50 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/src/alice/jungle/codesegment/LogUpdateCodeSegment.java	Thu Jul 11 19:58:36 2013 +0900
+++ b/src/alice/jungle/codesegment/LogUpdateCodeSegment.java	Fri Jul 12 09:13:54 2013 +0900
@@ -39,10 +39,10 @@
 		} catch (IOException e) {
 			e.printStackTrace();
 		}
-		JungleManager jm = new JungleManager();
-		JungleTree tree = jm.getJungle().getTreeByName("boards");
+		//JungleManager jm = new JungleManager();
+		JungleTree tree = JungleManager.getJungle().getTreeByName("boards");
 		JungleTreeEditor editor = tree.getTreeEditor();
-		Either<Error, JungleTreeEditor> either = jm.edit(editor, log);
+		Either<Error, JungleTreeEditor> either = JungleManager.edit(editor, log);
 		if(either.isA()) {
 			throw new IllegalStateException();
 		}
--- a/src/alice/jungle/datasegment/store/operations/DefaultTreeOperationLogContainer.java	Thu Jul 11 19:58:36 2013 +0900
+++ b/src/alice/jungle/datasegment/store/operations/DefaultTreeOperationLogContainer.java	Fri Jul 12 09:13:54 2013 +0900
@@ -27,6 +27,8 @@
 	Value logValue;
 	String treeName;
 	String uuid;
+	String serverName;
+	long revision;
 	
 	public static void main(String[] args) throws IOException {
 		String key = "hoge";
@@ -98,6 +100,10 @@
 		treeName = _treeName;
 	}
 	
+	public String getTreeName() {
+		return treeName;
+	}
+	
 	public void setUUID(String _uuid) {
 		uuid = _uuid;
 	}
@@ -105,9 +111,21 @@
 	public String getUUID() {
 		return uuid;
 	}
+
+	public void setServerName(String _serverName) {
+		serverName = _serverName;
+	}
 	
-	public String getTreeName() {
-		return treeName;
+	public String getServerName() {
+		return serverName;
+	}
+	
+	public void setRevision(long _revision) {
+		revision = _revision;
+	}
+	
+	public long getRevision() {
+		return revision;
 	}
 	
 	public void unconvert(Iterable<TreeOperation> _log) throws IOException {
--- a/src/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java	Thu Jul 11 19:58:36 2013 +0900
+++ b/src/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java	Fri Jul 12 09:13:54 2013 +0900
@@ -141,7 +141,7 @@
 	@Override
 	public Node getRoot()
 	{
-		return (Node)root;
+		return root.getAsNode();
 	}
 	
 	public TreeOperationLog getTreeOperationLog() {
--- a/src/alice/jungle/transaction/NetworkTransactionManager.java	Thu Jul 11 19:58:36 2013 +0900
+++ b/src/alice/jungle/transaction/NetworkTransactionManager.java	Fri Jul 12 09:13:54 2013 +0900
@@ -74,7 +74,7 @@
 			return DefaultEither.newA((Error)new DefaultError());
 		}
 		try {
-			putDataSegment(uuid, treeName, list);
+			putDataSegment(uuid, treeName, serverName, list, nextRevision);
 		} catch (IOException e) {
 			e.printStackTrace();
 		}
@@ -83,14 +83,15 @@
 		return DefaultEither.newB(txManager);
 	}
 	
-	private void putDataSegment(String _uuid, String _treeName, Iterable<TreeOperation> _log) throws IOException {
+	private void putDataSegment(String _uuid, String _treeName, String _serverName, Iterable<TreeOperation> _log, long nextRevision) throws IOException {
 		DefaultTreeOperationLogContainer container = new DefaultTreeOperationLogContainer();
 		container.setTreeName(_treeName);
 		container.setUUID(_uuid);
+		container.setServerName(_serverName);
+		container.setRevision(nextRevision);
 		container.unconvert(_log);
 		NullCodeSegmentForUpdate cs = new NullCodeSegmentForUpdate();
 		cs.ods.put("local", "log", container);
-		
 	}
 
 	@Override
--- a/src/jungle/test/bbs/JungleManager.java	Thu Jul 11 19:58:36 2013 +0900
+++ b/src/jungle/test/bbs/JungleManager.java	Fri Jul 12 09:13:54 2013 +0900
@@ -18,22 +18,33 @@
 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
 
 public class JungleManager {
-	static Jungle jungle;
+	private static JungleManager jm;
+	private Jungle jungle;
+
+	private JungleManager(Jungle _jungle) {
+		jungle = _jungle;
+	}
 
 	public JungleManager(String _serverName) {
-		jungle = new NetworkDefaultJungle(null,"hoge",new DefaultTreeEditor(new DefaultTraverser()), _serverName);	
+		Jungle _j = new NetworkDefaultJungle(null,"hoge",new DefaultTreeEditor(new DefaultTraverser()), _serverName);	
+		jm = new JungleManager(_j);
 	}
 	
-	public Jungle getJungle() {
-		return jungle;
+	public static JungleManager init(String _serverName) {
+		jm = new JungleManager(_serverName);
+		return jm;
 	}
 	
-	public JungleTree createNewTree(String name) {
-		return jungle.createNewTree(name);		
+	public static Jungle getJungle() {
+		return jm.jungle;
+	}
+	
+	public static JungleTree createNewTree(String name) {
+		return jm.jungle.createNewTree(name);		
 	}
 
 	
-	public Either<Error, JungleTreeEditor> edit(JungleTreeEditor _editor ,TreeOperationLog _log) {
+	public static Either<Error, JungleTreeEditor> edit(JungleTreeEditor _editor ,TreeOperationLog _log) {
 		JungleTreeEditor editor = _editor;
 		Either<Error, JungleTreeEditor> either = null;
 		for (TreeOperation op : _log) { 
@@ -46,7 +57,7 @@
 		return either;
 	}
 	
-	private Either<Error, JungleTreeEditor> _edit(JungleTreeEditor editor,
+	private static Either<Error, JungleTreeEditor> _edit(JungleTreeEditor editor,
 			TreeOperation op) {
 		NodePath path = op.getNodePath();
 		NodeOperation nodeOp = op.getNodeOperation();
--- a/src/jungle/test/bbs/NetworkJungleBulletinBoard.java	Thu Jul 11 19:58:36 2013 +0900
+++ b/src/jungle/test/bbs/NetworkJungleBulletinBoard.java	Fri Jul 12 09:13:54 2013 +0900
@@ -25,10 +25,10 @@
 	private JungleManager jm;
 	private final Jungle jungle;
 	
-	public NetworkJungleBulletinBoard()
+	public NetworkJungleBulletinBoard(String _serverName)
 	{
-		jm = new JungleManager();
-		jungle = jm.getJungle();
+		jm = JungleManager.init(_serverName);
+		jungle = JungleManager.getJungle();
 		jungle.createNewTree("boards");
 	}