Package com.sun.net.httpserver

Examples of com.sun.net.httpserver.HttpServer


    public QpidRestAPI(final String addr, final int port, String broker, final int backlog, final String webroot)
        throws IOException
    {
        final InetSocketAddress inetaddr = (addr == null) ? new InetSocketAddress(port) :
                                                            new InetSocketAddress(addr, port);
        final HttpServer server = HttpServer.create(inetaddr, backlog);

        broker = (broker == null) ? inetaddr.getAddress().getHostAddress() + ":5672" : broker;

        Delegator fileserver = new Delegator(new FileServer(webroot + "/web", true));
        Delegator qpidserver  = new Delegator(new QpidServer(broker));

        Authenticator authenticator = new Authenticator(this.getClass().getCanonicalName(), webroot + "/authentication");

        server.setExecutor(Executors.newCachedThreadPool());
        server.createContext("/", fileserver);
        server.createContext("/ui", fileserver).setAuthenticator(authenticator);
        server.createContext("/qpid/connection", qpidserver).setAuthenticator(authenticator);
        server.start();
    }
View Full Code Here


  @Override
  public void run() {
    try {
        Thread.sleep(2000);
        logger.error("jobManager:" + jobManager + ", config:" + jobManager.getConfig());
      HttpServer httpServer = HttpServer.create(
          new InetSocketAddress(jobManager.getConfig().getHttpPort()), 0);
      httpServer.createContext(
          jobManager.getConfig().getHttpContext(),
          new HttpHandler() {
            private AtomicInteger checkCnt=new AtomicInteger(0);
            private AtomicInteger configCnt=new AtomicInteger(0);
            @Override
            public void handle(final HttpExchange arg0)throws IOException {
                try{
                  String qu=arg0.getRequestURI().getQuery();
                  if(qu==null) qu="command=check";
                  java.util.Map<String, String> quMap=new java.util.HashMap<String, String>();
                  StringBuilder sb = new StringBuilder();
                  StringTokenizer st = new StringTokenizer(qu, "&");
                    while (st.hasMoreTokens()) {
                          String pair = st.nextToken();
                          int pos = pair.indexOf('=');
                          if (pos != -1) {
                            String key = parseName(pair.substring(0, pos), sb);
                            String val = parseName(pair.substring(pos+1, pair.length()), sb);
                            quMap.put(key, java.net.URLDecoder.decode(val,"UTF-8"));
                          }
                     }
                   
                  String command=quMap.get(COMMAND);
                 
                  if(command==null||"".equals(command)) command=COMMAND_CHECK;
                 
                  logger.warn("http agent node accept command "+command);
                  java.lang.StringBuilder exetime=new StringBuilder("the command:");
                  exetime.append(command);
                  exetime.append(" execute time:");
                 
                 
                  if(COMMAND_CHECK.equals(command)){
                    long start=System.currentTimeMillis();
                    handleCheck(arg0.getRequestBody(),arg0.getResponseBody(),new Callback(){
                      @Override
                      public void callback(int code,long len) throws IOException{
                        arg0.sendResponseHeaders(code, len);
                       
                      }
                     
                    });
                    long end=System.currentTimeMillis();
                    checkCnt.incrementAndGet();
                    exetime.append(end-start);
                    exetime.append(",execute count:");
                    exetime.append(checkCnt.get());
                    logger.warn(exetime.toString());
                    return;
                  }
                 
                  if(COMMAND_MANAGE.equals(command)){
                                        long start=System.currentTimeMillis();
                                        String method=quMap.get(METHOD);
                                        String level=quMap.get(LEVEL);
                                        String instance=quMap.get(INSTANCE);
                                        String entry=quMap.get(ENTRY);
                                        String key=quMap.get("key");
                                        String value=quMap.get("value");
                                        handleManage(arg0.getRequestBody(),arg0.getResponseBody(),new Callback(){
                                            @Override
                                            public void callback(int code,long len) throws IOException{
                                                arg0.sendResponseHeaders(code, len);
                                               
                                            }
                                           
                                        },method,level,instance,entry,key,value);
                                       
                                        long end=System.currentTimeMillis();
                                        exetime.append(end-start);
                                        exetime.append(",execute count:");
                                        logger.warn(exetime.toString());
                                        return;
                                    }
                 
                  if(COMMAND_CONFIG.equals(command)){
                    long start=System.currentTimeMillis();
                    String instance=quMap.get(INSTANCE);
                    String type=quMap.get(TYPE);
                    String method=quMap.get(METHOD);
                    handleConfig(arg0.getRequestBody(),arg0.getResponseBody(),new Callback(){
                      @Override
                      public void callback(int code,long len) throws IOException{
                        arg0.sendResponseHeaders(code, len);
                       
                      }
                     
                    },type,method,instance);
                    long end=System.currentTimeMillis();
                    configCnt.incrementAndGet();
                    exetime.append(end-start);
                    exetime.append(",execute count:");
                    exetime.append(configCnt.get());
                    logger.warn(exetime.toString());
                    return;
                  }
                 
                  logger.error("http agent node command:"+command+" was not supported");
                 
                }catch(Throwable t){
                  logger.error("http handle error", t);
                }
            }

          });
      httpServer.start();
    } catch (Throwable e) {
      logger.error("nested http server error", e);
    }
  }
View Full Code Here

   *
   * @param port the port to be used for the HTTP connection
   */
  public GoogleEarthKMLProvider(int port) {
    try {
      HttpServer server = HttpServer.create(new InetSocketAddress(port), 0);
      server.createContext( "/", new KMLCodeProvider() );
      server.start();
    } catch (IOException e) {
      System.out.println("IOException in GoogleEarthKMLProvider(): " + e.getMessage());
    }
  }
