diff src/jungle/test/core/practice/LogSendTest.java @ 28:e968224ad0ce

add jungle.test.core.practice
author one
date Mon, 01 Jul 2013 19:14:24 +0900
parents
children 190f6a3bdab2
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/jungle/test/core/practice/LogSendTest.java	Mon Jul 01 19:14:24 2013 +0900
@@ -0,0 +1,47 @@
+package jungle.test.core.practice;
+
+import java.io.IOException;
+import java.nio.ByteBuffer;
+
+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.logger.TreeOperationLog;
+import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either;
+import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
+import jungle.test.codesegment.operation.JungleManager;
+import jungle.test.datasegment.store.operations.DefaultTreeOperationLogContainer;
+import jungle.test.transaction.NetworkDefaultJungleTreeEditor;
+
+public class LogSendTest {
+	
+	public static void main(String[] args) {
+		System.out.println("Start LogSendTest");
+		JungleManager jm = new JungleManager();
+		JungleTree tree = jm.createNewTree("tree");
+		JungleTreeEditor editor = tree.getTreeEditor();
+
+		DefaultNodePath root = new DefaultNodePath();
+		Either<Error, JungleTreeEditor> either = editor.addNewChildAt(root, 0);
+		if(either.isA()) {
+			throw new IllegalStateException();
+		}
+		editor = either.b();
+		either = editor.putAttribute(root.add(0), "key1", ByteBuffer.wrap("first message".getBytes()));
+		if(either.isA()) {
+			throw new IllegalStateException();
+		}
+		NetworkDefaultJungleTreeEditor nEditor = (NetworkDefaultJungleTreeEditor) either.b();
+		TreeOperationLog log = nEditor.getTreeOperationLog();
+		
+		DefaultTreeOperationLogContainer container = new DefaultTreeOperationLogContainer();
+		try {
+			container.unconvert(log);
+		} catch (IOException e) {
+			e.printStackTrace();
+		}
+		LogReadCodeSegment cs = new LogReadCodeSegment();
+		cs.ods.update("log", container);
+	}
+
+}