annotate src/alice/datasegment/Command.java @ 328:370a2f63944f

add ListManager Test
author sugi
date Tue, 11 Feb 2014 16:10:23 +0900
parents b78f52865b8d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
1 package alice.datasegment;
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
2
250
38154e695025 Refactor
sugi
parents: 217
diff changeset
3 import java.io.IOException;
13
30f97d776a3e implements Alice daemon
one
parents: 7
diff changeset
4 import java.util.concurrent.BlockingQueue;
3
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
5 import org.msgpack.type.Value;
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
6
7
352eb19d837d implements reply of LocalDataSegment
one
parents: 6
diff changeset
7 import alice.codesegment.CodeSegment;
250
38154e695025 Refactor
sugi
parents: 217
diff changeset
8 import alice.codesegment.SingletonMessage;
38154e695025 Refactor
sugi
parents: 217
diff changeset
9 import alice.daemon.CommandMessage;
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
10 import alice.daemon.Connection;
7
352eb19d837d implements reply of LocalDataSegment
one
parents: 6
diff changeset
11
3
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
12 public class Command {
13
30f97d776a3e implements Alice daemon
one
parents: 7
diff changeset
13 public CommandType type;
14
e3f1b21718b0 implements RemoteDataSegment
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 13
diff changeset
14 public String key;
33
20c67f673224 change name of DataSegmentReceiver
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 28
diff changeset
15 public Receiver receiver;
3
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
16 public Value val;
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
17 public int index;
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
18 public int seq;
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
19 public Connection connection; // for remote
13
30f97d776a3e implements Alice daemon
one
parents: 7
diff changeset
20 public BlockingQueue<Command> replyQueue;
7
352eb19d837d implements reply of LocalDataSegment
one
parents: 6
diff changeset
21 public CodeSegment cs;
28
98ab26e09a98 Configuration Manager work and implements reverseKey
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
22 public String reverseKey;
190
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
23 public Object obj;
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
24 public boolean flag;
202
7f47231ef509 add new flip API
sugi
parents: 198
diff changeset
25
33
20c67f673224 change name of DataSegmentReceiver
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 28
diff changeset
26 public Command(CommandType cmdType, Receiver receiver, String key, Value val, int index, int seq, BlockingQueue<Command> replyQueue, CodeSegment cs, String reverseKey) {
13
30f97d776a3e implements Alice daemon
one
parents: 7
diff changeset
27 this.type = cmdType;
18
72dd27d952b0 change InputDataSegment API
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
28 this.receiver = receiver;
16
433e601a8e28 network bug fix
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
29 this.key = key;
3
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
30 this.val = val;
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
31 this.index = index;
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
32 this.seq = seq;
13
30f97d776a3e implements Alice daemon
one
parents: 7
diff changeset
33 this.replyQueue = replyQueue;
7
352eb19d837d implements reply of LocalDataSegment
one
parents: 6
diff changeset
34 this.cs = cs;
28
98ab26e09a98 Configuration Manager work and implements reverseKey
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
35 this.reverseKey = reverseKey;
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
36 this.flag = false;
3
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
37 }
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
38
252
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
39 public Command(CommandType cmdType, Receiver receiver, String key, Value val, int index, int seq, BlockingQueue<Command> replyQueue, CodeSegment cs, String reverseKey, boolean flag) {
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
40 this.type = cmdType;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
41 this.receiver = receiver;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
42 this.key = key;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
43 this.val = val;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
44 this.index = index;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
45 this.seq = seq;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
46 this.replyQueue = replyQueue;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
47 this.cs = cs;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
48 this.reverseKey = reverseKey;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
49 this.flag = flag;
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
50 }
b78f52865b8d no use Queue API
sugi
parents: 251
diff changeset
51
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
52 public Command(CommandType cmdType, Receiver receiver, String key, Value val, int index, int seq, Connection connection, CodeSegment cs, String reverseKey, boolean flag) {
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
53 this.type = cmdType;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
54 this.receiver = receiver;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
55 this.key = key;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
56 this.val = val;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
57 this.index = index;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
58 this.seq = seq;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
59 this.connection = connection;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
60 this.cs = cs;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
61 this.reverseKey = reverseKey;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
62 this.flag = flag;
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
63 }
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
64
190
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
65 public Command(CommandType cmdType, Receiver receiver, String key, Object obj, int index, int seq, BlockingQueue<Command> replyQueue, CodeSegment cs, String reverseKey) {
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
66 this.type = cmdType;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
67 this.receiver = receiver;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
68 this.key = key;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
69 this.obj = obj;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
70 this.index = index;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
71 this.seq = seq;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
72 this.replyQueue = replyQueue;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
73 this.cs = cs;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
74 this.reverseKey = reverseKey;
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
75 this.flag = false;
190
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
76 }
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
77
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
78 public Command(CommandType cmdType, Receiver receiver, String key, Value val, Object obj, int index, int seq, BlockingQueue<Command> replyQueue, CodeSegment cs, String reverseKey) {
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
79 this.type = cmdType;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
80 this.receiver = receiver;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
81 this.key = key;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
82 this.val = val;
191
60051454e443 minor change
e095732
parents: 190
diff changeset
83 this.obj = obj;
190
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
84 this.index = index;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
85 this.seq = seq;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
86 this.replyQueue = replyQueue;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
87 this.cs = cs;
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
88 this.reverseKey = reverseKey;
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
89 this.flag = false;
190
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
90 }
a85ff8dc16c1 add Object data
one
parents: 40
diff changeset
91
39
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 33
diff changeset
92 public String getCommandString() {
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 33
diff changeset
93 String csName = "null";
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 33
diff changeset
94 if (cs != null) {
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 33
diff changeset
95 csName = cs.toString();
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 33
diff changeset
96 }
40
20616fe4d28a add log viewer
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 39
diff changeset
97 return this.type + "\t" + key + "\t" + val + "\tindex=" + index + "\tcs=" + csName;
39
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 33
diff changeset
98 }
250
38154e695025 Refactor
sugi
parents: 217
diff changeset
99 public CommandMessage convert() {
38154e695025 Refactor
sugi
parents: 217
diff changeset
100 if (val==null&&obj!=null){
38154e695025 Refactor
sugi
parents: 217
diff changeset
101 try {
38154e695025 Refactor
sugi
parents: 217
diff changeset
102 this.val = SingletonMessage.getInstance().unconvert(obj);
38154e695025 Refactor
sugi
parents: 217
diff changeset
103 } catch (IOException e) {
38154e695025 Refactor
sugi
parents: 217
diff changeset
104 e.printStackTrace();
38154e695025 Refactor
sugi
parents: 217
diff changeset
105 }
38154e695025 Refactor
sugi
parents: 217
diff changeset
106 }
251
88be2824a989 no use Queue
sugi
parents: 250
diff changeset
107 return new CommandMessage(type.id, index, seq, key, val, flag);
250
38154e695025 Refactor
sugi
parents: 217
diff changeset
108 }
39
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 33
diff changeset
109
3
91057e15065f add DataSegment API and CodeSegment
one
parents:
diff changeset
110 }