public static HttpUriRequest getHttpRequestFor(ResponseDefinition response) { final RequestMethod method = response.getOriginalRequest().getMethod(); final String url = response.getProxyUrl(); return HttpClientFactory.getHttpRequestFor(method, url); }
private static void addBodyIfPostPutOrPatch(HttpRequest httpRequest, ResponseDefinition response) throws UnsupportedEncodingException { Request originalRequest = response.getOriginalRequest(); if (originalRequest.getMethod().isOneOf(PUT, POST, PATCH)) { HttpEntityEnclosingRequest requestWithEntity = (HttpEntityEnclosingRequest) httpRequest; requestWithEntity.setEntity(buildEntityFrom(originalRequest)); } }
@Override public Response render(ServeEvent serveEvent) { ResponseDefinition responseDefinition = serveEvent.getResponseDefinition(); if (!responseDefinition.wasConfigured()) { return Response.notConfigured(); } Response response = buildResponse(serveEvent); return applyTransformations(responseDefinition.getOriginalRequest(), responseDefinition, response, responseTransformers); }
private void addRequestHeaders(HttpRequest httpRequest, ResponseDefinition response) { Request originalRequest = response.getOriginalRequest(); for (String key: originalRequest.getAllHeaderKeys()) { if (headerShouldBeTransferred(key)) { if (!HOST_HEADER.equalsIgnoreCase(key) || preserveHostHeader) { List<String> values = originalRequest.header(key).values(); for (String value: values) { httpRequest.addHeader(key, value); } } else { if (hostHeaderValue != null) { httpRequest.addHeader(key, hostHeaderValue); } else if (response.getProxyBaseUrl() != null) { httpRequest.addHeader(key, URI.create(response.getProxyBaseUrl()).getAuthority()); } } } } if (response.getAdditionalProxyRequestHeaders() != null) { for (String key: response.getAdditionalProxyRequestHeaders().keys()) { httpRequest.setHeader(key, response.getAdditionalProxyRequestHeaders().getHeader(key).firstValue()); } } }