view src/jungle/test/bbs/DistributeApp.java @ 39:10359a815068

add alice.jungle.codesegment.remote
author one
date Tue, 09 Jul 2013 15:10:06 +0900
parents src/jungle/test/bbs/App.java@d8ee57a1c2c6
children 7e94de2d6bc0
line wrap: on
line source

package jungle.test.bbs;

import javax.servlet.Servlet;

import org.mortbay.jetty.Server;
import org.mortbay.jetty.servlet.ServletHandler;
import org.mortbay.jetty.servlet.ServletHolder;

import alice.daemon.AliceDaemon;
import alice.datasegment.DataSegment;
import alice.jungle.codesegment.LogUpdateCodeSegment;
import alice.jungle.remote.RemoteConfig;

/**
 * Hello world!
 *
 */
public class DistributeApp 
{
    public static void main( String[] args ) throws Exception
    {
    	BulletinBoard cassaBBS = null;
   		cassaBBS = new NetworkJungleBulletinBoard();
   		RemoteConfig conf = new RemoteConfig(args);
   		new AliceDaemon(conf).listen();
   		if(conf.hostname != null) {
   			DataSegment.connect(conf.key, "", conf.hostname, conf.connectPort);
   			LogUpdateCodeSegment cs = new LogUpdateCodeSegment();
   			cs.arg1.setKey("remote", "log");
   			
   		}
		

    	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);
    	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);
    	serv.addHandler(context);
    	serv.start();
    }
}