annotate src/jungle/test/bbs/codesegment/StartBBSCodeSegment.java @ 59:8a532ca5df80

refactoring LogUpdateCodeSegment and ChildLogCheckCodeSegment
author one
date Mon, 15 Jul 2013 10:59:53 +0900
parents f47a02368099
children ebf42371454b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
44
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
1 package jungle.test.bbs.codesegment;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
2
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
3 import java.util.regex.Pattern;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
4 import java.util.regex.Matcher;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
5
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
6 import javax.servlet.Servlet;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
7
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
8 import jungle.test.bbs.BulletinBoard;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
9 import jungle.test.bbs.CreateBoardMessageServlet;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
10 import jungle.test.bbs.CreateBoardServlet;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
11 import jungle.test.bbs.EditMessageServlet;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
12 import jungle.test.bbs.NetworkJungleBulletinBoard;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
13 import jungle.test.bbs.ShowBoardMessageServlet;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
14 import jungle.test.bbs.ShowBoardsServlet;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
15
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
16 import org.mortbay.jetty.Server;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
17 import org.mortbay.jetty.servlet.ServletHandler;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
18 import org.mortbay.jetty.servlet.ServletHolder;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
19
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
20 import alice.codesegment.CodeSegment;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
21 import alice.datasegment.CommandType;
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
22 import alice.datasegment.Receiver;
52
61b2de3f7730 add HashSetDataSegment and HashLogUpdateCodeSegment.
one
parents: 50
diff changeset
23 import alice.jungle.datasegment.HashSetDataSegment;
44
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
24
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
25 public class StartBBSCodeSegment extends CodeSegment {
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
26
48
ab8c655ef457 implemented bbsPort setting
one
parents: 47
diff changeset
27 int bbsPort = 8080;
44
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
28 Receiver host = ids.create(CommandType.PEEK);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
29 private Pattern pattern = Pattern.compile("^(node|cli)([0-9]+)$");
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
30
48
ab8c655ef457 implemented bbsPort setting
one
parents: 47
diff changeset
31 public StartBBSCodeSegment(int p) {
ab8c655ef457 implemented bbsPort setting
one
parents: 47
diff changeset
32 bbsPort = p;
ab8c655ef457 implemented bbsPort setting
one
parents: 47
diff changeset
33 host.setKey("host");
ab8c655ef457 implemented bbsPort setting
one
parents: 47
diff changeset
34 }
ab8c655ef457 implemented bbsPort setting
one
parents: 47
diff changeset
35
44
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
36 public StartBBSCodeSegment() {
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
37 host.setKey("host");
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
38 }
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
39
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
40 public void run() {
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
41 System.out.println("StartBBSCodeSegment");
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
42 String name = host.asString();
46
fd3643699f83 modified pom.xml. fix conflict log4j libraries
one
parents: 45
diff changeset
43 System.out.println("name : "+ name);
44
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
44 Matcher matcher = pattern.matcher(name);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
45 matcher.find();
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
46 String type = matcher.group(1);
52
61b2de3f7730 add HashSetDataSegment and HashLogUpdateCodeSegment.
one
parents: 50
diff changeset
47
61b2de3f7730 add HashSetDataSegment and HashLogUpdateCodeSegment.
one
parents: 50
diff changeset
48
44
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
49 BulletinBoard cassaBBS = new NetworkJungleBulletinBoard(name);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
50 String createBoardMessagePath = "/createBoardMessage";
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
51 String createBoardPath = "/createBoard";
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
52 String editMessagePath = "/editMessage";
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
53 String showBoardMessagePath = "/showBoardMessage";
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
54
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
55 Servlet createBoardMessage = new CreateBoardMessageServlet(cassaBBS);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
56 Servlet createBoard = new CreateBoardServlet(cassaBBS);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
57 Servlet editBoardMessage = new EditMessageServlet(cassaBBS);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
58 Servlet index = new ShowBoardsServlet(cassaBBS,createBoardPath,showBoardMessagePath);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
59 Servlet board = new ShowBoardMessageServlet(cassaBBS,createBoardMessagePath,editMessagePath);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
60
48
ab8c655ef457 implemented bbsPort setting
one
parents: 47
diff changeset
61 Server serv = new Server(bbsPort);
44
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
62 ServletHandler context = new ServletHandler();
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
63 context.addServletWithMapping(new ServletHolder(createBoardMessage),createBoardMessagePath);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
64 context.addServletWithMapping(new ServletHolder(createBoard),createBoardPath);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
65 context.addServletWithMapping(new ServletHolder(editBoardMessage),editMessagePath);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
66 context.addServletWithMapping(new ServletHolder(index),"/");
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
67 context.addServletWithMapping(new ServletHolder(board),showBoardMessagePath);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
68 serv.addHandler(context);
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
69 try {
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
70 serv.start();
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
71 } catch (Exception e) {
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
72 e.printStackTrace();
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
73 }
49
a89c3539bff2 modified LogUpdateCodeSegment
one
parents: 48
diff changeset
74
50
459b50f1a6ee add ChildLogCheckCodeSegment.
one
parents: 49
diff changeset
75 new ChildLogCheckCodeSegment();
52
61b2de3f7730 add HashSetDataSegment and HashLogUpdateCodeSegment.
one
parents: 50
diff changeset
76 HashSetDataSegment hashLog = new HashSetDataSegment();
61b2de3f7730 add HashSetDataSegment and HashLogUpdateCodeSegment.
one
parents: 50
diff changeset
77 ods.put("hashLog", hashLog);
61b2de3f7730 add HashSetDataSegment and HashLogUpdateCodeSegment.
one
parents: 50
diff changeset
78
49
a89c3539bff2 modified LogUpdateCodeSegment
one
parents: 48
diff changeset
79 int num = new Integer(matcher.group(2));
a89c3539bff2 modified LogUpdateCodeSegment
one
parents: 48
diff changeset
80 if (num != 0) {
a89c3539bff2 modified LogUpdateCodeSegment
one
parents: 48
diff changeset
81 // try {Thread.sleep(100);} catch(Exception e) { e.printStackTrace(); }
50
459b50f1a6ee add ChildLogCheckCodeSegment.
one
parents: 49
diff changeset
82 new LogUpdateCodeSegment();
49
a89c3539bff2 modified LogUpdateCodeSegment
one
parents: 48
diff changeset
83 }
a89c3539bff2 modified LogUpdateCodeSegment
one
parents: 48
diff changeset
84
a89c3539bff2 modified LogUpdateCodeSegment
one
parents: 48
diff changeset
85
44
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
86
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
87 }
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
88
9202247e6077 added StartBBSCodeSegment
one
parents:
diff changeset
89 }