annotate src/alice/daemon/AliceDaemon.java @ 240:d9c9076d6b47

no use SEDA in IncomingTcpConnection
author sugi
date Tue, 09 Apr 2013 11:26:17 +0900
parents d50cddf64396
children b90d03c6cb00
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
1 package alice.daemon;
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
2
39
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
3 import java.io.FileWriter;
12
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
4 import java.io.IOException;
182
52a1fa5ba38b add filp api
e095732
parents: 175
diff changeset
5 import java.net.InetAddress;
12
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
6 import java.net.InetSocketAddress;
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
7 import java.net.ServerSocket;
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
8 import java.nio.channels.ServerSocketChannel;
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
9
39
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
10 import org.apache.log4j.Logger;
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
11 import org.apache.log4j.PatternLayout;
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
12 import org.apache.log4j.WriterAppender;
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
13
12
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
14 public class AliceDaemon {
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
15
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
16 private Config conf;
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
17 private AcceptThread acceptThread;
39
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
18 private Logger log = Logger.getLogger(AliceDaemon.class);
12
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
19
14
e3f1b21718b0 implements RemoteDataSegment
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
20 public AliceDaemon(Config conf) {
e3f1b21718b0 implements RemoteDataSegment
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
21 this.conf = conf;
39
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
22 setLogger();
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
23 }
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
24
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
25 private void setLogger() {
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
26 Logger root = Logger.getRootLogger();
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
27 if (conf.level != null)
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
28 root.setLevel(conf.level);
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
29 if (conf.logFile == null)
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
30 return;
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
31 PatternLayout layout = new PatternLayout();
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
32 layout.setConversionPattern("%d %-5p %c - %m [%t] (%F:%L)%n");
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
33 try {
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
34 FileWriter writer = new FileWriter(conf.logFile);
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
35 WriterAppender writerAppender = new WriterAppender(layout, writer);
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
36 root.removeAllAppenders();
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
37 root.addAppender(writerAppender);
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
38 } catch (IOException e) {
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
39 e.printStackTrace();
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
40 }
3155337e754e add logger
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 22
diff changeset
41 log.info("configurated");
12
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
42 }
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
43
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
44 public void listen() {
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
45 try {
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
46 ServerSocketChannel ssChannel = ServerSocketChannel.open();
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
47 ServerSocket ss = ssChannel.socket();
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
48 ss.setReuseAddress(true);
63
498d1d2524d3 change getDataSegmentKey
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 39
diff changeset
49
182
52a1fa5ba38b add filp api
e095732
parents: 175
diff changeset
50 //InetSocketAddress a = new InetSocketAddress("::", conf.localPort);
52a1fa5ba38b add filp api
e095732
parents: 175
diff changeset
51 InetSocketAddress a = new InetSocketAddress(InetAddress.getLocalHost(), conf.localPort);
52a1fa5ba38b add filp api
e095732
parents: 175
diff changeset
52 //System.out.println(a);
173
23d6a775a643 fix getResource fail
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 63
diff changeset
53 ss.bind(a);
22
2ca2d961a8d2 implements outline of TopologyManager
kazz <kazz@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
54 acceptThread = new AcceptThread(ss, "ACCEPT" + conf.localPort);
12
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
55 acceptThread.start();
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
56 } catch (IOException e) {
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
57 e.printStackTrace();
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
58 }
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
59
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
60 }
c4d6ff56b9bf unite Command and Reply
one
parents:
diff changeset
61 }