annotate src/alice/jungle/operations/NetworkTreeOperation.java @ 81:b9dd8ec0e66e

Added NetworkJournal
author one
date Wed, 16 Oct 2013 19:57:18 +0900
parents 5b9708d9febc
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
31
190f6a3bdab2 rename some packages
one
parents: 2
diff changeset
1 package alice.jungle.operations;
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
2
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
3 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.Command;
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
4 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath;
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.AppendChildAtOperation;
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.DeleteAttributeOperation;
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.DeleteChildAtOperation;
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.NodeOperation;
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.PutAttributeOperation;
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation;
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
11
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
12 import org.msgpack.annotation.Message;
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
13
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
14 @Message
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
15 public class NetworkTreeOperation implements TreeOperation {
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
16
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
17 public NetworkNodePath path;
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
18 public NetworkNodeOperation operation;
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
19
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
20 public NetworkTreeOperation() {
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
21 path = null;
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
22 operation = null;
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
23 }
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
24
79
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
25 public NetworkTreeOperation(TreeOperation treeOp) {
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
26 path = new NetworkNodePath(treeOp.getNodePath());
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
27 operation = new NetworkNodeOperation(treeOp.getNodeOperation());
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
28 }
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
29
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
30 public NetworkTreeOperation(NodePath _p, NodeOperation _op) {
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
31 path = new NetworkNodePath(_p);
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
32 operation = new NetworkNodeOperation(_op);
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
33 }
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
34
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
35 public NetworkTreeOperation(NetworkNodePath _p, NodeOperation _op) {
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
36 path = _p;
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
37 operation = new NetworkNodeOperation(_op);
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
38 }
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
39
81
b9dd8ec0e66e Added NetworkJournal
one
parents: 79
diff changeset
40 public NetworkTreeOperation(NodePath _p, NetworkNodeOperation _op) {
b9dd8ec0e66e Added NetworkJournal
one
parents: 79
diff changeset
41 path = new NetworkNodePath(_p);
b9dd8ec0e66e Added NetworkJournal
one
parents: 79
diff changeset
42 operation = _op;
b9dd8ec0e66e Added NetworkJournal
one
parents: 79
diff changeset
43 }
b9dd8ec0e66e Added NetworkJournal
one
parents: 79
diff changeset
44
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
45 public NetworkTreeOperation(NetworkNodePath _p, NetworkNodeOperation _op) {
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
46 path = _p;
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
47 operation = _op;
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
48 }
77
2dba7e1cf9fa Added NetworknodeOperation and Test
one
parents: 76
diff changeset
49
2dba7e1cf9fa Added NetworknodeOperation and Test
one
parents: 76
diff changeset
50 @Override
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
51 public NodePath getNodePath() {
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
52 return path;
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
53 }
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
54
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
55 @Override
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
56 public NodeOperation getNodeOperation() {
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
57 Command c = operation.getCommand();
79
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
58 switch(c) {
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
59 case PUT_ATTRIBUTE:
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
60 return new PutAttributeOperation(operation.getKey(), operation.getValue());
79
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
61 case APPEND_CHILD:
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
62 return new AppendChildAtOperation(operation.getPosition());
79
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
63 case DELETE_CHILD:
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
64 return new DeleteChildAtOperation(operation.getPosition());
79
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
65 case DELETE_ATTRIBUTE:
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
66 return new DeleteAttributeOperation(operation.getKey());
79
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
67 default:
5b9708d9febc Modified NetworkTreeOperationLog NetworkNodeOperation
one
parents: 77
diff changeset
68 break;
76
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
69 }
9e3198bf9547 Modified NetworkNodePath
one
parents: 31
diff changeset
70 return null;
1
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
71 }
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
72
8ee02d1a2b12 add jungle.test.operations
one
parents:
diff changeset
73 }