annotate src/main/java/alice/codesegment/OutputDataSegment.java @ 345:8f71c3e6f11d

Change directory structure Maven standard
author sugi
date Wed, 16 Apr 2014 18:26:07 +0900
parents
children 388e7d4b0624
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
1 package alice.codesegment;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
2
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
3 import alice.datasegment.DataSegment;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
4 import alice.datasegment.Receiver;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
5
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
6 public class OutputDataSegment {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
7
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
8 /**
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
9 * for local
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
10 */
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
11
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
12 public void flip(Receiver receiver) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
13 receiver.managerKey=null;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
14 DataSegment.getLocal().put(receiver.key, receiver.getObj());
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
15 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
16
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
17 public void put(String key, Object val) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
18 DataSegment.getLocal().put(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
19 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
20
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
21 public void quickPut(String key, Object val) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
22 put(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
23 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
24
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
25 public void update(String key, Object val) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
26 DataSegment.getLocal().update(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
27 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
28
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
29 public void quickuUpdate(String key, Object val) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
30 update(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
31 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
32
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
33 /**
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
34 * for remote
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
35 */
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
36 public void put(String managerKey, String key, Object val) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
37 if (!managerKey.equals("local")){
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
38 DataSegment.get(managerKey).put(key,val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
39 } else {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
40 put(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
41 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
42 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
43
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
44 public void quickPut(String managerKey, String key, Object val) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
45 if (!managerKey.equals("local")){
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
46 DataSegment.get(managerKey).quickPut(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
47 } else {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
48 put(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
49 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
50 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
51
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
52 public void update(String managerKey, String key, Object val) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
53 if (!managerKey.equals("local")){
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
54 DataSegment.get(managerKey).update(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
55 } else {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
56 update(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
57 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
58 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
59
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
60 public void quickUpdate(String managerKey, String key, Object val) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
61 if (!managerKey.equals("local")){
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
62 DataSegment.get(managerKey).update(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
63 } else {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
64 update(key, val);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
65 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
66 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
67
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
68 /**
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
69 * kill the Alice process after send other messages.
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
70 *
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
71 * @param managerKey
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
72 */
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
73
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
74 public void finish(String managerKey) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
75 DataSegment.get(managerKey).finish();
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
76 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
77
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
78 /**
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
79 * close socket for RemoteDataSegment after send other messages.
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
80 *
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
81 * @param managerKey
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
82 */
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
83
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
84 public void close(String managerKey) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
85 DataSegment.get(managerKey).close();
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
86 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
87
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
88 /**
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
89 * "key" is not remote DataSegment's key.
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
90 * "Ping Response" return in this "key"
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
91 *
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
92 * @param managerKey
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
93 * @param key
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
94 */
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
95 public void ping(String managerKey, String returnKey) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
96 DataSegment.get(managerKey).ping(returnKey);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
97 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
98
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
99 }