annotate src/main/java/jp/ac/u_ryukyu/ie/cr/bbs/local/App.java @ 1:64a72a7a0491

add local bbs
author tatsuki
date Mon, 27 Jun 2016 04:24:25 +0900
parents
children 5acde010c6db
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
1 package jp.ac.u_ryukyu.ie.cr.bbs.local;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
2
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
3 import me.prettyprint.hector.api.HConsistencyLevel;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
4 import org.mortbay.jetty.Connector;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
5 import org.mortbay.jetty.Server;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
6 import org.mortbay.jetty.nio.SelectChannelConnector;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
7 import org.mortbay.jetty.servlet.ServletHandler;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
8 import org.mortbay.jetty.servlet.ServletHolder;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
9 import org.mortbay.thread.QueuedThreadPool;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
10
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
11 import javax.servlet.Servlet;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
12
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
13
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
14 /**
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
15 * Hello world!
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
16 *
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
17 */
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
18 public class App
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
19 {
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
20 public static void main( String[] args ) throws Exception
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
21 {
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
22 BulletinBoard cassaBBS = null;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
23 if(args.length == 0){
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
24 cassaBBS = new JungleBulletinBoard();
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
25 }else{
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
26 HConsistencyLevel cLevel = HConsistencyLevel.QUORUM;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
27 int rep_factor = 1;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
28 int i=0;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
29 while(i<args.length) {
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
30 if(args[i].equals("-all")) {
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
31 cLevel = HConsistencyLevel.ALL;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
32 }else if(args[i].equals("-one")){
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
33 cLevel = HConsistencyLevel.ONE;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
34 }else if(args[i].equals("-quorum")){
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
35 cLevel = HConsistencyLevel.QUORUM;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
36 }else if(args[i].equals("-any")){
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
37 cLevel = HConsistencyLevel.ANY;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
38 }else if(args[i].equals("-rep")){
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
39 i++;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
40 rep_factor = Integer.parseInt(args[i]);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
41 }
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
42 i++;
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
43 }
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
44 System.out.println("ConsistencyLevel "+cLevel.toString());
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
45 System.out.println("Replication factor "+rep_factor);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
46 cassaBBS = new CassandraBulletinBoard("test-cluster","localhost:9160","cassaBBS2", cLevel, rep_factor);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
47 }
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
48
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
49 String createBoardMessagePath = "/createBoardMessage";
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
50 String createBoardPath = "/createBoard";
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
51 String editMessagePath = "/editMessage";
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
52 String showBoardMessagePath = "/showBoardMessage";
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
53
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
54 Servlet createBoardMessage = new CreateBoardMessageServlet(cassaBBS);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
55 Servlet createBoard = new CreateBoardServlet(cassaBBS);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
56 Servlet editBoardMessage = new EditMessageServlet(cassaBBS);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
57 Servlet index = new ShowBoardsServlet(cassaBBS,createBoardPath,showBoardMessagePath);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
58 Servlet board = new ShowBoardMessageServlet(cassaBBS,createBoardMessagePath,editMessagePath);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
59
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
60 // Server serv = new Server(8080);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
61 Server serv = new Server();
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
62 SelectChannelConnector connector = new SelectChannelConnector();
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
63 connector.setPort(8080);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
64 connector.setThreadPool(new QueuedThreadPool(1000));
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
65 serv.setConnectors(new Connector[] { connector });
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
66
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
67 ServletHandler context = new ServletHandler();
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
68 context.addServletWithMapping(new ServletHolder(createBoardMessage),createBoardMessagePath);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
69 context.addServletWithMapping(new ServletHolder(createBoard),createBoardPath);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
70 context.addServletWithMapping(new ServletHolder(editBoardMessage),editMessagePath);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
71 context.addServletWithMapping(new ServletHolder(index),"/");
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
72 context.addServletWithMapping(new ServletHolder(board),showBoardMessagePath);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
73 /*
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
74 * For write benchmark
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
75 */
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
76 String editMessageUseGetPath = "/editMessageUseGet";
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
77 Servlet editMessageUseGet = new EditMessageUseGetServlet(cassaBBS);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
78 context.addServletWithMapping(new ServletHolder(editMessageUseGet), editMessageUseGetPath);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
79
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
80 serv.addHandler(context);
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
81 serv.start();
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
82 }
64a72a7a0491 add local bbs
tatsuki
parents:
diff changeset
83 }