@Override public Response handleException(Request request, Exception exception) { throw propagate(request, exception); }
@Override public void close() { httpClient.close(); }
@Override public Optional<QueryStats> getQueryStats(String queryId) { URI uri = uriBuilderFrom(baseUri).appendPath("/v1/query").appendPath(queryId).build(); Request request = prepareGet().setUri(uri).build(); return httpClient.execute(request, new GetQueryStatsResponseHandler()); }
private List<BasicQueryInfo> getQueryInfos(String path) { Request request = prepareGet().setUri(server.resolve(path)).build(); return client.execute(request, createJsonResponseHandler(listJsonCodec(BasicQueryInfo.class))); }
private void runToCompletion(String sql) { URI uri = uriBuilderFrom(server.getBaseUrl().resolve("/v1/statement")).build(); Request request = preparePost() .setHeader(PRESTO_USER, "user") .setUri(uri) .setBodyGenerator(createStaticBodyGenerator(sql, UTF_8)) .build(); QueryResults queryResults = client.execute(request, createJsonResponseHandler(jsonCodec(QueryResults.class))); while (queryResults.getNextUri() != null) { request = prepareGet() .setHeader(PRESTO_USER, "user") .setUri(queryResults.getNextUri()) .build(); queryResults = client.execute(request, createJsonResponseHandler(jsonCodec(QueryResults.class))); } }
private long getTotalCpuTime() { long totalCpuTime = 0; for (URI server : nodes) { URI addressUri = uriBuilderFrom(server).replacePath("/v1/jmx/mbean/java.lang:type=OperatingSystem/ProcessCpuTime").build(); String data = httpClient.execute(prepareGet().setUri(addressUri).build(), createStringResponseHandler()).getBody(); totalCpuTime += parseLong(data.trim()); } return TimeUnit.NANOSECONDS.toNanos(totalCpuTime); }
public Response cancel(String queryId) { requireNonNull(queryId, "queryId is null"); URI cancelUri = uriBuilderFrom(uri).appendPath("/v1/query").appendPath(queryId).build(); Request request = prepareDelete().setUri(cancelUri).build(); return httpClient.execute(request, new ResponseHandler<Response, RuntimeException>() { @Override public Response handleException(Request request, Exception exception) { throw propagate(request, exception); } @Override public Response handle(Request request, Response response) { return response; } }); }
@Test public void testServerStarts() { StatusResponseHandler.StatusResponse response = client.execute( prepareGet().setUri(server.resolve("/v1/query")).build(), createStatusResponseHandler()); assertEquals(response.getStatusCode(), OK.getStatusCode()); }
@Override public void configure(Binder binder) { jaxrsBinder(binder).bind(TestResource.class); httpClientBinder(binder) .bindHttpClient("test", GenerateTokenFilterTest.class) .withTracing() .withFilter(GenerateTraceTokenRequestFilter.class); } }
public URI uriFor(String path) { return HttpUriBuilder.uriBuilderFrom(server.getBaseUrl()).replacePath(path).build(); } }
private HttpUriBuilder getHttpUriBuilder(TaskStatus taskStatus) { HttpUriBuilder uriBuilder = uriBuilderFrom(taskStatus.getSelf()); if (summarizeTaskInfo) { uriBuilder.addParameter("summarize"); } return uriBuilder; }
@Test(expectedExceptions = {UnexpectedResponseException.class}, expectedExceptionsMessageRegExp = ".*404: Not Found") public void testGetQueryStateInfoNo() { client.execute( prepareGet().setUri(server.resolve("/v1/queryState/123")).build(), createJsonResponseHandler(jsonCodec(QueryStateInfo.class))); } }
@Override public PagesResponse handleException(Request request, Exception exception) { throw propagate(request, exception); }
@Override public void close() { httpClient.close(); } }
@Test public void testGetFailedNodes() { List<Stats> nodes = client.execute( prepareGet().setUri(server.resolve("/v1/node/failed")).build(), createJsonResponseHandler(listJsonCodec(Stats.class))); assertTrue(nodes.isEmpty()); } }
@Override public Optional<QueryStats> handleException(Request request, Exception exception) { throw propagate(request, exception); }
@Test public void testGetAllNodes() { List<Stats> nodes = client.execute( prepareGet().setUri(server.resolve("/v1/node")).build(), createJsonResponseHandler(listJsonCodec(Stats.class))); // we only have one node and the list never contains the current node assertTrue(nodes.isEmpty()); }
@Test public void testGetQueryStateInfosForUser() { List<QueryStateInfo> infos = client.execute( prepareGet().setUri(server.resolve("/v1/queryState?user=user2")).build(), createJsonResponseHandler(listJsonCodec(QueryStateInfo.class))); assertEquals(infos.size(), 1); }
@Test public void testGetQueryStateInfo() { QueryStateInfo info = client.execute( prepareGet().setUri(server.resolve("/v1/queryState/" + queryResults.getId())).build(), createJsonResponseHandler(jsonCodec(QueryStateInfo.class))); assertNotNull(info); }
@Test public void testGetAllQueryStateInfos() { List<QueryStateInfo> infos = client.execute( prepareGet().setUri(server.resolve("/v1/queryState")).build(), createJsonResponseHandler(listJsonCodec(QueryStateInfo.class))); assertEquals(infos.size(), 2); }