Examples of IHttpClientEndpoint


Examples of org.xlightweb.client.IHttpClientEndpoint

  @Test
  public void testChunkedTransferEncoding() throws Exception {
    System.out.println("testChunkedTransferEncoding");
   
    IHttpClientEndpoint httpClient = new HttpClient();

    IServer server = new HttpServer(new EchoHandler());
    server.start();



    PostRequest postRequest = new PostRequest("http://localhost:" + server.getLocalPort() + "/", "text/plain", "Herzlichen Gl\u00FCckwunsch, Sie haben sich zur Reinigung des Aufzugs entschlossen.");
    postRequest.setTransferEncoding("chunked");

    IHttpResponse response = httpClient.call(postRequest);
    String body = response.getBody().readString();

    server.close();
    httpClient.close();
   
    Assert.assertEquals("Herzlichen Gl\u00FCckwunsch, Sie haben sich zur Reinigung des Aufzugs entschlossen.", body);
  }
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint


  @Test
  public void testPlainBodyData() throws Exception {
    System.out.println("testPlainBodyData");
    IHttpClientEndpoint httpClient = new HttpClient();
   
    IServer server = new HttpServer(new EchoHandler());
    ConnectionUtils.start(server);



    File file = QAUtil.createTestfile_40k();
    RandomAccessFile raf = new RandomAccessFile(file, "r");
    FileChannel fc = raf.getChannel();
   
    System.out.println("call");
    FutureResponseHandler respHdl = new FutureResponseHandler();
    BodyDataSink bodyDataSink = httpClient.send(new HttpRequestHeader("POST", "http://localhost:" + server.getLocalPort() + "/", "text/plain"), (int) fc.size(), respHdl);
    bodyDataSink.transferFrom(fc);
    bodyDataSink.close();
    fc.close();
    raf.close();
   
    IHttpResponse response = respHdl.getResponse();
   
    BodyDataSource bodyChannel = response.getBody();
    String body = bodyChannel.readString();

    System.out.println("closing erver & httpClient");
    server.close();
    httpClient.close();

    if (body.indexOf("Architecture of a Highly Scalable NIO-Based Server") == -1) {
      System.out.println("error got:\r\n" + body);
      Assert.fail();
    }
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint

    System.out.println("testPlainBodyData2");

    IServer server = new HttpServer(new EchoHandler());
    server.start();

    IHttpClientEndpoint httpClient = new HttpClient();

    FutureResponseHandler hdl = new FutureResponseHandler();

    byte[] data = "hello".getBytes("UTF-8");

    HttpRequestHeader header = new HttpRequestHeader("POST", "http://localhost:" +  server.getLocalPort() + "/");
    header.setContentType("text/plain; charset=UTF-8");

    BodyDataSink bodyDataSink = httpClient.send(header, data.length, hdl);
    bodyDataSink.write(data);
    bodyDataSink.close();

    IHttpResponse response = hdl.getResponse();
    String body = response.getBody().readString();


    server.close();
    httpClient.close();


    Assert.assertEquals("hello", body);
  }
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint

      ConnectHandler ch = new ConnectHandler();
      new NonBlockingConnection(InetAddress.getByName("www.gmx.com"), 80, ch, false, 2000);
     
      QAUtil.sleep(1500);
     
      IHttpClientEndpoint httpEndpoint = ch.getHttpConnection();
      IHttpResponse response = httpEndpoint.call(new GetRequest("/"));

      Assert.assertEquals(302, response.getStatus());
  }
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint

  @Test
  public void testBulkPlainBodyData() throws Exception {
    System.out.println("testBulkPlainBodyData");
   
    IHttpClientEndpoint httpClient = new HttpClient();

    IServer server = new HttpServer(new EchoHandler());
    ConnectionUtils.start(server);


    IHttpResponseHandler hdl = new IHttpResponseHandler() {
      public void onResponse(IHttpResponse response) throws IOException {
      }
     
      public void onException(IOException ioe) {
      }
    };
   
    BodyDataSink bodyDataSink = httpClient.send(new HttpRequestHeader("POST", "http://localhost:" + server.getLocalPort() + "/"), hdl);
    bodyDataSink.write(QAUtil.generateByteArray(10000));
    bodyDataSink.flush();
    bodyDataSink.write(QAUtil.generateByteArray(10000));

    server.close();
    httpClient.close();
  }
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint

    System.out.println("running testFlushedPlainBodyData");
   
    IServer server = new HttpServer(new EchoHandler());
    server.start();

    IHttpClientEndpoint httpClient = new HttpClient();

    FutureResponseHandler hdl = new FutureResponseHandler();
    HttpRequestHeader header = new HttpRequestHeader("POST", "http://localhost:" + server.getLocalPort() + "/");
    header.setContentType("text/plain; charset=UTF-8");


    int chunkSize = 100;
    int loops = 10;
   
    LOG.fine("send header");
    BodyDataSink bodyDataSink = httpClient.send(header, chunkSize * loops, hdl);

    for (int i = 0; i < loops; i++) {
        LOG.fine("write body data");
      bodyDataSink.write(QAUtil.generateByteBuffer(chunkSize));
    }
   
    LOG.fine("close body");
    bodyDataSink.close();
   
    LOG.fine("retrieve response handle");
    IHttpResponse response = hdl.getResponse();
   
    LOG.fine("read complete body as string");
    byte[] result = response.getBody().readBytes();
    LOG.fine("got it");
   
    Assert.assertEquals(chunkSize * loops, result.length);
   
    server.close();
    httpClient.close()
  }
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint

        System.out.println("running testFlushedPlainBodyData");
       
        WebContainer server = new WebContainer(new EchoServlet());
        server.start();

        IHttpClientEndpoint httpClient = new HttpClient();

        FutureResponseHandler hdl = new FutureResponseHandler();
        HttpRequestHeader header = new HttpRequestHeader("POST", "http://localhost:" + server.getLocalPort() + "/");
        header.setContentType("text/plain; charset=UTF-8");


        int chunkSize = 100;
        int loops = 10;
       
        BodyDataSink bodyDataSink = httpClient.send(header, chunkSize * loops, hdl);

        for (int i = 0; i < loops; i++) {
            bodyDataSink.write(QAUtil.generateByteBuffer(chunkSize));
        }
       
        bodyDataSink.close();
       
        IHttpResponse response = hdl.getResponse();
       
        byte[] result = response.getBody().readBytes();
        Assert.assertEquals(chunkSize * loops, result.length);
       
        server.stop();
        httpClient.close();
    }
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint

   
    final IServer server = new HttpServer(new EchoHandler());
    server.start();


    IHttpClientEndpoint httpClient = new HttpClient();

    FutureResponseHandler hdl = new FutureResponseHandler();
    HttpRequestHeader header = new HttpRequestHeader("POST", "http://localhost:" + server.getLocalPort() + "/");
    header.setContentType("text/plain; charset=UTF-8");

    BodyDataSink bodyDataSink = httpClient.send(header, hdl);
    Assert.assertTrue("flushmode is not sync", bodyDataSink.getFlushmode() == FlushMode.SYNC);

    StringBuilder sb = new StringBuilder();

    for (int i = 0; i < 10; i++) {
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint

        public void run() {
         
          try {
            running.incrementAndGet();
         
            IHttpClientEndpoint httpClient = new HttpClient();

            for (int i = 0; i < 50; i++) {
              FutureResponseHandler hdl = new FutureResponseHandler();
              HttpRequestHeader header = new HttpRequestHeader("POST", "http://localhost:" + server.getLocalPort() + "/");
              header.setContentType("text/plain; charset=UTF-8");
             
              BodyDataSink bodyDataSink = httpClient.send(header, hdl);
              if (bodyDataSink.getFlushmode() != FlushMode.SYNC) {
                System.out.println("flushmode should be sync");
                Assert.fail();
              }
             
              for (int k = 0; k < 10; k++) {
                try {
                  byte[] data = QAUtil.generateByteArray(128);
                  bodyDataSink.write(data);
                  bodyDataSink.flush();
                } catch (Exception e) {
                  System.out.println("error occured by writing chunk " + e.toString());
                  Assert.fail();
                }
              }
         
              bodyDataSink.close();
             
              IHttpResponse response = hdl.getResponse();
              if (!response.hasBody()) {
                System.out.println("response should have a body");
                Assert.fail();
              }
             
              response.getBody().readString();
            }

            httpClient.close();
           
           
          } catch (Exception e) {
            e.printStackTrace();
            errors.add(e.toString());
View Full Code Here

Examples of org.xlightweb.client.IHttpClientEndpoint

        System.out.println("start server");
        final IServer server = new HttpServer(new ClosingEchoHandler());
        server.start();

        System.out.println("create client");
        IHttpClientEndpoint httpClient = new HttpClient();
       
        System.out.println("run tests");
        for (int i = 0; i < 500; i++) {
            System.out.print(".");
            FutureResponseHandler hdl = new FutureResponseHandler();
            HttpRequestHeader header = new HttpRequestHeader("POST", "http://localhost:" + server.getLocalPort() + "/");
            header.setContentType("text/plain; charset=UTF-8");
           
            BodyDataSink bodyDataSink = httpClient.send(header, hdl);
            if (bodyDataSink.getFlushmode() != FlushMode.SYNC) {
                System.out.println("flushmode should be sync");
                Assert.fail();
            }
           
            for (int k = 0; k < 10; k++) {
                try {
                    byte[] data = QAUtil.generateByteArray(128);
                    bodyDataSink.write(data);
                    bodyDataSink.flush();
                } catch (Exception e) {
                    System.out.println("error occured by writing chunk " + e.toString());
                    Assert.fail();
                }
            }

            bodyDataSink.write("round " + i);
            bodyDataSink.close();
           
            IHttpResponse response = hdl.getResponse();
            if (!response.hasBody()) {
                System.out.println("response should have a body");
                Assert.fail();
            }
           
            response.getBody().readString();
        }

        httpClient.close();
    }       
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.