view src/main/java/jp/ac/u_ryukyu/ie/cr/bbs/local/App.java @ 7:6c584862fe93

edit build.gradle
author tatsuki
date Sat, 19 Nov 2016 22:31:25 +0900
parents 5acde010c6db
children
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.bbs.local;

import me.prettyprint.hector.api.HConsistencyLevel;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletHandler;
import org.eclipse.jetty.servlet.ServletHolder;

import javax.servlet.Servlet;


/**
 * Hello world!
 *
 */
public class App 
{
    public static void main( String[] args ) throws Exception
    {
    	BulletinBoard cassaBBS = null;
    	if(args.length == 0){
    		cassaBBS = new JungleBulletinBoard();
    	}else{
    		HConsistencyLevel cLevel = HConsistencyLevel.QUORUM;
    		int rep_factor = 1;
    		int i=0;
    		while(i<args.length) {
    			if(args[i].equals("-all")) {
    				cLevel = HConsistencyLevel.ALL;
    			}else if(args[i].equals("-one")){
    				cLevel = HConsistencyLevel.ONE;
    			}else if(args[i].equals("-quorum")){
    				cLevel = HConsistencyLevel.QUORUM;
    			}else if(args[i].equals("-any")){
    				cLevel = HConsistencyLevel.ANY;
    			}else if(args[i].equals("-rep")){
    				i++;
    				rep_factor = Integer.parseInt(args[i]);
    			}
    			i++;
    		}
			System.out.println("ConsistencyLevel "+cLevel.toString());
			System.out.println("Replication factor "+rep_factor);
       		cassaBBS = new CassandraBulletinBoard("test-cluster","localhost:9160","cassaBBS2", cLevel, rep_factor);
   		}

    	String createBoardMessagePath = "/createBoardMessage";
    	String createBoardPath = "/createBoard";
    	String editMessagePath = "/editMessage";
    	String showBoardMessagePath = "/showBoardMessage";
    	
    	Servlet createBoardMessage = new CreateBoardMessageServlet(cassaBBS);
    	Servlet createBoard = new CreateBoardServlet(cassaBBS);
    	Servlet editBoardMessage = new EditMessageServlet(cassaBBS);
    	Servlet index = new ShowBoardsServlet(cassaBBS,createBoardPath,showBoardMessagePath);
    	Servlet board = new ShowBoardMessageServlet(cassaBBS,createBoardMessagePath,editMessagePath);
    	
    	Server serv = new Server(8080);
//    	Server serv = new Server();
    	ServletHandler context = new ServletHandler();
    	context.addServletWithMapping(new ServletHolder(createBoardMessage),createBoardMessagePath);
    	context.addServletWithMapping(new ServletHolder(createBoard),createBoardPath);
    	context.addServletWithMapping(new ServletHolder(editBoardMessage),editMessagePath);
    	context.addServletWithMapping(new ServletHolder(index),"/");
    	context.addServletWithMapping(new ServletHolder(board),showBoardMessagePath);
    	/* 
    	 * For write benchmark 
    	 */
    	String editMessageUseGetPath = "/editMessageUseGet";
    	Servlet editMessageUseGet = new EditMessageUseGetServlet(cassaBBS);
    	context.addServletWithMapping(new ServletHolder(editMessageUseGet), editMessageUseGetPath);
    	
    	serv.setHandler(context);
    	serv.start();
    }
}