annotate src/main/java/alice/daemon/OutboundTcpConnection.java @ 346:d46c42352e4f

change images position. It is under src/main/resources
author sugi
date Mon, 21 Apr 2014 19:57:44 +0900
parents 8f71c3e6f11d
children 60eee1fb0fd3
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.daemon;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
2
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
3 import java.io.IOException;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
4 import alice.datasegment.Command;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
5
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
6 public class OutboundTcpConnection extends Thread {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
7
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
8 public Connection connection;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
9
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
10 public OutboundTcpConnection(Connection connection) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
11 this.connection = connection;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
12 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
13
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
14
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 * pipeline thread for transmission
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
18 */
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
19 public void run() {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
20 while (true) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
21 try {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
22 Command cmd = connection.sendQueue.take();
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
23 switch (cmd.type) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
24 case CLOSE:
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
25 connection.socket.close();
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
26 return;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
27 case FINISH:
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
28 System.exit(0);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
29 return;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
30 default:
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
31 break;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
32 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
33 connection.write(cmd);
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
34 } catch (InterruptedException e) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
35 e.printStackTrace();
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
36 } catch (IOException e) {
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
37 e.printStackTrace();
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
38 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
39 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
40 }
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
41
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
42 }