Mercurial > hg > Members > nobuyasu > jungle-network
annotate src/main/java/app/bbs/codesegment/StartBBSCodeSegment.java @ 186:ef5045af0753
add permission .java
author | tatsuki |
---|---|
date | Tue, 16 Sep 2014 07:49:14 +0900 |
parents | 89db8388db0f |
children | 269bada9eedc |
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 | |
154 | 8 import org.eclipse.jetty.server.Server; |
9 import org.eclipse.jetty.servlet.ServletHandler; | |
10 import org.eclipse.jetty.servlet.ServletHolder; | |
155 | 11 import org.eclipse.jetty.util.thread.ThreadPool; |
154 | 12 |
125 | 13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.CreateBoardMessageServlet; |
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.CreateBoardServlet; | |
178 | 15 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
|
16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.EditMessageUseGetServlet; |
125 | 17 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.bbs.ShowBoardsServlet; |
18 | |
154 | 19 |
44 | 20 |
21 import alice.codesegment.CodeSegment; | |
22 import alice.datasegment.CommandType; | |
23 import alice.datasegment.Receiver; | |
124 | 24 import app.bbs.NetworkBulletinBoard; |
112 | 25 import app.bbs.NetworkJungleBulletinBoard; |
143
7a7bac51a3cc
Added RequestNumCheckServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
140
diff
changeset
|
26 import app.bbs.RequestNumCheckServlet; |
146
29734d7d6521
Added ShowMessageWithTimeStampServlet
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
143
diff
changeset
|
27 import app.bbs.ShowMessageWithTimeStampServlet; |
170 | 28 import app.bbs.thinks.CreateNode; |
29 import app.bbs.thinks.EditAttributeServlet; | |
30 import app.bbs.thinks.EditNodeName; | |
166 | 31 import app.bbs.thinks.ShowMatrix; |
32 import app.bbs.thinks.createAttributeMatrix; | |
170 | 33 import app.bbs.thinks.deleteAttributeServlet; |
34 import app.bbs.thinks.deleteNodeServlet; | |
186 | 35 import app.bbs.thinks.permission; |
106
f42f2e6b31de
Removed project reference and Added dependency in pom.xml
one
parents:
105
diff
changeset
|
36 |
44 | 37 public class StartBBSCodeSegment extends CodeSegment { |
155 | 38 |
39 int bbsPort = 8080; | |
40 Receiver host = ids.create(CommandType.PEEK); | |
41 private Pattern pattern = Pattern.compile("^(node|cli)([0-9]+)$"); | |
42 private String[] args; | |
43 boolean persistentFlag = false; | |
44 | |
45 public StartBBSCodeSegment(String[] _args, int p) { | |
46 args = _args; | |
47 bbsPort = p; | |
48 host.setKey("host"); | |
49 } | |
50 | |
51 public StartBBSCodeSegment() { | |
52 args = null; | |
53 host.setKey("host"); | |
54 } | |
55 | |
56 @Override | |
57 public void run() { | |
58 String name = host.asString(); | |
59 Matcher matcher = pattern.matcher(name); | |
60 matcher.find(); | |
61 // String type = matcher.group(1); | |
62 for(String arg: args) { | |
63 if(arg.equals("-persistent")){ | |
64 persistentFlag = true; | |
65 } | |
66 } | |
67 NetworkBulletinBoard cassaBBS = null; | |
68 if(persistentFlag) { | |
69 System.out.println("log loading..."); | |
70 cassaBBS = NetworkJungleBulletinBoard.NewPersistentJungle(name); | |
71 cassaBBS.init(); | |
72 } else { | |
73 cassaBBS = new NetworkJungleBulletinBoard(name); | |
74 cassaBBS.init(); | |
75 } | |
48 | 76 |
155 | 77 System.out.println("StartBBSCodeSegment"); |
78 System.out.println("name : "+ name); | |
79 /* Jetty registration */ | |
80 String createBoardMessagePath = "/createBoardMessage"; | |
166 | 81 String createFolderPath = "/createFolder"; |
155 | 82 String createBoardPath = "/createBoard"; |
83 String editMessagePath = "/editMessage"; | |
84 String showBoardMessagePath = "/showBoardMessage"; | |
166 | 85 String showMatrixPath = "/showMatrix"; |
86 String createAttributePath = "/createAttribute"; | |
169 | 87 String editAttributePath = "/editAttribute"; |
170 | 88 String deleteAttributePath = "/deleteAttribute"; |
89 String deleteNodePath = "/deleteNode"; | |
178 | 90 String editNodePath = "/editNode"; |
186 | 91 String permissionPath = "/permission"; |
155 | 92 Server serv = new Server(bbsPort); |
93 ThreadPool thp = serv.getThreadPool(); | |
94 Servlet createBoardMessage = new CreateBoardMessageServlet(cassaBBS); | |
170 | 95 Servlet createFolder = new CreateNode(cassaBBS); |
155 | 96 Servlet createBoard = new CreateBoardServlet(cassaBBS); |
178 | 97 Servlet editNode = new EditNodeName(cassaBBS); |
166 | 98 Servlet createAttribute = new createAttributeMatrix(cassaBBS); |
170 | 99 Servlet editAttribute = new EditAttributeServlet(cassaBBS); |
100 Servlet deleteAttribute = new deleteAttributeServlet(cassaBBS); | |
101 Servlet deleteNode = new deleteNodeServlet(cassaBBS); | |
178 | 102 Servlet editBoardMessage = new EditMessageServlet(cassaBBS); |
155 | 103 Servlet index = new ShowBoardsServlet(cassaBBS,createBoardPath,showBoardMessagePath); |
104 // Servlet board = new ShowBoardMessageServlet(cassaBBS,createBoardMessagePath,editMessagePath); | |
166 | 105 Servlet board = new ShowMessageWithTimeStampServlet(cassaBBS,createBoardMessagePath,editMessagePath,showMatrixPath, thp); |
178 | 106 Servlet matrix = new ShowMatrix(cassaBBS,createFolderPath,editNodePath, showMatrixPath, createAttributePath, editAttributePath,deleteAttributePath,deleteNodePath,thp); |
186 | 107 Servlet per = new permission(cassaBBS,permissionPath,thp); |
155 | 108 ServletHandler context = new ServletHandler(); |
178 | 109 context.addServletWithMapping(new ServletHolder(editBoardMessage),editMessagePath); |
110 | |
155 | 111 context.addServletWithMapping(new ServletHolder(createBoardMessage),createBoardMessagePath); |
166 | 112 context.addServletWithMapping(new ServletHolder(createFolder),createFolderPath); |
155 | 113 context.addServletWithMapping(new ServletHolder(createBoard),createBoardPath); |
178 | 114 context.addServletWithMapping(new ServletHolder(editNode),editNodePath); |
166 | 115 context.addServletWithMapping(new ServletHolder(createAttribute),createAttributePath); |
155 | 116 context.addServletWithMapping(new ServletHolder(index),"/"); |
170 | 117 context.addServletWithMapping(new ServletHolder(deleteAttribute),deleteAttributePath); |
118 context.addServletWithMapping(new ServletHolder(deleteNode),deleteNodePath); | |
169 | 119 context.addServletWithMapping(new ServletHolder(editAttribute),editAttributePath); |
155 | 120 context.addServletWithMapping(new ServletHolder(board),showBoardMessagePath); |
166 | 121 context.addServletWithMapping(new ServletHolder(matrix),showMatrixPath); |
186 | 122 context.addServletWithMapping(new ServletHolder(per),permissionPath); |
155 | 123 /* |
124 * For write benchmark | |
125 */ | |
126 String editMessageUseGetPath = "/editMessageUseGet"; | |
127 Servlet editMessageUseGet = new EditMessageUseGetServlet(cassaBBS); | |
128 context.addServletWithMapping(new ServletHolder(editMessageUseGet), editMessageUseGetPath); | |
129 String requestNumCheckPath = "/requestNum"; | |
130 Servlet requestNumCheckServlet = new RequestNumCheckServlet(cassaBBS); | |
131 context.addServletWithMapping(new ServletHolder(requestNumCheckServlet), requestNumCheckPath); | |
132 | |
133 serv.setHandler(context); | |
134 try { | |
135 serv.start(); | |
136 } catch (Exception e) { | |
137 e.printStackTrace(); | |
138 } | |
139 new LogUpdateCodeSegment(); | |
140 } | |
44 | 141 |
142 } |