annotate src/main/java/alice/jungle/persistent/AliceJournal.java @ 135:2e8034524259

Added NetworkJournal and SingletonMessageFromAlice class
author Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
date Sun, 12 Jan 2014 06:18:37 +0900
parents 895ab2907db3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
105
f9e29a52efd3 Move some files
one
parents: 75
diff changeset
1 package alice.jungle.persistent;
31
190f6a3bdab2 rename some packages
one
parents: 30
diff changeset
2
135
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
3 import java.io.File;
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
4 import java.io.FileNotFoundException;
116
895ab2907db3 Modified pom.xml
one
parents: 105
diff changeset
5 import java.util.Iterator;
895ab2907db3 Modified pom.xml
one
parents: 105
diff changeset
6
17
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListReader;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListWriter;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.Result;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
11
135
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
12 public class AliceJournal implements NetworkJournal {
17
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
13
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
14 private static final AliceChangeListWriter ALICE_WRITER = new AliceChangeListWriter();
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
15 private static final AliceChangeListReader ALICE_READER = new AliceChangeListReader();
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
16 @Override
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
17 public ChangeListReader getReader() {
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
18 return ALICE_READER;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
19 }
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
20 @Override
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
21 public ChangeListWriter getWriter() {
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
22 return ALICE_WRITER;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
23 }
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
24
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
25 private static class AliceChangeListWriter implements ChangeListWriter
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
26 {
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
27 @Override
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
28 public Result write(ChangeList _operations)
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
29 {
63
3b0091c91e61 non print operation info
one
parents: 58
diff changeset
30 /*
17
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
31 for(TreeOperation op : _operations){
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
32 NodePath p = op.getNodePath();
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
33 NodeOperation nodeOp = op.getNodeOperation();
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
34 Command c = nodeOp.getCommand();
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
35 String args = "";
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
36 switch(c){
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
37 case PUT_ATTRIBUTE:
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
38 String key = nodeOp.getKey();
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
39 ByteBuffer value = nodeOp.getValue();
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
40 if(value.limit() < 100){
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
41 args = String.format("key:%s,value:%s",key,new String(value.array()));
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
42 }else{
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
43 args = String.format("key:%s,value:%d",key,value.limit());
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
44 }
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
45 break;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
46 case DELETE_ATTRIBUTE:
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
47 args = String.format("key:%s",nodeOp.getKey());
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
48 break;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
49 case APPEND_CHILD:
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
50 args = String.format("pos:%d",nodeOp.getPosition());
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
51 break;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
52 case DELETE_CHILD:
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
53 args = String.format("pos:%d",nodeOp.getPosition());
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
54 break;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
55 }
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
56 System.out.println(String.format("[%s:%s:%s]",c,p,args));
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
57 }
63
3b0091c91e61 non print operation info
one
parents: 58
diff changeset
58 */
17
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
59 return Result.SUCCESS;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
60 }
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
61 }
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
62
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
63 private static class AliceChangeListReader implements ChangeListReader
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
64 {
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
65 @Override
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
66 public ChangeListReader newReader()
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
67 {
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
68 return this;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
69 }
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
70
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
71 @Override
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
72 public ChangeList read()
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
73 {
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
74 return null;
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
75 }
116
895ab2907db3 Modified pom.xml
one
parents: 105
diff changeset
76
895ab2907db3 Modified pom.xml
one
parents: 105
diff changeset
77 @Override
895ab2907db3 Modified pom.xml
one
parents: 105
diff changeset
78 public Iterator<ChangeList> iterator() {
895ab2907db3 Modified pom.xml
one
parents: 105
diff changeset
79 return null;
895ab2907db3 Modified pom.xml
one
parents: 105
diff changeset
80 }
895ab2907db3 Modified pom.xml
one
parents: 105
diff changeset
81
17
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
82 }
135
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
83
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
84 @Override
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
85 public void setInputFile(File file) throws FileNotFoundException {
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
86
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
87 }
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
88 @Override
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
89 public void setOutputFile(File file) throws FileNotFoundException {
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
90
2e8034524259 Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 116
diff changeset
91 }
17
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
92
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
93
c767e7af4d88 add TestPutAttributeCodeSegmnet and StartJungleCodeSegment
one
parents:
diff changeset
94 }