Package javax.ws.rs.client

Examples of javax.ws.rs.client.AsyncInvoker


    public void testAsyncPost() throws ExecutionException, InterruptedException {
        GenericType<Response> generic = new GenericType<Response>(Response.class);
        Entity entity = Entity.entity("entity", MediaType.WILDCARD_TYPE);

        WebTarget target = target("resource");
        final AsyncInvoker async = target.request().async();

        Response response = async.post(entity, generic).get();
        Assert.assertEquals(200, response.getStatus());
        Assert.assertEquals("entity", response.readEntity(String.class));
    }
View Full Code Here


    @Test
    public void testAsyncGet() throws ExecutionException, InterruptedException {
        GenericType<Response> generic = new GenericType<Response>(Response.class);

        WebTarget target = target("resource");
        final AsyncInvoker async = target.request().async();
        Response response = async.get(generic).get();
        Assert.assertEquals(200, response.getStatus());
        Assert.assertEquals("get", response.readEntity(String.class));
    }
View Full Code Here

        Client client = ClientBuilder.newClient(jerseyConfig);
        runCustomExecutorTestSync(client);
    }

    private void runCustomExecutorTestAsync(Client client) throws InterruptedException, ExecutionException {
        AsyncInvoker async = client.target(getBaseUri()).path("resource").request().async();

        Future<Response> f1 = async.post(text("post"));
        final Response response = f1.get();
        final String entity = response.readEntity(String.class);
        assertEquals("AsyncRequest-post", entity);
    }
View Full Code Here

        }
    }

    @Test
    public void testClientThreadPool() throws Exception {
        final AsyncInvoker invoker = ClientBuilder
                .newClient(new ClientConfig().property(ClientProperties.ASYNC_THREADPOOL_SIZE, 9))
                .target(getBaseUri())
                .path("threadpool")
                .request()
                .async();

        final CountDownLatch latch = new CountDownLatch(100);
        final int threadCount = Thread.activeCount();

        final List<Thread> threads = new ArrayList<Thread>(20);
        for (int i = 0; i < 20; i++) {
            threads.add(new Thread(new Runnable() {
                @Override
                public void run() throws RuntimeException {
                    for (int i = 0; i < 5; i++) {
                        try {
                            assertThat(invoker.get().get().readEntity(String.class), equalTo("GET"));
                            assertThat(Thread.activeCount() - threadCount - 20, lessThanOrEqualTo(10));
                            latch.countDown();
                        } catch (final InterruptedException e) {
                            fail();
                        } catch (final ExecutionException e) {
View Full Code Here

      Response response = client.target(getAbsoluteUrl()).path("clear").request().get();
      Assert.assertEquals(204, response.getStatus());
   }

   private Future<Response> invokeRequest(String resource) {
      AsyncInvoker async = createAsyncInvoker(resource);
      Future<Response> future = async.get();
      return future;
   }
View Full Code Here

      Future<Response> future = async.get();
      return future;
   }

   private <T> Future<Response> invokeRequest(String resource, T entity) {
      AsyncInvoker async = createAsyncInvoker(resource);
      Future<Response> future = async.post(Entity.entity(entity,
              MediaType.TEXT_PLAIN_TYPE));
      return future;
   }
View Full Code Here

      return target;
   }

   private AsyncInvoker createAsyncInvoker(String resource) {
      WebTarget target = createWebTarget(resource);
      AsyncInvoker async = target.request().async();
      return async;
   }
View Full Code Here

TOP

Related Classes of javax.ws.rs.client.AsyncInvoker

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.