下面列出了org.apache.http.client.methods.HttpEntityEnclosingRequestBase#setURI() 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public final CloseableHttpResponse execute(
final Dict request
) throws IOException {
final HttpEntityEnclosingRequestBase base =
new HttpEntityEnclosingRequestBase() {
@Override
public String getMethod() {
//@checkstyle RequireThisCheck (1 lines)
return new Method.Of(request).asString();
}
};
final URI uri = new RequestUri.Of(request).uri();
base.setConfig(this.config);
base.setURI(uri);
base.setEntity(new StringEntity(new Body.Of(request).asString()));
for (final Kvp header : new Headers.Of(request)) {
base.addHeader(header.key(), header.value());
}
return this.origin.get().execute(base);
}
public static HttpResponse redirectResponse(HttpResponse httpResponse,
HttpEntityEnclosingRequestBase request,
CloseableHttpAsyncClient httpclient)
throws ExecutionException, InterruptedException {
HttpResponse result = null;
Header[] headers = httpResponse.getHeaders(HttpHeaders.LOCATION);
for (Header header : headers) {
if (header.getName().equalsIgnoreCase(HttpHeaders.LOCATION)) {
String newUrl = header.getValue();
request.setURI(URI.create(newUrl));
Future<HttpResponse> future = httpclient.execute(request, null);
result = future.get();
break;
}
}
if (result == null) {
return httpResponse;
}
return result;
}
private void prepareRequest(HttpEntityEnclosingRequestBase request, String url, Object body) throws Exception {
request.setEntity(new ByteArrayEntity(OBJECT_MAPPER.writeValueAsBytes(body), ContentType.APPLICATION_JSON));
UriBuilder uriBuilder = UriBuilder.fromUri(nexusUrl.toString()).path(url);
request.setURI(uriBuilder.build());
String auth = credentials.getUserName() + ":" + credentials.getPassword();
request.setHeader(HttpHeaders.AUTHORIZATION,
"Basic " + new String(Base64.getEncoder().encode(auth.getBytes(StandardCharsets.UTF_8))));
}
private void prepareRequest(HttpEntityEnclosingRequestBase request, String url, Object body) throws Exception {
request.setEntity(new ByteArrayEntity(objectMapper.writeValueAsBytes(body), ContentType.APPLICATION_JSON));
UriBuilder uriBuilder = UriBuilder.fromUri(nexusUrl.toString()).path(url);
request.setURI(uriBuilder.build());
String auth = credentials.getUserName() + ":" + credentials.getPassword();
request.setHeader(HttpHeaders.AUTHORIZATION,
"Basic " + new String(Base64.getEncoder().encode(auth.getBytes(StandardCharsets.UTF_8))));
}
private void prepareRequest(HttpEntityEnclosingRequestBase request, String url, Object body) throws Exception {
request.setEntity(new ByteArrayEntity(objectMapper.writeValueAsBytes(body), ContentType.APPLICATION_JSON));
UriBuilder uriBuilder = UriBuilder.fromUri(nexusUrl.toString()).path(url);
request.setURI(uriBuilder.build());
String auth = credentials.getUserName() + ":" + credentials.getPassword();
request.setHeader(HttpHeaders.AUTHORIZATION,
"Basic " + new String(Base64.getEncoder().encode(auth.getBytes(StandardCharsets.UTF_8))));
}
private void prepareRequest(HttpEntityEnclosingRequestBase request, String url, Object body) throws Exception {
request.setEntity(new ByteArrayEntity(objectMapper.writeValueAsBytes(body), ContentType.APPLICATION_JSON));
UriBuilder uriBuilder = UriBuilder.fromUri(nexusUrl.toString()).path(url);
request.setURI(uriBuilder.build());
String auth = credentials.getUserName() + ":" + credentials.getPassword();
request.setHeader(HttpHeaders.AUTHORIZATION,
"Basic " + new String(Base64.getEncoder().encode(auth.getBytes(StandardCharsets.UTF_8))));
}
private HttpUriRequest requestWithEntity(HttpEntityEnclosingRequestBase request, Uri.Builder uriBuilder) throws UnsupportedEncodingException, URISyntaxException {
if (params != null) {
request.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
}
request.setURI(new URI(uriBuilder.build().toString()));
return request;
}
void closeScroll(Iterable<String> scrollIds) {
Objects.requireNonNull(scrollIds, "scrollIds");
// delete current scroll
final URI uri = URI.create("/_search/scroll");
// http DELETE with payload
final HttpEntityEnclosingRequestBase request = new HttpEntityEnclosingRequestBase() {
@Override public String getMethod() {
return HttpDelete.METHOD_NAME;
}
};
request.setURI(uri);
final ObjectNode payload = mapper().createObjectNode();
// ES2 expects json array for DELETE scroll API
final ArrayNode array = payload.withArray("scroll_id");
StreamSupport.stream(scrollIds.spliterator(), false)
.map(TextNode::new)
.forEach(array::add);
try {
final String json = mapper().writeValueAsString(payload);
request.setEntity(new StringEntity(json, ContentType.APPLICATION_JSON));
rawHttp().apply(request);
} catch (IOException | UncheckedIOException e) {
LOGGER.warn("Failed to close scroll(s): {}", scrollIds, e);
}
}
@AfterClass
public static void tearDownClass() throws Exception {
URIBuilder builder = new URIBuilder().setScheme("http")
.setHost("127.0.0.1").setPort(9200)
.setPath("/metric_metadata/metrics/_query");
HttpEntityEnclosingRequestBase delete = new HttpEntityEnclosingRequestBase() {
@Override
public String getMethod() {
return "DELETE";
}
};
delete.setURI(builder.build());
String deletePayload = "{\"query\":{\"match_all\":{}}}";
HttpEntity entity = new NStringEntity(deletePayload, ContentType.APPLICATION_JSON);
delete.setEntity(entity);
HttpClient client = HttpClientBuilder.create().build();
HttpResponse response = client.execute(delete);
if(response.getStatusLine().getStatusCode() != 200)
{
System.out.println("Couldn't delete index after running tests.");
}
else {
System.out.println("Successfully deleted index after running tests.");
}
}
@AfterClass
public static void tearDownClass() throws Exception {
URIBuilder builder = new URIBuilder().setScheme("http")
.setHost("127.0.0.1").setPort(9200)
.setPath("/events/graphite_event/_query");
HttpEntityEnclosingRequestBase delete = new HttpEntityEnclosingRequestBase() {
@Override
public String getMethod() {
return "DELETE";
}
};
delete.setURI(builder.build());
String deletePayload = "{\"query\":{\"match_all\":{}}}";
HttpEntity entity = new NStringEntity(deletePayload, ContentType.APPLICATION_JSON);
delete.setEntity(entity);
HttpClient client = HttpClientBuilder.create().build();
HttpResponse response = client.execute(delete);
if(response.getStatusLine().getStatusCode() != 200)
{
System.out.println("Couldn't delete index after running tests.");
}
else {
System.out.println("Successfully deleted index after running tests.");
}
}
private void deleteAllDocuments(String typeToEmpty) throws URISyntaxException, IOException {
URIBuilder builder = new URIBuilder().setScheme("http")
.setHost("127.0.0.1").setPort(9200)
.setPath(typeToEmpty);
HttpEntityEnclosingRequestBase delete = new HttpEntityEnclosingRequestBase() {
@Override
public String getMethod() {
return "DELETE";
}
};
delete.setURI(builder.build());
String deletePayload = "{\"query\":{\"match_all\":{}}}";
HttpEntity entity = new NStringEntity(deletePayload, ContentType.APPLICATION_JSON);
delete.setEntity(entity);
HttpClient client = HttpClientBuilder.create().build();
HttpResponse response = client.execute(delete);
if(response.getStatusLine().getStatusCode() != 200)
{
System.out.println(String.format("Couldn't delete index [%s] after running tests.", typeToEmpty));
}
else {
System.out.println(String.format("Successfully deleted [%s] index after running tests.", typeToEmpty));
}
}
@AfterClass
public static void tearDownClass() throws Exception {
URIBuilder builder = new URIBuilder().setScheme("http")
.setHost("127.0.0.1").setPort(9200)
.setPath("/events/graphite_event/_query");
HttpEntityEnclosingRequestBase delete = new HttpEntityEnclosingRequestBase() {
@Override
public String getMethod() {
return "DELETE";
}
};
delete.setURI(builder.build());
String deletePayload = "{\"query\":{\"match_all\":{}}}";
HttpEntity entity = new NStringEntity(deletePayload, ContentType.APPLICATION_JSON);
delete.setEntity(entity);
HttpClient client = HttpClientBuilder.create().build();
HttpResponse response = client.execute(delete);
if(response.getStatusLine().getStatusCode() != 200)
{
System.out.println("Couldn't delete index after running tests.");
}
else {
System.out.println("Successfully deleted index after running tests.");
}
}