@Override public Future<BrokerResponse> executeQueryAsync(String brokerAddress, final String query) { try { ObjectNode json = JsonNodeFactory.instance.objectNode(); json.put("pql", query); final String url = "http://" + brokerAddress + "/query"; final Future<Response> response = _httpClient.preparePost(url).setBody(json.toString()).execute(); return new BrokerResponseFuture(response, query, url); } catch (Exception e) { throw new PinotClientException(e); } }
public static WrappedRequestBuilder post(String url) { return new WrappedRequestBuilder(getNingClient().preparePost(url), "POST " + url); }
public static void asyncHttpPost(String url, List<String> headers, Map<String, String> paramValues, AsyncCompletionHandler handler) throws Exception { AsyncHttpClient.BoundRequestBuilder builder = asyncHttpClient.preparePost(url); if (!CollectionUtils.isEmpty(headers)) { for (String header : headers) { builder.setHeader(header.split("=")[0], header.split("=")[1]); } } if (!MapUtils.isEmpty(paramValues)) { FluentStringsMap params = new FluentStringsMap(); for (Map.Entry<String, String> entry : paramValues.entrySet()) { params.put(entry.getKey(), Collections.singletonList(entry.getValue())); } builder.setParameters(params); } builder.setHeader("Accept-Charset", "UTF-8"); if (handler != null) { builder.execute(handler); } else { builder.execute(); } }
public static void asyncHttpPostLarge(String url, List<String> headers, String content, AsyncCompletionHandler handler) throws Exception { AsyncHttpClient.BoundRequestBuilder builder = asyncHttpClient.preparePost(url); if (!CollectionUtils.isEmpty(headers)) { for (String header : headers) { builder.setHeader(header.split("=")[0], header.split("=")[1]); } } builder.setBody(content.getBytes("UTF-8")); builder.setHeader("Content-Type", "application/json; charset=UTF-8"); builder.setHeader("Accept-Charset", "UTF-8"); builder.setHeader("Accept-Encoding", "gzip"); builder.setHeader("Content-Encoding", "gzip"); if (handler != null) { builder.execute(handler); } else { builder.execute(); } }
public static void asyncHttpPostLarge(String url, List<String> headers, byte[] content, AsyncCompletionHandler handler) throws Exception { AsyncHttpClient.BoundRequestBuilder builder = asyncHttpClient.preparePost(url); if (!CollectionUtils.isEmpty(headers)) { for (String header : headers) { builder.setHeader(header.split("=")[0], header.split("=")[1]); } } builder.setBody(content); builder.setHeader("Content-Type", "application/json; charset=UTF-8"); builder.setHeader("Accept-Charset", "UTF-8"); builder.setHeader("Accept-Encoding", "gzip"); builder.setHeader("Content-Encoding", "gzip"); if (handler != null) { builder.execute(handler); } else { builder.execute(); } }
private boolean doAuthenticate(final UsernamePasswordToken upToken) { final BoundRequestBuilder builder = httpClient.preparePost(securityConfig.getShiroOktaUrl() + "/api/v1/authn"); try { final ImmutableMap<String, String> body = ImmutableMap.<String, String>of("username", upToken.getUsername(),
private SingularityLoadBalancerUpdate sendBaragonRequest(LoadBalancerRequestId loadBalancerRequestId, BaragonRequest loadBalancerRequest, LoadBalancerMethod method) { try { LOG.trace("Preparing to send request {}", loadBalancerRequest); final BoundRequestBuilder requestBuilder = httpClient.preparePost(loadBalancerUri) .addHeader(HEADER_CONTENT_TYPE, CONTENT_TYPE_JSON) .setBody(objectMapper.writeValueAsBytes(loadBalancerRequest)); if (loadBalancerQueryParams.isPresent()) { addAllQueryParams(requestBuilder, loadBalancerQueryParams.get()); } return sendRequestWrapper(loadBalancerRequestId, method, requestBuilder.build(), BaragonRequestState.FAILED); } catch (IOException e) { return new SingularityLoadBalancerUpdate(BaragonRequestState.UNKNOWN, loadBalancerRequestId, Optional.of(e.getMessage()), System.currentTimeMillis(), method, Optional.of(loadBalancerUri)); } }
private <T> CompletableFuture<Response> executeWebhookAsync(String uri, Object payload, AbstractSingularityWebhookAsyncHandler<T> handler) { LOG.trace("Sending {} to {}", payload, uri); BoundRequestBuilder postRequest = http.preparePost(uri); postRequest.setHeader(HttpHeaders.CONTENT_TYPE, "application/json"); try { postRequest.setBody(objectMapper.writeValueAsBytes(payload)); } catch (JsonProcessingException e) { throw Throwables.propagate(e); } CompletableFuture<Response> webhookFuture = new CompletableFuture<>(); try { handler.setCompletableFuture(webhookFuture); postRequest.execute(handler); } catch (IOException e) { LOG.warn("Couldn't execute webhook to {}", uri, e); if (handler.shouldDeleteUpdateDueToQueueAboveCapacity()) { handler.deleteWebhookUpdate(); } webhookFuture.completeExceptionally(e); } return webhookFuture; }
switch (request.getMethod().toUpperCase()) { case "POST": requestBuilder = httpClient.preparePost(url); break; case "PUT":
private void downloadFilesFromLocalDownloadService(List<? extends S3Artifact> s3Artifacts, SingularityExecutorTask task) throws InterruptedException { final List<FutureHolder> futures = Lists.newArrayListWithCapacity(s3Artifacts.size()); for (S3Artifact s3Artifact : s3Artifacts) { String destination = task.getArtifactPath(s3Artifact, task.getTaskDefinition().getTaskDirectoryPath()).toString(); ArtifactDownloadRequest artifactDownloadRequest = new ArtifactDownloadRequest(destination, s3Artifact, Optional.of(SingularityExecutorArtifactFetcher.this.executorConfiguration.getLocalDownloadServiceTimeoutMillis())); task.getLog().debug("Requesting {} from {}", artifactDownloadRequest, localDownloadUri); BoundRequestBuilder postRequestBldr = localDownloadHttpClient.preparePost(localDownloadUri); try { postRequestBldr.setBody(objectMapper.writeValueAsBytes(artifactDownloadRequest)); } catch (JsonProcessingException e) { throw Throwables.propagate(e); } try { ListenableFuture<Response> future = localDownloadHttpClient.executeRequest(postRequestBldr.build()); futures.add(new FutureHolder(future, System.currentTimeMillis(), s3Artifact)); } catch (IOException ioe) { throw Throwables.propagate(ioe); } } for (FutureHolder future : futures) { Response response = future.getReponse(); task.getLog().debug("Future for {} got status code {} after {}", future.s3Artifact.getName(), response.getStatusCode(), JavaUtils.duration(future.start)); if (response.getStatusCode() != 200) { throw new IllegalStateException("Got status code:" + response.getStatusCode()); } } }
break; case POST: builder = client.preparePost(requestUrl); break; case PUT:
final AsyncHttpClientConfig config = new AsyncHttpClientConfig.Builder().setRequestTimeoutInMs(Integer.MAX_VALUE).build(); final AsyncHttpClient client = new AsyncHttpClient(config); client.preparePost(url) .setBody(new ByteArrayBodyGenerator(YOUR_BYTE_ARRAY)) .execute() .get();
/** * Http post request * * @param url url for the request * @return request builder */ public RequestBuilder post(final String url) { checkNotNull(url, "url may not be null"); final AsyncHttpClient.BoundRequestBuilder ningRequestBuilder = asyncHttpClient.preparePost(url); return createNewRequestBuilder(url, ningRequestBuilder); }
@Override public <T> RequestHolder<T> createPost(String url) { return new RequestHolderImpl<T>( SetCredentials.forRequest(httpClient.preparePost(url).setHeader("Content-Type", "application/json"), credentials)); }
@Test(groups = { "standalone", "default_provider" }) public void redirected302InvalidTest() throws Throwable { isSet.getAndSet(false); // If the test hit a proxy, no ConnectException will be thrown and instead of 404 will be returned. try (AsyncHttpClient client = getAsyncHttpClient(null)) { Response response = client.preparePost(getTargetUrl()).setFollowRedirects(true).setHeader("X-redirect", String.format("http://127.0.0.1:%d/", port2)).execute().get(); assertNotNull(response); assertEquals(response.getStatusCode(), 404); } catch (ExecutionException ex) { assertEquals(ex.getCause().getClass(), ConnectException.class); } }
@Override protected AsyncHttpClient.BoundRequestBuilder configureAHC(Request request) { FluentStringsMap m = DefaultSocket.decodeQueryString(request); m.put("X-Atmosphere-Transport", Arrays.asList(new String[]{"polling"})); m.remove("X-atmo-protocol"); return options.runtime().preparePost(request.uri()) .setHeaders(request.headers()) .setQueryParams(m) .setMethod(Request.METHOD.POST.name()); } }
@Test(groups = { "default_provider", "async" }) public void mirrorByteTest() throws Throwable { try (AsyncHttpClient client = getAsyncHttpClient(null)) { Response r = client.preparePost(getTargetUrl()).setBody("MIRROR").execute().get(); assertEquals(r.getStatusCode(), 200); assertEquals(new String(r.getResponseBodyAsBytes(), "UTF-8"), "MIRROR"); } }
@Override protected AsyncHttpClient.BoundRequestBuilder configureAHC(Request request) { FluentStringsMap m = DefaultSocket.decodeQueryString(request); m.put("X-Atmosphere-Transport", Arrays.asList(new String[]{"polling"})); m.remove("X-atmo-protocol"); return options.runtime().preparePost(request.uri()) .setHeaders(request.headers()) .setQueryParams(m) .setMethod(Request.METHOD.POST.name()); } }
protected AsyncHttpClient.BoundRequestBuilder configureAHC(Request request) { FluentStringsMap m = DefaultSocket.decodeQueryString(request); return options.runtime().preparePost(request.uri()) .setHeaders(request.headers()) .setQueryParams(m) .setMethod(Request.METHOD.POST.name()); }
@Test(groups = { "standalone", "default_provider" }) public void basicTest() throws Throwable { AsyncHttpClientConfig.Builder b = new AsyncHttpClientConfig.Builder(); b.addRequestFilter(new ThrottleRequestFilter(100)); try (AsyncHttpClient client = getAsyncHttpClient(b.build())) { Response response = client.preparePost(getTargetUrl()).execute().get(); assertNotNull(response); assertEquals(response.getStatusCode(), 200); } }