Mercurial > hg > Database > Alice
annotate src/main/java/alice/datasegment/CompressedRemoteDataSegmentManager.java @ 655:1c93e82e05c6 default tip
fix timestamp
author | suruga |
---|---|
date | Sat, 17 Feb 2018 00:33:00 +0900 |
parents | 8f949fa80653 |
children | e91a574b69de |
rev | line source |
---|---|
529 | 1 package alice.datasegment; |
2 | |
3 import java.io.IOException; | |
4 import java.net.InetSocketAddress; | |
5 import java.nio.channels.SocketChannel; | |
6 import java.util.concurrent.LinkedBlockingQueue; | |
7 | |
8 import org.apache.log4j.Logger; | |
9 | |
10 import alice.codesegment.CodeSegment; | |
11 import alice.daemon.Connection; | |
12 import alice.daemon.IncomingTcpConnection; | |
13 import alice.daemon.OutboundTcpConnection; | |
14 | |
15 public class CompressedRemoteDataSegmentManager extends DataSegmentManager { | |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
16 RemoteDataSegmentManager manager; |
534 | 17 |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
18 public CompressedRemoteDataSegmentManager(RemoteDataSegmentManager manager) { |
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
19 this.manager = manager; |
529 | 20 } |
21 | |
22 /** | |
23 * send put command to target DataSegment | |
24 */ | |
25 @Override | |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
26 public void put(String key, ReceiveData rData, boolean quickFlag) { |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
27 if (!rData.compressed()){ |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
28 try { |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
29 rData.zip(); |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
30 } catch (IOException e) { |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
31 e.printStackTrace(); |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
32 } |
529 | 33 } |
34 Command cmd = new Command(CommandType.PUT, null, key, rData, 0, 0, null, null, ""); | |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
35 cmd.setCompressFlag(true); |
529 | 36 |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
37 manager.put1(quickFlag, cmd); |
529 | 38 } |
39 | |
40 @Override | |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
41 public void update(String key, ReceiveData rData, boolean quickFlag) { |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
42 if (!rData.compressed()){ |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
43 try { |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
44 rData.zip(); |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
45 } catch (IOException e) { |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
46 e.printStackTrace(); |
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
47 } |
529 | 48 } |
49 Command cmd = new Command(CommandType.UPDATE, null, key, rData, 0, 0, null, null, ""); | |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
50 cmd.setCompressFlag(true); |
529 | 51 |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
52 manager.put1(quickFlag, cmd); |
529 | 53 } |
54 | |
55 @Override | |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
56 public void take(Receiver receiver, CodeSegment cs, boolean quickFlag) { |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
57 Command cmd = new Command(CommandType.TAKE, receiver, receiver.key, null, receiver.index, 0, replyQueue, cs, null); |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
58 cmd.setCompressFlag(true); |
530 | 59 |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
60 manager.take1(quickFlag, cmd); |
529 | 61 } |
62 | |
63 @Override | |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
64 public void peek(Receiver receiver, CodeSegment cs, boolean quickFlag) { |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
65 Command cmd = new Command(CommandType.PEEK, receiver, receiver.key, null, receiver.index, 0, replyQueue, cs, null); |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
66 cmd.setCompressFlag(true); |
530 | 67 |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
68 manager.take1(quickFlag, cmd); |
529 | 69 } |
70 | |
71 @Override | |
72 public void remove(String key) { | |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
73 manager.remove(key); |
529 | 74 } |
75 | |
76 @Override | |
77 public void finish() { | |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
78 manager.finish(); |
529 | 79 } |
80 | |
81 @Override | |
82 public void ping(String returnKey) { | |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
83 manager.ping(returnKey); |
529 | 84 } |
85 | |
86 @Override | |
87 public void response(String returnKey) { | |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
88 manager.response(returnKey); |
529 | 89 } |
90 | |
91 @Override | |
92 public void close() { | |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
93 manager.close(); |
529 | 94 } |
95 | |
96 @Override | |
97 public void shutdown() { | |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
98 manager.shutdown(); |
529 | 99 } |
100 | |
101 @Override | |
102 public void setSendError(boolean b) { | |
537
8f949fa80653
Compressed RDSM refactoring
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
536
diff
changeset
|
103 manager.setSendError(b); |
529 | 104 } |
533
b3c9554ccb1b
change compressed API to set data specified DSM name
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
530
diff
changeset
|
105 |
529 | 106 } |