Package org.xadoop

Source Code of org.xadoop.RunXadoopStandalone

package org.xadoop;

import java.io.File;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.mortbay.jetty.Server;
import org.mortbay.jetty.servlet.Context;
import org.mortbay.jetty.servlet.ServletHolder;
import org.xadoop.servlet.ResourcesServlet;
import org.xadoop.servlet.XadoopServlet;

/**
* Entry point to standalone Xadoop.
*
* @author Lukas Blunschi
*
*/
public class RunXadoopStandalone {

  private static Log log = LogFactory.getLog(RunXadoopStandalone.class);

  /**
   * @param args
   */
  public static void main(String[] args) {
    new RunXadoopStandalone().run();
  }
 
  private void run() {

    // starting xadoop
    log.info("Xadoop starting...");

    // context name and port
    String contextName = "xadoop";
    int port = 8010;
    log.info("Context name: " + contextName + ", Port: " + port);

    // current directory
    File currentDir = new File(".");
    log.info("Current directory: " + currentDir.getAbsolutePath());

    // start jetty
    try {
      Server server = new Server(port);
      Context context = new Context(server, "/" + contextName, Context.SESSIONS);

      // add servlet
      context.addServlet(new ServletHolder(new XadoopServlet()), "/*");
      context.addServlet(new ServletHolder(new ResourcesServlet()), "/resources/*");
      context.addServlet(new ServletHolder(new ResourcesServlet()), "/upload/*");

      // init
      XadoopInit.init(context.getServletContext(), "props/", "upload/");

      // start HTTP server
      server.start();

      log.info("Xadoop " + XadoopConstants.VERSION + " running.");
    } catch (Exception e) {
      log.error("Failure during start of Jetty: " + e.getMessage());
      e.printStackTrace();
    }

    log.info("Start thread finished.");
  }

}
TOP

Related Classes of org.xadoop.RunXadoopStandalone

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.