8
|
1 package jp.ac.u_ryukyu.ie.cr.bbs.local.bbs;
|
1
|
2
|
|
3 import me.prettyprint.hector.api.HConsistencyLevel;
|
7
|
4 import org.eclipse.jetty.server.Server;
|
|
5 import org.eclipse.jetty.servlet.ServletHandler;
|
|
6 import org.eclipse.jetty.servlet.ServletHolder;
|
1
|
7
|
|
8 import javax.servlet.Servlet;
|
|
9
|
|
10
|
|
11 /**
|
|
12 * Hello world!
|
|
13 *
|
|
14 */
|
|
15 public class App
|
|
16 {
|
|
17 public static void main( String[] args ) throws Exception
|
|
18 {
|
|
19 BulletinBoard cassaBBS = null;
|
|
20 if(args.length == 0){
|
|
21 cassaBBS = new JungleBulletinBoard();
|
|
22 }else{
|
|
23 HConsistencyLevel cLevel = HConsistencyLevel.QUORUM;
|
|
24 int rep_factor = 1;
|
|
25 int i=0;
|
|
26 while(i<args.length) {
|
|
27 if(args[i].equals("-all")) {
|
|
28 cLevel = HConsistencyLevel.ALL;
|
|
29 }else if(args[i].equals("-one")){
|
|
30 cLevel = HConsistencyLevel.ONE;
|
|
31 }else if(args[i].equals("-quorum")){
|
|
32 cLevel = HConsistencyLevel.QUORUM;
|
|
33 }else if(args[i].equals("-any")){
|
|
34 cLevel = HConsistencyLevel.ANY;
|
|
35 }else if(args[i].equals("-rep")){
|
|
36 i++;
|
|
37 rep_factor = Integer.parseInt(args[i]);
|
|
38 }
|
|
39 i++;
|
|
40 }
|
|
41 System.out.println("ConsistencyLevel "+cLevel.toString());
|
|
42 System.out.println("Replication factor "+rep_factor);
|
|
43 cassaBBS = new CassandraBulletinBoard("test-cluster","localhost:9160","cassaBBS2", cLevel, rep_factor);
|
|
44 }
|
4
|
45
|
1
|
46 String createBoardMessagePath = "/createBoardMessage";
|
|
47 String createBoardPath = "/createBoard";
|
|
48 String editMessagePath = "/editMessage";
|
|
49 String showBoardMessagePath = "/showBoardMessage";
|
|
50
|
|
51 Servlet createBoardMessage = new CreateBoardMessageServlet(cassaBBS);
|
|
52 Servlet createBoard = new CreateBoardServlet(cassaBBS);
|
|
53 Servlet editBoardMessage = new EditMessageServlet(cassaBBS);
|
|
54 Servlet index = new ShowBoardsServlet(cassaBBS,createBoardPath,showBoardMessagePath);
|
|
55 Servlet board = new ShowBoardMessageServlet(cassaBBS,createBoardMessagePath,editMessagePath);
|
|
56
|
7
|
57 Server serv = new Server(8080);
|
|
58 // Server serv = new Server();
|
1
|
59 ServletHandler context = new ServletHandler();
|
|
60 context.addServletWithMapping(new ServletHolder(createBoardMessage),createBoardMessagePath);
|
|
61 context.addServletWithMapping(new ServletHolder(createBoard),createBoardPath);
|
|
62 context.addServletWithMapping(new ServletHolder(editBoardMessage),editMessagePath);
|
|
63 context.addServletWithMapping(new ServletHolder(index),"/");
|
|
64 context.addServletWithMapping(new ServletHolder(board),showBoardMessagePath);
|
|
65 /*
|
|
66 * For write benchmark
|
|
67 */
|
|
68 String editMessageUseGetPath = "/editMessageUseGet";
|
|
69 Servlet editMessageUseGet = new EditMessageUseGetServlet(cassaBBS);
|
|
70 context.addServletWithMapping(new ServletHolder(editMessageUseGet), editMessageUseGetPath);
|
|
71
|
7
|
72 serv.setHandler(context);
|
1
|
73 serv.start();
|
|
74 }
|
|
75 }
|