@Benchmark public Future<Response> asyncEntityIgnore() throws Exception { return client.target("foo").request().async().post(Entity.text("bar"), new InvocationCallback<Response>() { @Override public void completed(final Response response) { // NOOP } @Override public void failed(final Throwable throwable) { // NOOP } }); }
@Override protected void executeRequest(Event event, Position position, Set<Long> users, AsyncInvoker invoker) { invoker.post(Entity.json(preparePayload(event, position, users))); }
public <V> CompletableFuture<T> post(final String queryResourceUrl, final V request) { CompletableFuture<T> result = new CompletableFuture(); final WebTarget webResource = client.target(queryResourceUrl); webResource .request(accept) .accept(accept) .async() .post(Entity.entity(request, contentType), new InvocationCallback<String>() { @Override public void completed(String complete) { buildResponse(result,complete); } @Override public void failed(Throwable ex) { result.completeExceptionally(ex); } }); return result; }
@Override public void getLocation(Network network, final LocationProviderCallback callback) { ObjectNode json = objectMapper.valueToTree(network); json.put("token", key); Context.getClient().target(url).request().async().post(Entity.json(json), new InvocationCallback<JsonObject>() { @Override public void completed(JsonObject json) { if (json.getString("status").equals("error")) { callback.onFailure(new GeolocationException(json.getString("message"))); } else { callback.onSuccess( json.getJsonNumber("lat").doubleValue(), json.getJsonNumber("lon").doubleValue(), json.getJsonNumber("accuracy").doubleValue()); } } @Override public void failed(Throwable throwable) { callback.onFailure(throwable); } }); }
@Override public void sendMessageAsync(final String destAddress, final String message, final boolean command) { getRequestBuilder().async().post( Entity.entity(preparePayload(destAddress, message), mediaType), new InvocationCallback<String>() { @Override public void completed(String s) { } @Override public void failed(Throwable throwable) { LOGGER.warn("SMS send failed", throwable); } }); }
@Override protected Position handlePosition(Position position) { if (json) { client.target(url).request().async().post(Entity.json(prepareJsonPayload(position))); } else { try { client.target(formatRequest(position)).request().async().get(); } catch (UnsupportedEncodingException | JsonProcessingException e) { LOGGER.warn("Forwarding formatting error", e); } } return position; }
@Override public void getLocation(Network network, final LocationProviderCallback callback) { AsyncInvoker invoker = Context.getClient().target(url).request().async(); invoker.post(Entity.json(network), new InvocationCallback<JsonObject>() { @Override public void completed(JsonObject json) { if (json.containsKey("error")) { callback.onFailure(new GeolocationException(json.getJsonObject("error").getString("message"))); } else { JsonObject location = json.getJsonObject("location"); callback.onSuccess( location.getJsonNumber("lat").doubleValue(), location.getJsonNumber("lng").doubleValue(), json.getJsonNumber("accuracy").doubleValue()); } } @Override public void failed(Throwable throwable) { callback.onFailure(throwable); } }); }
@Override public void sendSync(long userId, Event event, Position position) { final User user = Context.getPermissionsManager().getUser(userId); if (user.getAttributes().containsKey("notificationTokens")) { Notification notification = new Notification(); notification.body = NotificationFormatter.formatShortMessage(userId, event, position).trim(); Message message = new Message(); message.tokens = user.getString("notificationTokens").split("[, ]"); message.notification = notification; Context.getClient().target(URL).request() .header("Authorization", "key=" + key) .async().post(Entity.json(message), new InvocationCallback<Object>() { @Override public void completed(Object o) { } @Override public void failed(Throwable throwable) { LOGGER.warn("Firebase notification error", throwable); } }); } }
form.param("geolocationRequests", String.valueOf(statistics.getGeolocationRequests())); Context.getClient().target(url).request().async().post(Entity.form(form));
private void retry() { retries--; invoker.post(message, this); } }
private void publishMessage(String topic, Entity<String> content, int retries, InvocationCallback<Response> callback) { AsyncInvoker invoker = target.path(topic).request().async(); invoker.post(content, new PublishingRetryCallback(invoker, content, retries, callback)); } }
/** * POST a request Async. * * @param path the path to access * @param object the object to POST * @param returnType the class to return * @return a Future of type T */ public <T> Future<T> postAsync(String path, Object object, Class<T> returnType) { WebTarget target = buildTarget(path, null); return target.request().async().post(Entity.entity(object, MediaType.APPLICATION_JSON), returnType); }
private void publishMessage(String topic, Entity<String> content, int retries, InvocationCallback<Response> callback) { AsyncInvoker invoker = target.path(topic).request().async(); invoker.post(content, new PublishingRetryCallback(invoker, content, retries, callback)); } }
@Override public <T> CompletableFuture<T> post(Entity<?> entity, Class<T> responseType) { CompletableFutureObjectCallbackAdapter<T> adapter = new CompletableFutureObjectCallbackAdapter<>(responseType); asyncInvoker.post(entity, adapter); return adapter.getCompletableFuture(); }
@Override public <T> CompletableFuture<T> post(Entity<?> entity, GenericType<T> responseType) { CompletableFutureGenericObjectCallbackAdapter<T> adapter = new CompletableFutureGenericObjectCallbackAdapter<>(responseType); asyncInvoker.post(entity, adapter); return adapter.getCompletableFuture(); }
@Override public <T> CompletableFuture<T> post(Entity<?> entity, GenericType<T> responseType) { CompletableFutureGenericObjectCallbackAdapter<T> adapter = new CompletableFutureGenericObjectCallbackAdapter<>(responseType); asyncInvoker.post(entity, adapter); return adapter.getCompletableFuture(); }
@Override public <T> CompletableFuture<T> post(Entity<?> entity, Class<T> responseType) { CompletableFutureObjectCallbackAdapter<T> adapter = new CompletableFutureObjectCallbackAdapter<>(responseType); asyncInvoker.post(entity, adapter); return adapter.getCompletableFuture(); }
private <T> Future<Response> invokeRequest(String resource, T entity) { AsyncInvoker async = createAsyncInvoker(resource); return async.post(Entity.entity(entity, MediaType.TEXT_PLAIN_TYPE)); }
@Override protected RemoteConversionContext startConversion(InputStream fetchedSource) { return new RemoteConversionContext(webTarget .path(ConverterNetworkProtocol.RESOURCE_PATH) .request(targetFormat.toString()) .header(ConverterNetworkProtocol.HEADER_JOB_PRIORITY, getPriority().getValue()) .async() .post(Entity.entity(new ConsumeOnCloseInputStream(this, fetchedSource), sourceFormat.toString()))); }
@Test public void testPostBookAsync() throws Exception { String address = "http://localhost:" + PORT + "/bookstore/bookheaders/simple/async"; WebClient wc = createWebClientPost(address); Future<Book> future = wc.async().post(Entity.xml(new Book("Book", 126L)), Book.class); assertEquals(124L, future.get().getId()); validatePostResponse(wc, true, false); }