annotate src/main/java/alice/codesegment/InputDataSegment.java @ 527:bfec2c3ff1b8 dispose

change unzip
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Thu, 30 Apr 2015 18:14:02 +0900
parents 928907206d21
children b3c9554ccb1b
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 java.util.concurrent.atomic.AtomicInteger;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
4
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
5 import alice.datasegment.Command;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
6 import alice.datasegment.CommandType;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
7 import alice.datasegment.DataSegment;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
8 import alice.datasegment.Receiver;
455
b004f62b83e5 refactor (remove quick method from DataSegmentManager and use flag)
sugi
parents: 452
diff changeset
9 import alice.datasegment.SendOption;
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
10
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
11 /**
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
12 * RemoteかLocalかで分けて処理する。ここに圧縮DSMへ投げる処理を追加。
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
13 * InputDataSegment Manager
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
14 * keep tracking unbound/bound count
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
15 * @author kazz
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
16 *
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
17 */
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
18 public class InputDataSegment {
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
19
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
20 public CodeSegment cs;
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
21 private AtomicInteger count = new AtomicInteger(1); // 1 for no input data segments
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
22 private AtomicInteger keyCount = new AtomicInteger(0); // number of DataSegments
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
23
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
24 public InputDataSegment(CodeSegment cs) {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
25 this.cs = cs;
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
26 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
27
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
28 public void init(){
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
29 count = new AtomicInteger(1);
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
30 keyCount = new AtomicInteger(0);
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
31 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
32
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
33 public void quickPeek(Receiver receiver) {//SEDAで実行
481
549cc29aca59 change access type private
sugi
parents: 471
diff changeset
34 cs.register(receiver);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
35
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
36 if (receiver.compressedFlag){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
37 SendOption option = new SendOption(true, true);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
38 if (receiver.managerKey == null){//localの場合
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
39 DataSegment.getCompressedLocal().peek(receiver, cs, option);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
40 } else {
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
41 if (DataSegment.contains(receiver.managerKey)) {//remoteの場合
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
42 DataSegment.get(receiver.managerKey + "!").peek(receiver, cs, option);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
43 }
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
44 }
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
45 } else {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
46 SendOption option = new SendOption(true, false);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
47 if (receiver.managerKey == null){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
48 DataSegment.getLocal().peek(receiver, cs, option);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
49 } else {
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
50 if (DataSegment.contains(receiver.managerKey)) {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
51 DataSegment.get(receiver.managerKey).peek(receiver, cs, option);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
52 }
471
be0b61986ff7 checking having DataSegmentManger before get DataSegmentManager
sugi
parents: 458
diff changeset
53 }
455
b004f62b83e5 refactor (remove quick method from DataSegmentManager and use flag)
sugi
parents: 452
diff changeset
54 }
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
55
455
b004f62b83e5 refactor (remove quick method from DataSegmentManager and use flag)
sugi
parents: 452
diff changeset
56 }
b004f62b83e5 refactor (remove quick method from DataSegmentManager and use flag)
sugi
parents: 452
diff changeset
57
b004f62b83e5 refactor (remove quick method from DataSegmentManager and use flag)
sugi
parents: 452
diff changeset
58
b004f62b83e5 refactor (remove quick method from DataSegmentManager and use flag)
sugi
parents: 452
diff changeset
59 public void peek(Receiver receiver) {
481
549cc29aca59 change access type private
sugi
parents: 471
diff changeset
60 cs.register(receiver);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
61
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
62 if (receiver.compressedFlag){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
63 SendOption option = new SendOption(false, true);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
64 if (receiver.managerKey==null){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
65 DataSegment.getCompressedLocal().peek(receiver, cs, option);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
66 } else {
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
67 if (DataSegment.contains(receiver.managerKey)) {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
68 DataSegment.get(receiver.managerKey + "!").peek(receiver, cs, option);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
69 }
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
70 }
455
b004f62b83e5 refactor (remove quick method from DataSegmentManager and use flag)
sugi
parents: 452
diff changeset
71 } else {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
72 SendOption option = new SendOption(false, false);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
73 if (receiver.managerKey==null){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
74 DataSegment.getLocal().peek(receiver, cs, option);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
75 } else {
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
76 if (DataSegment.contains(receiver.managerKey)) {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
77 DataSegment.get(receiver.managerKey).peek(receiver, cs, option);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
78 }
471
be0b61986ff7 checking having DataSegmentManger before get DataSegmentManager
sugi
parents: 458
diff changeset
79 }
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
80 }
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
81
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
82 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
83
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
84 public void quickTake(Receiver receiver) {
481
549cc29aca59 change access type private
sugi
parents: 471
diff changeset
85 cs.register(receiver);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
86
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
87 if (receiver.compressedFlag){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
88 SendOption option = new SendOption(true, true);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
89 if (receiver.managerKey==null){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
90 DataSegment.getCompressedLocal().take(receiver, cs, option);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
91 } else {
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
92 if (DataSegment.contains(receiver.managerKey)) {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
93 DataSegment.get(receiver.managerKey + "!").take(receiver, cs, option);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
94 }
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
95 }
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
96 } else {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
97 SendOption option = new SendOption(true, false);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
98 if (receiver.managerKey==null){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
99 DataSegment.getLocal().take(receiver, cs, option);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
100 } else {
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
101 if (DataSegment.contains(receiver.managerKey)) {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
102 DataSegment.get(receiver.managerKey).take(receiver, cs, option);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
103 }
471
be0b61986ff7 checking having DataSegmentManger before get DataSegmentManager
sugi
parents: 458
diff changeset
104 }
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
105 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
106 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
107
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
108 public void take(Receiver receiver) {
526
928907206d21 remove CompressedRDSM & CompressedLDSM class
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 525
diff changeset
109 System.out.println("in TAKE");
481
549cc29aca59 change access type private
sugi
parents: 471
diff changeset
110 cs.register(receiver);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
111
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
112 if (receiver.compressedFlag){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
113 SendOption option = new SendOption(false, true);
526
928907206d21 remove CompressedRDSM & CompressedLDSM class
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 525
diff changeset
114 if (receiver.managerKey==null){// 指定なしの場合デフォはローカルになる
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
115 DataSegment.getCompressedLocal().take(receiver, cs, option);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
116 } else {
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
117 if (DataSegment.contains(receiver.managerKey)) {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
118 DataSegment.get(receiver.managerKey + "!").take(receiver, cs, option);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
119 }
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
120 }
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
121 } else {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
122 SendOption option = new SendOption(false, false);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
123 if (receiver.managerKey==null){
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
124 DataSegment.getLocal().take(receiver, cs, option);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
125 } else {
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
126 if (DataSegment.contains(receiver.managerKey)) {
527
bfec2c3ff1b8 change unzip
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 526
diff changeset
127 DataSegment.get(receiver.managerKey).take(receiver, cs, option);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
128 }
471
be0b61986ff7 checking having DataSegmentManger before get DataSegmentManager
sugi
parents: 458
diff changeset
129 }
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
130 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
131 }
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
132
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
133 public void reply(Receiver receiver, Command reply) {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
134 receiver.index = reply.index;
471
be0b61986ff7 checking having DataSegmentManger before get DataSegmentManager
sugi
parents: 458
diff changeset
135 receiver.from = reply.reverseKey;
458
bcf6f4a6fcd0 need set Meta DataSegment PUT API
sugi
parents: 455
diff changeset
136 receiver.setData(reply.rData);
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
137 receive();
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
138 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
139
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
140 public void register() {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
141 count.getAndIncrement();
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
142 keyCount.getAndIncrement();
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
143 }
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
144
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
145 public void setKey() {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
146 if (keyCount.decrementAndGet() == 0) {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
147 receive();
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
148 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
149 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
150
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
151 public void receive() {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
152 if (count.decrementAndGet() == 0) {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
153 CodeSegmentManager.submit(cs);
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
154 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
155 }
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
156
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
157 /**
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
158 * InputDataSegment factory
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
159 * @param type PEEK or TAKE
471
be0b61986ff7 checking having DataSegmentManger before get DataSegmentManager
sugi
parents: 458
diff changeset
160 * @return Receiver of DataSegment reply
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
161 */
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
162 public Receiver create(CommandType type) {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
163 return new Receiver(this, type);
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
164 }//Receiverを作成
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
165
523
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
166 public Receiver create(CommandType type, boolean compressFlag) {//追加
145c425db88d add CompressedLDSM
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 481
diff changeset
167 return new Receiver(this, type, compressFlag);
525
30a74eee59c7 working TestRemoteAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 523
diff changeset
168 }
417
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
169
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
170 public void recommand(Receiver receiver) {
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
171 // TODO why only local?
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
172 DataSegment.getLocal().recommand(receiver, cs);
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
173 }
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
174
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
175 public void setCounter(int cnt){
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
176 count.set(cnt);
aadea6a59376 create MetaCodeSegment use reflection
sugi
parents: 345
diff changeset
177 }
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
178 }