Examples of FutureResponseHandler


Examples of org.xlightweb.FutureResponseHandler

       
        for (int i = 0; i < 100; i++) {
            HttpClientConnection con = pool.getHttpClientConnection("localhost", container.getLocalPort());
           
            FutureResponseHandler respHdl = new FutureResponseHandler();
            BodyDataSink dataSink = con.send(new HttpRequestHeader("POST", "http://localhost:" + container.getLocalPort() + "/test"), respHdl);
           
            dataSink.write("test");
           
            IHttpResponse response = respHdl.getResponse();
            Assert.assertEquals(200, response.getStatus());
           
            BlockingBodyDataSource dataSource = response.getBlockingBody();
            Assert.assertEquals("test", dataSource.readStringByLength(4));
           
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

    HttpServer server = new HttpServer(new RequestHandler());
    server.start();
   
    HttpClientConnection con = new HttpClientConnection("localhost", server.getLocalPort());
   
    FutureResponseHandler respHdl = new FutureResponseHandler();
    BodyDataSink bodyDataSink = con.send(new HttpRequestHeader("POST", "/"), 100, respHdl);
    bodyDataSink.write(QAUtil.generateByteArray(100));
    bodyDataSink.close();
   
    IHttpResponse response = respHdl.getResponse();
    Assert.assertEquals(200, response.getStatus());
    Assert.assertEquals("it works", response.getBlockingBody().toString());
 
    con.close();
    server.close();
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

    HttpServer server = new HttpServer(new RequestHandler());
    server.start();
   
    HttpClientConnection con = new HttpClientConnection("localhost", server.getLocalPort());
   
    FutureResponseHandler respHdl = new FutureResponseHandler();
    BodyDataSink bodyDataSink = con.send(new HttpRequestHeader("POST", "/"), respHdl);
    bodyDataSink.write(QAUtil.generateByteArray(100));
    bodyDataSink.close();
   
    IHttpResponse response = respHdl.getResponse();
    Assert.assertEquals(200, response.getStatus());
    Assert.assertEquals("it works", response.getBlockingBody().toString());
 
    con.close();
    server.close();
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

    server.start();
   
    HttpClient httpClient = new HttpClient();
   
   
    FutureResponseHandler rh1 = new FutureResponseHandler();
    httpClient.send(new PostRequest("http://localhost:" + server.getLocalPort() + "/?waittimeSec=1", "text/plain", "test"), rh1);
    QAUtil.sleep(300);
    Assert.assertEquals(1, wp.getRunning());

   
    FutureResponseHandler rh2 = new FutureResponseHandler();
    httpClient.send(new PostRequest("http://localhost:" + server.getLocalPort() + "/?waittimeSec=1", "text/plain", "test"), rh2);
    QAUtil.sleep(300);
    Assert.assertEquals(2, wp.getRunning());
   
    QAUtil.sleep(1500);
    Assert.assertEquals(0, wp.getRunning());

   
    Assert.assertEquals(200, rh1.getResponse().getStatus());
    Assert.assertEquals(200, rh2.getResponse().getStatus());
   
    httpClient.close();
    server.close();
  }
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

    server.start();
   
    HttpClient httpClient = new HttpClient();
   
   
    FutureResponseHandler rh1 = new FutureResponseHandler();
    httpClient.send(new PostRequest("http://localhost:" + server.getLocalPort() + "/?waittimeSec=1", "text/plain", "test"), rh1);
    QAUtil.sleep(300);
    Assert.assertTrue("thread name " + reqHdl.getDataHandlerThreadName() + " does not starts with worker#", reqHdl.getDataHandlerThreadName().startsWith("worker#"));

    Assert.assertEquals(200, rh1.getResponse().getStatus());
   
    httpClient.close();
    server.close();
  }
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

    HttpServer server = new HttpServer(new RequestHandler());
    server.start();
   
    HttpClientConnection con = new HttpClientConnection("localhost", server.getLocalPort());
   
    FutureResponseHandler respHdl = new FutureResponseHandler();
    BodyDataSink bodyDataSink = con.send(new HttpRequestHeader("POST", "/"), 100, respHdl);
    bodyDataSink.write(QAUtil.generateByteArray(100));
    bodyDataSink.close();
   
    IHttpResponse response = respHdl.getResponse();
    Assert.assertEquals(200, response.getStatus());
    Assert.assertEquals("it works", response.getBlockingBody().toString());
 
    con.close();
    server.close();
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

    HttpServer server = new HttpServer(new RequestHandler());
    server.start();
   
    HttpClientConnection con = new HttpClientConnection("localhost", server.getLocalPort());
   
    FutureResponseHandler respHdl = new FutureResponseHandler();
    BodyDataSink bodyDataSink = con.send(new HttpRequestHeader("POST", "/"), respHdl);
    bodyDataSink.write(QAUtil.generateByteArray(100));
    bodyDataSink.close();
   
    IHttpResponse response = respHdl.getResponse();
    Assert.assertEquals(200, response.getStatus());
    Assert.assertEquals("it works", response.getBlockingBody().toString());
 
    con.close();
    server.close();
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

  /**
   * {@inheritDoc}
   */ 
  public IFutureResponse send(IHttpRequest request) throws IOException, ConnectException {
     
        FutureResponseHandler responseHandler;
       
        // continue expected?
        if (request.hasBody() && HttpUtils.isContainsExpect100ContinueHeader(request)) {
           
            // do not auto continue for network requests
            if (HttpClientConnection.isNetworkendpoint(request.getNonBlockingBody())) {
                request.setAttribute(HttpClientConnection.IS_AUTOCONTINUE_DEACTIVATED, true);
            }
           
            if ((request.getAttribute(HttpClientConnection.IS_AUTOCONTINUE_DEACTIVATED) == null) || ((Boolean) request.getAttribute(HttpClientConnection.IS_AUTOCONTINUE_DEACTIVATED) != true)) {
                responseHandler = new FutureContinueResponseHandler(request.getRequestHeader(), request.getNonBlockingBody(), getId());
               
                if (LOG.isLoggable(Level.FINE)) {
                  LOG.fine("sending header (body will send after receiving the 100 continue response)");
                }
                BodyDataSink dataSink = send(request.getRequestHeader(), responseHandler);
                dataSink.setFlushmode(FlushMode.ASYNC);
               
                ((FutureContinueResponseHandler) responseHandler).setBodyDataSink(dataSink);
                dataSink.flush(); //writes the header
               
                return responseHandler;
            }
        }

        // ... no
        responseHandler = new FutureResponseHandler()
        send(request, responseHandler);
       
        return responseHandler;
  }
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

    /**
     * {@inheritDoc}
     */
    public IFutureResponse send(IHttpRequest request) throws IOException, ConnectException {
       
        FutureResponseHandler responseHandler;
       
        // continue expected?
        if (request.hasBody() && HttpUtils.isContainsExpect100ContinueHeader(request)) {
           
            // do not auto continue for network requests
            if (isNetworkendpoint(request.getNonBlockingBody())) {
                request.setAttribute(IS_AUTOCONTINUE_DEACTIVATED, true);
            }
           
            if ((request.getAttribute(IS_AUTOCONTINUE_DEACTIVATED) == null) || ((Boolean) request.getAttribute(IS_AUTOCONTINUE_DEACTIVATED) != true)) {
                responseHandler = new FutureContinueResponseHandler(request.getRequestHeader(), request.getNonBlockingBody(), getId());
               
                BodyDataSink dataSink = send(request.getRequestHeader(), responseHandler);
                dataSink.setFlushmode(FlushMode.ASYNC);
               
                ((FutureContinueResponseHandler) responseHandler).setBodyDataSink(dataSink);
                dataSink.flush(); //writes the header
                return responseHandler;
            }
        }

        // ... no
        responseHandler = new FutureResponseHandler();
        send(request, responseHandler);
       
        return responseHandler;
   
View Full Code Here

Examples of org.xlightweb.FutureResponseHandler

      RequestHandler reqHdl = new RequestHandler();
      HttpServer server = new HttpServer(reqHdl);
      server.start();
     
      HttpClient httpClient = new HttpClient();
      FutureResponseHandler respHdl = new FutureResponseHandler();
      BodyDataSink ds = httpClient.send(new HttpRequestHeader("POST", "http://localhost:" + server.getLocalPort() + "/?isWaitForBody=true", "text/plain;charset=UTF-8"), respHdl);
      ds.flush();
     
      QAUtil.sleep(1000);
      ds.write("1234567");
      ds.close();
     
      IHttpResponse response = respHdl.getResponse();
     
      Assert.assertEquals(200, response.getStatus());
     
      QAUtil.sleep(1000);
      Assert.assertFalse(((HttpServerConnection) reqHdl.getLastCon()).isDelayedClosed());
View Full Code Here
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.