private void configureTimeout(final Request request) { final Object timeout = request.getAttributes().get(REQUEST_TIMEOUT_MS); final long timeoutMs; if (timeout instanceof Duration) { timeoutMs = ((Duration) timeout).toMillis(); } else if (timeout instanceof Number) { timeoutMs = ((Number) timeout).intValue(); } else if (timeout != null) { timeoutMs = Integer.parseInt(timeout.toString()); } else { timeoutMs = -1; } if (timeoutMs > 0) { request.timeout(timeoutMs, TimeUnit.MILLISECONDS); } }
invocation.getHeaders().asMap().forEach((h, vs) -> vs.forEach(v -> request.header(h, v))); configureTimeout(request); if (request.getAttributes().get(FOLLOW_REDIRECTS) == Boolean.FALSE) { request.followRedirects(false);
private static boolean isPreserveAuthorization(Request request) { return (boolean) request.getAttributes().get(PRESERVE_AUTHORIZATION_KEY); } }
private static boolean isPreserveAuthorization(Request request) { return (boolean) request.getAttributes().get(PRESERVE_AUTHORIZATION_KEY); } }
static List<JettyRequestListener> getRequestListenersForDestination(Destination destination) { return getRequestForDestination(destination).stream() .map(request -> request.getAttributes().get(STATS_KEY)) .map(JettyRequestListener.class::cast) .filter(Objects::nonNull) .collect(Collectors.toList()); }
static List<JettyRequestListener> getRequestListenersForDestination(Destination destination) { return getRequestForDestination(destination).stream() .map(request -> request.getAttributes().get(PLATFORM_STATS_KEY)) .map(JettyRequestListener.class::cast) .filter(Objects::nonNull) .collect(Collectors.toList()); }
@Override protected void onContinue(Request request) { HttpServletRequest clientRequest = (HttpServletRequest)request.getAttributes().get(CLIENT_REQUEST_ATTRIBUTE); AbstractProxyServlet.this.onContinue(clientRequest, request); } }
@Override protected void onContinue(HttpServletRequest clientRequest, Request proxyRequest) { super.onContinue(clientRequest, proxyRequest); Runnable action = (Runnable)proxyRequest.getAttributes().get(CONTINUE_ACTION_ATTRIBUTE); action.run(); }
@Override protected void onContinue(HttpServletRequest clientRequest, Request proxyRequest) { super.onContinue(clientRequest, proxyRequest); Runnable action = (Runnable)proxyRequest.getAttributes().get(CONTINUE_ACTION_ATTRIBUTE); Executor executor = getHttpClient().getExecutor(); executor.execute(action); }
@Override public boolean accept(Request request, Response response) { boolean is100 = response.getStatus() == HttpStatus.CONTINUE_100; boolean expect100 = request.getHeaders().contains(HttpHeader.EXPECT, HttpHeaderValue.CONTINUE.asString()); boolean handled100 = request.getAttributes().containsKey(ATTRIBUTE); return (is100 || expect100) && !handled100; }