Mercurial > hg > Members > nobuyasu > jungle-network
annotate src/main/java/app/bbs/codesegment/StartBBSCodeSegment.java @ 153:69b5565c4a63
no use toporogy
author | tatsuki |
---|---|
date | Sat, 05 Jul 2014 18:28:40 +0900 |
parents | 29734d7d6521 |
children | a6bf0369f0a6 |
rev | line source |
---|---|
112 | 1 package app.bbs.codesegment; |
44 | 2 |
3 import java.util.regex.Pattern; | |
4 import java.util.regex.Matcher; | |
5 | |
6 import javax.servlet.Servlet; | |
7 | |
125 | 8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.CreateBoardMessageServlet; |
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.CreateBoardServlet; | |
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.EditMessageServlet; | |
140
09b405d0830b
Removed EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
139
diff
changeset
|
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.EditMessageUseGetServlet; |
125 | 12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.ShowBoardsServlet; |
13 | |
44 | 14 import org.mortbay.jetty.Server; |
15 import org.mortbay.jetty.servlet.ServletHandler; | |
16 import org.mortbay.jetty.servlet.ServletHolder; | |
17 | |
18 import alice.codesegment.CodeSegment; | |
19 import alice.datasegment.CommandType; | |
20 import alice.datasegment.Receiver; | |
124 | 21 import app.bbs.NetworkBulletinBoard; |
112 | 22 import app.bbs.NetworkJungleBulletinBoard; |
143
7a7bac51a3cc
Added RequestNumCheckServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
140
diff
changeset
|
23 import app.bbs.RequestNumCheckServlet; |
146
29734d7d6521
Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
143
diff
changeset
|
24 import app.bbs.ShowMessageWithTimeStampServlet; |
106
f42f2e6b31de
Removed project reference and Added dependency in pom.xml
one
parents:
105
diff
changeset
|
25 |
44 | 26 public class StartBBSCodeSegment extends CodeSegment { |
27 | |
48 | 28 int bbsPort = 8080; |
44 | 29 Receiver host = ids.create(CommandType.PEEK); |
30 private Pattern pattern = Pattern.compile("^(node|cli)([0-9]+)$"); | |
124 | 31 private String[] args; |
32 boolean persistentFlag = false; | |
44 | 33 |
124 | 34 public StartBBSCodeSegment(String[] _args, int p) { |
35 args = _args; | |
48 | 36 bbsPort = p; |
37 host.setKey("host"); | |
38 } | |
39 | |
44 | 40 public StartBBSCodeSegment() { |
124 | 41 args = null; |
44 | 42 host.setKey("host"); |
43 } | |
44 | |
153 | 45 @Override |
44 | 46 public void run() { |
47 String name = host.asString(); | |
48 Matcher matcher = pattern.matcher(name); | |
49 matcher.find(); | |
65 | 50 // String type = matcher.group(1); |
124 | 51 for(String arg: args) { |
52 if(arg.equals("-persistent")){ | |
53 persistentFlag = true; | |
54 } | |
55 } | |
56 NetworkBulletinBoard cassaBBS = null; | |
57 if(persistentFlag) { | |
58 System.out.println("log loading..."); | |
135
2e8034524259
Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
125
diff
changeset
|
59 cassaBBS = NetworkJungleBulletinBoard.NewPersistentJungle(name); |
2e8034524259
Added NetworkJournal and SingletonMessageFromAlice class
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
125
diff
changeset
|
60 cassaBBS.init(); |
124 | 61 } else { |
118
f64ff5bd66f5
Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents:
112
diff
changeset
|
62 cassaBBS = new NetworkJungleBulletinBoard(name); |
f64ff5bd66f5
Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents:
112
diff
changeset
|
63 cassaBBS.init(); |
f64ff5bd66f5
Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents:
112
diff
changeset
|
64 } |
f64ff5bd66f5
Implements persistent for bbs app and Fixed bug JungleUpdater
one
parents:
112
diff
changeset
|
65 |
122
cef245f71053
Implemented NetworkJungleBulletinBoard.checkAndCreateLogDirectory method
one
parents:
118
diff
changeset
|
66 System.out.println("StartBBSCodeSegment"); |
cef245f71053
Implemented NetworkJungleBulletinBoard.checkAndCreateLogDirectory method
one
parents:
118
diff
changeset
|
67 System.out.println("name : "+ name); |
65 | 68 /* Jetty registration */ |
44 | 69 String createBoardMessagePath = "/createBoardMessage"; |
70 String createBoardPath = "/createBoard"; | |
71 String editMessagePath = "/editMessage"; | |
72 String showBoardMessagePath = "/showBoardMessage"; | |
139
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
73 |
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
74 |
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
75 Servlet createBoardMessage = new CreateBoardMessageServlet(cassaBBS); |
44 | 76 Servlet createBoard = new CreateBoardServlet(cassaBBS); |
77 Servlet editBoardMessage = new EditMessageServlet(cassaBBS); | |
78 Servlet index = new ShowBoardsServlet(cassaBBS,createBoardPath,showBoardMessagePath); | |
146
29734d7d6521
Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
143
diff
changeset
|
79 // Servlet board = new ShowBoardMessageServlet(cassaBBS,createBoardMessagePath,editMessagePath); |
29734d7d6521
Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
143
diff
changeset
|
80 Servlet board = new ShowMessageWithTimeStampServlet(cassaBBS,createBoardMessagePath,editMessagePath); |
44 | 81 |
48 | 82 Server serv = new Server(bbsPort); |
44 | 83 ServletHandler context = new ServletHandler(); |
84 context.addServletWithMapping(new ServletHolder(createBoardMessage),createBoardMessagePath); | |
85 context.addServletWithMapping(new ServletHolder(createBoard),createBoardPath); | |
86 context.addServletWithMapping(new ServletHolder(editBoardMessage),editMessagePath); | |
87 context.addServletWithMapping(new ServletHolder(index),"/"); | |
88 context.addServletWithMapping(new ServletHolder(board),showBoardMessagePath); | |
139
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
89 /* |
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
90 * For write benchmark |
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
91 */ |
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
92 String editMessageUseGetPath = "/editMessageUseGet"; |
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
93 Servlet editMessageUseGet = new EditMessageUseGetServlet(cassaBBS); |
c1d75b031b15
Added EditMessageUseGetServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
137
diff
changeset
|
94 context.addServletWithMapping(new ServletHolder(editMessageUseGet), editMessageUseGetPath); |
143
7a7bac51a3cc
Added RequestNumCheckServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
140
diff
changeset
|
95 String requestNumCheckPath = "/requestNum"; |
7a7bac51a3cc
Added RequestNumCheckServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
140
diff
changeset
|
96 Servlet requestNumCheckServlet = new RequestNumCheckServlet(cassaBBS); |
7a7bac51a3cc
Added RequestNumCheckServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
140
diff
changeset
|
97 context.addServletWithMapping(new ServletHolder(requestNumCheckServlet), requestNumCheckPath); |
7a7bac51a3cc
Added RequestNumCheckServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
140
diff
changeset
|
98 |
7a7bac51a3cc
Added RequestNumCheckServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
140
diff
changeset
|
99 |
44 | 100 serv.addHandler(context); |
101 try { | |
102 serv.start(); | |
103 } catch (Exception e) { | |
104 e.printStackTrace(); | |
105 } | |
96 | 106 new LogUpdateCodeSegment(); |
44 | 107 } |
108 | |
109 } |