View Full Code Here

    public QpidRestAPI(final String addr, final int port, String broker, final int backlog, final String webroot)
        throws IOException
    {
        final InetSocketAddress inetaddr = (addr == null) ? new InetSocketAddress(port) :
                                                            new InetSocketAddress(addr, port);
        final HttpServer server = HttpServer.create(inetaddr, backlog);

        broker = (broker == null) ? inetaddr.getAddress().getHostAddress() + ":5672" : broker;

        Delegator fileserver = new Delegator(new FileServer(webroot + "/web", true));
        Delegator qpidserver  = new Delegator(new QpidServer(broker));

        Authenticator authenticator = new Authenticator(this.getClass().getCanonicalName(), webroot + "/authentication");

        server.setExecutor(Executors.newCachedThreadPool());
        server.createContext("/", fileserver);
        server.createContext("/ui", fileserver).setAuthenticator(authenticator);
        server.createContext("/qpid/connection", qpidserver).setAuthenticator(authenticator);
        server.start();
    }
View Full Code Here

    Endpoint.registerHandler("/", new HTMLFormHandler());
  }

  public static void startServer(final int port){
    try {
      final HttpServer server = HttpServer.create(new InetSocketAddress(port), 0);

      for(final Entry<String, HttpHandler> entry: Endpoint.registeredhandler.entrySet()){
        server.createContext(entry.getKey(), entry.getValue());
      }

      server.setExecutor(null);
      server.start();
    } catch (final Exception e) {
      System.err.println(e);
      e.printStackTrace();
    }
  }
View Full Code Here

            if(factory == null) {
                s_logger.error("Unable to load HTTP server factory");
                System.exit(1);
            }
           
            HttpServer server = factory.createHttpServerInstance(httpListenPort);
            server.createContext("/getscreen", new ConsoleProxyThumbnailHandler());
            server.createContext("/resource/", new ConsoleProxyResourceHandler());
            server.createContext("/ajax", new ConsoleProxyAjaxHandler());
            server.createContext("/ajaximg", new ConsoleProxyAjaxImageHandler());
            server.setExecutor(new ThreadExecutor()); // creates a default executor
            server.start();
        } catch(Exception e) {
            s_logger.error(e.getMessage(), e);
            System.exit(1);
        }
    }
View Full Code Here

    }
   
    private static void startupHttpCmdPort() {
        try {
            s_logger.info("Listening for HTTP CMDs on port " + httpCmdListenPort);
            HttpServer cmdServer = HttpServer.create(new InetSocketAddress(httpCmdListenPort), 2);
            cmdServer.createContext("/cmd", new ConsoleProxyCmdHandler());
            cmdServer.setExecutor(new ThreadExecutor()); // creates a default executor
            cmdServer.start();
        } catch(Exception e) {
            s_logger.error(e.getMessage(), e);
            System.exit(1);
        }
    }
View Full Code Here

        else if (path.charAt(0) != '/')
            throw new IllegalArgumentException("The URI path, of the URI " + u +
                    ". must start with a '/'");
       
        final int port = (u.getPort() == -1) ? 80 : u.getPort();   
        final HttpServer server = (scheme.equalsIgnoreCase("http")) ?
            HttpServer.create(new InetSocketAddress(port), 0) :
            HttpsServer.create(new InetSocketAddress(port), 0);

        server.setExecutor(Executors.newCachedThreadPool());
        server.createContext(path, handler);       
        return server;
    }
View Full Code Here

    public void testClient() throws IOException {
        Client c = Client.create();

        int port = getEnvVariable("JERSEY_HTTP_PORT", 9998);

        HttpServer server = null;
        try {
            server = HttpServer.create(new InetSocketAddress(port), 0);

            HttpHandler handler = new HttpHandler() {
                public void handle(HttpExchange e) throws IOException {
                    InputStream in = e.getRequestBody();
                    ByteArrayOutputStream _out = new ByteArrayOutputStream();
                    byte[] buf = new byte[2048];
                    int read = 0;
                    while ((read = in.read(buf)) != -1) {
                        _out.write(buf, 0, read);
                    }

                    e.sendResponseHeaders(200, 0);

                    OutputStream out = e.getResponseBody();
                    in = new ByteArrayInputStream(_out.toByteArray());
                    while ((read = in.read(buf)) != -1) {
                        out.write(buf, 0, read);
                    }
                    out.flush();
                    e.close();
                }
            };
            server.createContext("/", handler);
            server.start();
           
            URI u = UriBuilder.fromUri("http://localhost/").port(port).build();
            WebResource r = c.resource(u);

            String s = r.type("text/plain").post(String.class, "CONTENT");
            assertEquals("CONTENT", s);
        } finally {
            if (server != null)
                server.stop(getEnvVariable("JERSEY_HTTP_STOPSEC", 0));
        }
    }
View Full Code Here

            opts[0] = new Option("--help", "-h", false);
            opts[1] = new Option("--accept", "-a", true);
            if (!parseOptions(args, opts)) {
                return;
            }
            HttpServer server = HttpServer.create(
                    new InetSocketAddress((Integer) opts[1].value), 0);
            server.createContext("/", new MyHandler());
            server.setExecutor(null);
            server.start();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }        // TODO code application logic here
View Full Code Here

TOP

Related Classes of com.sun.net.httpserver.HttpServer

Copyright © 2018 www.massapicom. 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.