view src/test/java/alice/jungle/log/example/LogSendTest.java @ 105:f9e29a52efd3

Move some files
author one
date Tue, 26 Nov 2013 06:43:10 +0900
parents 60d28fedcbf2
children
line wrap: on
line source

package alice.jungle.log.example;

import java.io.IOException;
import java.nio.ByteBuffer;

import alice.jungle.datasegment.container.DefaultTreeOperationLogContainer;
import alice.jungle.transaction.NetworkDefaultJungleTreeEditor;
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.app.bbs.JungleManager;

public class LogSendTest {
	
	public static void main(String[] args) {
		System.out.println("Start LogSendTest");
		JungleTree tree = JungleManager.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);
	}

}