# HG changeset patch
# User one
# Date 1373596020 -32400
# Node ID fd3643699f83146ea4d5d620fb3ef65f0c6114b5
# Parent bf3dc481cc9bad9f438a6e690bc4858f796bafc2
modified pom.xml. fix conflict log4j libraries
diff -r bf3dc481cc9b -r fd3643699f83 .classpath
--- a/.classpath Fri Jul 12 09:47:22 2013 +0900
+++ b/.classpath Fri Jul 12 11:27:00 2013 +0900
@@ -6,7 +6,6 @@
-
@@ -21,5 +20,6 @@
+
diff -r bf3dc481cc9b -r fd3643699f83 pom.xml
--- a/pom.xml Fri Jul 12 09:47:22 2013 +0900
+++ b/pom.xml Fri Jul 12 11:27:00 2013 +0900
@@ -39,16 +39,27 @@
org.apache.cassandra
cassandra-all
1.2.1
-
-
- com.eaio.uuid
- uuid
- 3.2
+
+
+ org.slf4j
+ slf4j-log4j12
+
+
+ log4j
+ log4j
+
+
+
jungle
jungle-core
0.0.1-SNAPSHOT
+
+ com.github.stephenc.eaio-uuid
+ uuid
+ 3.3.0
+
diff -r bf3dc481cc9b -r fd3643699f83 src/alice/jungle/codesegment/LogUpdateCodeSegment.java
--- a/src/alice/jungle/codesegment/LogUpdateCodeSegment.java Fri Jul 12 09:47:22 2013 +0900
+++ b/src/alice/jungle/codesegment/LogUpdateCodeSegment.java Fri Jul 12 11:27:00 2013 +0900
@@ -12,6 +12,7 @@
import alice.datasegment.CommandType;
import alice.datasegment.Receiver;
import alice.jungle.datasegment.store.operations.DefaultTreeOperationLogContainer;
+import alice.jungle.transaction.NetworkDefaultJungleTreeEditor;
public class LogUpdateCodeSegment extends CodeSegment {
@@ -28,7 +29,7 @@
System.out.println("--LogUpdateCodeSegment--");
int index = arg1.index;
DefaultTreeOperationLogContainer container = arg1.asClass(DefaultTreeOperationLogContainer.class);
- if(!updaterIsMe(container)) {
+ if(updaterIsMe(container)) {
LogUpdateCodeSegment updateCS = new LogUpdateCodeSegment(rh, key);
updateCS.arg1.setKey(rh, key, index+1);
return;
@@ -39,7 +40,6 @@
} catch (IOException e) {
e.printStackTrace();
}
- //JungleManager jm = new JungleManager();
JungleTree tree = JungleManager.getJungle().getTreeByName("boards");
JungleTreeEditor editor = tree.getTreeEditor();
Either either = JungleManager.edit(editor, log);
@@ -47,14 +47,17 @@
throw new IllegalStateException();
}
editor = either.b();
- editor.success();
+ either = editor.success();
+ if(either.isA()) {
+ throw new IllegalStateException();
+ }
LogUpdateCodeSegment updateCS = new LogUpdateCodeSegment(rh, key);
updateCS.arg1.setKey(rh, key, index+1);
}
private boolean updaterIsMe(DefaultTreeOperationLogContainer container) {
- return true;
+ return false;
}
diff -r bf3dc481cc9b -r fd3643699f83 src/alice/jungle/transaction/NetworkDefaultJungleTree.java
--- a/src/alice/jungle/transaction/NetworkDefaultJungleTree.java Fri Jul 12 09:47:22 2013 +0900
+++ b/src/alice/jungle/transaction/NetworkDefaultJungleTree.java Fri Jul 12 11:27:00 2013 +0900
@@ -35,7 +35,7 @@
TreeContext tc = repository.get();
NetworkTransactionManager txManager = new NetworkTransactionManager(treeName, writer,tc,repository,uuid, serverName);
T root = tc.getTreeNode();
- return new NetworkDefaultJungleTreeEditor(treeName, root,txManager,editor);
+ return new NetworkDefaultJungleTreeEditor(serverName, treeName, root,txManager,editor);
}
@Override
diff -r bf3dc481cc9b -r fd3643699f83 src/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java
--- a/src/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java Fri Jul 12 09:47:22 2013 +0900
+++ b/src/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java Fri Jul 12 11:27:00 2013 +0900
@@ -37,14 +37,16 @@
private final String treeName;
private final TreeEditor editor;
private final TreeOperationLog log;
+ private final String serverName;
- public NetworkDefaultJungleTreeEditor(String _treeName, T _root,TransactionManager _txManager,TreeEditor _editor)
+ public NetworkDefaultJungleTreeEditor(String _serverName, String _treeName, T _root,TransactionManager _txManager,TreeEditor _editor)
{
- this(_treeName, _root,_txManager,_editor,new DefaultTreeOperationLog());
+ this(_serverName, _treeName, _root,_txManager,_editor,new DefaultTreeOperationLog());
}
- public NetworkDefaultJungleTreeEditor(String _treeName, T _root,TransactionManager _txManager,TreeEditor _editor,TreeOperationLog _log)
+ public NetworkDefaultJungleTreeEditor(String _serverName, String _treeName, T _root,TransactionManager _txManager,TreeEditor _editor, TreeOperationLog _log)
{
+ serverName = _serverName;
treeName = _treeName;
root = _root;
txManager = _txManager;
@@ -74,7 +76,7 @@
DefaultTreeOperationLog treeOperationLog = new DefaultTreeOperationLog(iterable,newLog.length());
TreeOperationLog newTreeOpLog = log.append(treeOperationLog);
- JungleTreeEditor newEditor = new NetworkDefaultJungleTreeEditor(treeName, newNode,txManager,editor,newTreeOpLog);
+ JungleTreeEditor newEditor = new NetworkDefaultJungleTreeEditor(serverName, treeName, newNode,txManager,editor,newTreeOpLog);
return DefaultEither.newB(newEditor);
}
@@ -121,7 +123,7 @@
}
TransactionManager newTxManager = either.b();
- JungleTreeEditor newTreeEditor = new NetworkDefaultJungleTreeEditor(treeName, root,newTxManager,editor);
+ JungleTreeEditor newTreeEditor = new NetworkDefaultJungleTreeEditor(serverName, treeName, root,newTxManager,editor);
return DefaultEither.newB(newTreeEditor);
}
@@ -147,6 +149,14 @@
public TreeOperationLog getTreeOperationLog() {
return log;
}
+
+ public String getTreeName() {
+ return treeName;
+ }
+
+ public String getServerName() {
+ return serverName;
+ }
}
diff -r bf3dc481cc9b -r fd3643699f83 src/alice/jungle/transaction/NetworkTransactionManager.java
--- a/src/alice/jungle/transaction/NetworkTransactionManager.java Fri Jul 12 09:47:22 2013 +0900
+++ b/src/alice/jungle/transaction/NetworkTransactionManager.java Fri Jul 12 11:27:00 2013 +0900
@@ -73,26 +73,10 @@
if(r != Result.SUCCESS) {
return DefaultEither.newA((Error)new DefaultError());
}
- try {
- putDataSegment(uuid, treeName, serverName, list, nextRevision);
- } catch (IOException e) {
- e.printStackTrace();
- }
reservation.confirm();
TransactionManager txManager = new NetworkTransactionManager(treeName, writer, newContext, repository, uuid, serverName);
return DefaultEither.newB(txManager);
}
-
- private void putDataSegment(String _uuid, String _treeName, String _serverName, Iterable _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
public long getRevision()
diff -r bf3dc481cc9b -r fd3643699f83 src/jungle/test/bbs/DistributeApp.java
--- a/src/jungle/test/bbs/DistributeApp.java Fri Jul 12 09:47:22 2013 +0900
+++ b/src/jungle/test/bbs/DistributeApp.java Fri Jul 12 11:27:00 2013 +0900
@@ -25,23 +25,7 @@
{
public static void main( String[] args ) throws Exception
{
-
RemoteConfig conf = new RemoteConfig(args);
new TopologyNode(conf, new StartBBSCodeSegment());
-/*
- if(conf.hostname == null) {
- new AliceDaemon(conf).listen();
- PutHostLogCodeSegment cs = new PutHostLogCodeSegment();
- cs.arg1.setKey("local","log");
- LogUpdateCodeSegment updateCS = new LogUpdateCodeSegment("local", "anotherLog");
- updateCS.arg1.setKey("local", "anotherLog");
- } else {
- DataSegment.connect(conf.key, "", conf.hostname, conf.connectPort);
- PutAnotherLogCodeSegment cs = new PutAnotherLogCodeSegment();
- cs.arg1.setKey("local", "log");
- LogUpdateCodeSegment updateCS = new LogUpdateCodeSegment("remote", "hostLog");
- updateCS.arg1.setKey("remote", "hostLog");
- }
-*/
}
}
diff -r bf3dc481cc9b -r fd3643699f83 src/jungle/test/bbs/NetworkJungleBulletinBoard.java
--- a/src/jungle/test/bbs/NetworkJungleBulletinBoard.java Fri Jul 12 09:47:22 2013 +0900
+++ b/src/jungle/test/bbs/NetworkJungleBulletinBoard.java Fri Jul 12 11:27:00 2013 +0900
@@ -1,9 +1,12 @@
package jungle.test.bbs;
+import java.io.IOException;
import java.nio.ByteBuffer;
import java.util.concurrent.atomic.AtomicInteger;
import alice.jungle.core.NetworkDefaultJungle;
+import alice.jungle.datasegment.store.operations.DefaultTreeOperationLogContainer;
+import alice.jungle.transaction.NetworkDefaultJungleTreeEditor;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree;
@@ -12,6 +15,7 @@
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.Node;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor;
+import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.EditableNode;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.NodeEditor;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser;
@@ -19,6 +23,7 @@
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.IterableConverter;
+import jungle.test.bbs.codesegment.NullCodeSegmentForUpdate;
public class NetworkJungleBulletinBoard implements BulletinBoard
{
@@ -29,7 +34,7 @@
{
Jungle _j = new NetworkDefaultJungle(null,"hoge",new DefaultTreeEditor(new DefaultTraverser()), _serverName);
JungleManager.setJungle(_j);
- jungle = jm.getJungle();
+ jungle = JungleManager.getJungle();
jungle.createNewTree("boards");
}
@@ -73,6 +78,12 @@
if(result.isA()){
throw new IllegalStateException();
}
+ /* Put DataSegment */
+ try {
+ putTreeOperationLog((NetworkDefaultJungleTreeEditor)result.b());
+ } catch (IOException e1) {
+ e1.printStackTrace();
+ }
tree = jungle.getTreeByName(_name);
editor = tree.getTreeEditor();
@@ -97,6 +108,13 @@
}
editor = either.b();
editor.success();
+ /* Put DataSegment */
+ try {
+ putTreeOperationLog((NetworkDefaultJungleTreeEditor)result.b());
+ } catch (IOException e1) {
+ e1.printStackTrace();
+ }
+
}
public void createBoardMessage(final String _board,final String _author,final String _message,final String _editKey)
@@ -107,13 +125,14 @@
}
JungleTreeEditor editor;
+ Either either;
do{
Node node = tree.getRootNode();
int size = node.getChildren().size();
DefaultNodePath path = new DefaultNodePath();
editor = tree.getTreeEditor();
- Either either = editor.addNewChildAt(path,size);
+ either = editor.addNewChildAt(path,size);
if(either.isA()){
throw new IllegalStateException();
}
@@ -134,12 +153,21 @@
throw new IllegalStateException();
}
editor = either.b();
- }while(editor.success().isA());
+
+ either = editor.success();
+ /* Put DataSegment */
+ try {
+ putTreeOperationLog((NetworkDefaultJungleTreeEditor)editor);
+ } catch (IOException e1) {
+ e1.printStackTrace();
+ }
+ }while(either.isA());
}
public void editMessage(String _board,String _uuid,final String _author,final String _message,final String _editKey)
{
JungleTreeEditor editor = null;
+ Either either = null;
do{
DefaultNodePath path = new DefaultNodePath();
path = path.add(Integer.parseInt(_uuid));
@@ -155,12 +183,19 @@
}
};
- Either either = editor.edit(path,e);
+ either = editor.edit(path,e);
if(either.isA()){
throw new IllegalStateException();
}
editor = either.b();
- }while(editor.success().isA());
+ either = editor.success();
+ /* Put DataSegment */
+ try {
+ putTreeOperationLog((NetworkDefaultJungleTreeEditor)editor);
+ } catch (IOException e1) {
+ e1.printStackTrace();
+ }
+ }while(either.isA());
}
public Iterable getMessages(String _boardName)
@@ -183,6 +218,27 @@
return new IterableConverter(chs,converter);
}
+ private void putTreeOperationLog(NetworkDefaultJungleTreeEditor editor) throws IOException {
+ String uuid = editor.getID();
+ String treeName = editor.getTreeName();
+ String serverName = editor.getServerName();
+ long revision = Long.parseLong(editor.getRevision());
+ Iterable log = editor.getTreeOperationLog();
+ putDataSegment(uuid, treeName, serverName, log, revision);
+ }
+
+ private void putDataSegment(String _uuid, String _treeName, String _serverName, Iterable _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);
+ }
+
+
private static class BoardMessageImpl implements BoardMessage
{
private final String author;
diff -r bf3dc481cc9b -r fd3643699f83 src/jungle/test/bbs/codesegment/StartBBSCodeSegment.java
--- a/src/jungle/test/bbs/codesegment/StartBBSCodeSegment.java Fri Jul 12 09:47:22 2013 +0900
+++ b/src/jungle/test/bbs/codesegment/StartBBSCodeSegment.java Fri Jul 12 11:27:00 2013 +0900
@@ -34,6 +34,7 @@
public void run() {
System.out.println("StartBBSCodeSegment");
String name = host.asString();
+ System.out.println("name : "+ name);
Matcher matcher = pattern.matcher(name);
matcher.find();
String type = matcher.group(1);