URI requestURI = new URI(request.getRequestLine().getUri()); URI absoluteRequestURI = URIUtils.rewriteURI(requestURI, target, true); uri = URIUtils.resolve(absoluteRequestURI, uri);
@Override public String toString() { if (request instanceof GeneratedHttpRequest) { GeneratedHttpRequest gRequest = GeneratedHttpRequest.class.cast(request); return String.format("[method=%s, request=%s]", gRequest.getInvocation(), gRequest.getRequestLine()); } return "[request=" + request.getRequestLine() + "]"; }
public AWSResponseException(HttpCommand command, HttpResponse response, AWSError error) { super(String.format("request %s failed with code %s, error: %s", command.getCurrentRequest().getRequestLine(), response .getStatusCode(), error.toString()), command, response); this.setError(error); }
private HttpCommand toCommand(String commandName, Invocation invocation) { logger.trace(">> converting %s", commandName); HttpRequest request = annotationProcessor.apply(invocation); logger.trace("<< converted %s to %s", commandName, request.getRequestLine()); return new HttpCommand(request); }
private HttpCommand toCommand(String commandName, Invocation invocation) { logger.trace(">> converting %s", commandName); HttpRequest request = annotationProcessor.apply(invocation); logger.trace("<< converted %s to %s", commandName, request.getRequestLine()); return new HttpCommand(request); }
public HttpResponseException(HttpCommand command, HttpResponse response) { this(String.format("request: %s %sfailed with response: %s", command.getCurrentRequest().getRequestLine(), requestPayloadIfStringOrFormIfNotReturnEmptyString(command.getCurrentRequest()), response.getStatusLine()), command, response); }
public HttpResponseException(HttpCommand command, HttpResponse response) { this(String.format("request: %s %sfailed with response: %s", command.getCurrentRequest().getRequestLine(), requestPayloadIfStringOrFormIfNotReturnEmptyString(command.getCurrentRequest()), response.getStatusLine()), command, response); }
public void testAddingBase64EncodedQueryParamCausingPlusToUrlEncodedSpaceConversion() { String base64Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; URI uri = URI .create("http://goo.com:443?header1=valueWithUrlEncoded%2BPlus"); HttpRequest request = HttpRequest.builder().method("GET").endpoint(uri) // addQueryParam invocation causes %2B's in prev. params to // convert to %20. .addQueryParam("header2", base64Chars).build(); assertEquals( request.getRequestLine(), "GET http://goo.com:443?header1=valueWithUrlEncoded%20Plus&header2=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%20/%3D HTTP/1.1"); }
@Override public HttpResponse invoke(HttpCommand command) { assertEquals(command.getCurrentRequest().getRequestLine(), "GET http://howdyboys/client/1/foo HTTP/1.1"); return HttpResponse.builder().build(); }
@Override public HttpResponse invoke(HttpCommand command) { assertEquals(command.getCurrentRequest().getRequestLine(), "GET http://localhost:9999/client/1/foo HTTP/1.1"); return HttpResponse.builder().build(); }
@Override public HttpResponse invoke(HttpCommand command) { assertEquals(command.getCurrentRequest().getRequestLine(), "GET http://howdyboys/client/1/foo HTTP/1.1"); return HttpResponse.builder().build(); }
@Test public void testWithPrimitive() { HttpRequest request = HttpRequest.builder().method("GET").endpoint("http://momma/").build(); BindIdsToQueryParams binder = new BindIdsToQueryParams(); request = binder.bindToRequest(request, new long[] { 123L, 456L }); assertEquals(request.getRequestLine(), "GET http://momma/?id=123&id=456 HTTP/1.1"); } }
@Test public void testBinding() { String[] input = { "hello", "world" }; HttpRequest request = HttpRequest.builder().method("GET").endpoint("http://momma/").build(); BindNamesToQueryParams binder = new BindNamesToQueryParams(); request = binder.bindToRequest(request, input); assertEquals(request.getRequestLine(), "GET http://momma/?name=hello&name=world HTTP/1.1"); }
public HTTPRequest filterLogAndConvertRe(HttpRequest request) { for (HttpRequestFilter filter : request.getFilters()) { request = filter.filter(request); } checkRequestHasContentLengthOrChunkedEncoding(request, "After filtering, the request has neither chunked encoding nor content length: " + request); logger.debug("Sending request %s: %s", request.hashCode(), request.getRequestLine()); wirePayloadIfEnabled(wire, request); HTTPRequest nativeRequest = convertToGaeRequest.apply(request); utils.logRequest(headerLog, request, ">>"); return nativeRequest; }
public void testAuthorizeIngressICMPToCIDRs() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(SecurityGroupAsyncClient.class, "authorizeIngressICMPToCIDRs", String.class , int.class, int.class, Iterable.class, AccountInDomainOptions[].class); GeneratedHttpRequest httpRequest = processor.createRequest(method, ImmutableList.<Object> of(2, 22, 22, ImmutableSet.of("1.1.1.1/24", "1.2.2.2/16"))); assertRequestLineEquals(httpRequest, authorizeSecurityGroupIngress1.getRequestLine()); assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n"); assertPayloadEquals(httpRequest, null, null, false); assertResponseParserClassEquals(method, httpRequest, ParseFirstJsonValueNamed.class); assertSaxResponseParserClassEquals(method, null); assertFallbackClassEquals(method, MapHttp4xxCodesToExceptions.class); checkFilters(httpRequest); }
public void testCreateServiceOffering() throws Exception { Invokable<?, ?> method = method(GlobalOfferingAsyncClient.class, "createServiceOffering", String.class, String.class, int.class, int.class, int.class, CreateServiceOfferingOptions[].class); GeneratedHttpRequest httpRequest = processor.createRequest(method, ImmutableList.<Object> of("name", "displayText", 1, 2, 3)); assertRequestLineEquals(httpRequest, createServiceOffering.getRequestLine()); assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n"); assertPayloadEquals(httpRequest, null, null, false); assertResponseParserClassEquals(method, httpRequest, ParseFirstJsonValueNamed.class); assertSaxResponseParserClassEquals(method, null); assertFallbackClassEquals(method, NullOnNotFoundOr404.class); checkFilters(httpRequest); }
public void testCopyTemplate() throws NoSuchMethodException { Invokable<?, ?> method = method(TemplateAsyncClient.class, "copyTemplateToZone", String.class, String.class, String.class); GeneratedHttpRequest httpRequest = processor.createRequest(method, ImmutableList.<Object> of(17, 18, 19)); assertRequestLineEquals(httpRequest,copyTemplate.getRequestLine()); assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n"); assertPayloadEquals(httpRequest, null, null, false); assertResponseParserClassEquals(method, httpRequest, UnwrapOnlyJsonValue.class); assertSaxResponseParserClassEquals(method, null); assertFallbackClassEquals(method, MapHttp4xxCodesToExceptions.class); checkFilters(httpRequest); }
public void testCreateNetworkInZone() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(NetworkAsyncClient.class, "createNetworkInZone", String.class, String.class, String.class, String.class, CreateNetworkOptions[].class); GeneratedHttpRequest httpRequest = processor.createRequest(method, ImmutableList.<Object> of(1, 2, "named", "lovely")); assertRequestLineEquals(httpRequest, createNetwork.getRequestLine()); assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n"); assertPayloadEquals(httpRequest, null, null, false); assertResponseParserClassEquals(method, httpRequest, ParseFirstJsonValueNamed.class); assertSaxResponseParserClassEquals(method, null); assertFallbackClassEquals(method, MapHttp4xxCodesToExceptions.class); checkFilters(httpRequest); }
public void testExtractISOOptions() throws NoSuchMethodException { Invokable<?, ?> method = method(ISOAsyncClient.class, "extractISO", String.class, ExtractMode.class, String.class, ExtractISOOptions[].class); GeneratedHttpRequest httpRequest = processor.createRequest(method, ImmutableList.<Object> of(3, ExtractMode.HTTP_DOWNLOAD, 5, ExtractISOOptions.Builder.url("http://example.com/"))); assertRequestLineEquals(httpRequest, extractIsoOptions.getRequestLine()); assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n"); assertPayloadEquals(httpRequest, null, null, false); assertResponseParserClassEquals(method, httpRequest, UnwrapOnlyJsonValue.class); assertSaxResponseParserClassEquals(method, null); assertFallbackClassEquals(method, MapHttp4xxCodesToExceptions.class); checkFilters(httpRequest); } }
public void testRegisterTemplate() throws NoSuchMethodException { Invokable<?, ?> method = method(TemplateAsyncClient.class, "registerTemplate", TemplateMetadata.class, String.class, String.class, String.class, String.class, RegisterTemplateOptions[].class); GeneratedHttpRequest httpRequest = processor.createRequest(method, ImmutableList.<Object> of(TemplateMetadata.builder().name("thename").osTypeId("10").displayText("description").build(), Template.Format.QCOW2, "xen", "http://example.com/", 20)); assertRequestLineEquals(httpRequest, registerTemplate.getRequestLine()); assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n"); assertPayloadEquals(httpRequest, null, null, false); assertResponseParserClassEquals(method, httpRequest, ParseFirstJsonValueNamed.class); assertSaxResponseParserClassEquals(method, null); assertFallbackClassEquals(method, MapHttp4xxCodesToExceptions.class); checkFilters(httpRequest); }