private void addHostHeader(SdkHttpFullRequest.Builder mutableRequest) { // AWS4 requires that we sign the Host header so we // have to have it in the request by the time we sign. StringBuilder hostHeaderBuilder = new StringBuilder(mutableRequest.host()); if (!SdkHttpUtils.isUsingStandardPort(mutableRequest.protocol(), mutableRequest.port())) { hostHeaderBuilder.append(":").append(mutableRequest.port()); } mutableRequest.putHeader(SignerConstant.HOST, hostHeaderBuilder.toString()); }
private void addHostHeader(SdkHttpFullRequest.Builder mutableRequest) { // AWS4 requires that we sign the Host header so we // have to have it in the request by the time we sign. StringBuilder hostHeaderBuilder = new StringBuilder(mutableRequest.host()); if (!SdkHttpUtils.isUsingStandardPort(mutableRequest.protocol(), mutableRequest.port())) { hostHeaderBuilder.append(":").append(mutableRequest.port()); } mutableRequest.putHeader(SignerConstant.HOST, hostHeaderBuilder.toString()); }
/** * Convenience method to set the {@link #protocol()}, {@link #host()}, {@link #port()}, and * {@link #encodedPath()} from a {@link URI} object. * * @param uri URI containing protocol, host, port and path. * @return This builder for method chaining. */ @Override default Builder uri(URI uri) { return this.protocol(uri.getScheme()) .host(uri.getHost()) .port(uri.getPort()) .encodedPath(SdkHttpUtils.appendUri(uri.getRawPath(), encodedPath())); }
/** * Modifies the given {@link SdkHttpFullRequest} with new host if host prefix is enabled and set. */ private static SdkHttpFullRequest modifyEndpointHostIfNeeded(SdkHttpFullRequest originalRequest, SdkClientConfiguration clientConfiguration, ClientExecutionParams executionParams) { if (executionParams.discoveredEndpoint() != null) { URI discoveredEndpoint = executionParams.discoveredEndpoint(); return originalRequest.toBuilder().host(discoveredEndpoint.getHost()).port(discoveredEndpoint.getPort()).build(); } Boolean disableHostPrefixInjection = clientConfiguration.option(SdkAdvancedClientOption.DISABLE_HOST_PREFIX_INJECTION); if ((disableHostPrefixInjection != null && disableHostPrefixInjection.equals(Boolean.TRUE)) || StringUtils.isEmpty(executionParams.hostPrefixExpression())) { return originalRequest; } return originalRequest.toBuilder() .host(executionParams.hostPrefixExpression() + originalRequest.host()) .build(); }
/** * Convenience method to set the {@link #protocol()}, {@link #host()}, {@link #port()}, and * {@link #encodedPath()} from a {@link URI} object. * * @param uri URI containing protocol, host, port and path. * @return This builder for method chaining. */ @Override default Builder uri(URI uri) { return this.protocol(uri.getScheme()) .host(uri.getHost()) .port(uri.getPort()) .encodedPath(SdkHttpUtils.appendUri(uri.getRawPath(), encodedPath())); }
@Override public SdkHttpFullRequest.Builder toBuilder() { return new Builder() .contentStreamProvider(contentStreamProvider) .protocol(protocol) .host(host) .port(port) .encodedPath(path) .rawQueryParameters(queryParameters) .method(httpMethod) .headers(headers) ; }
@Override public SdkHttpFullRequest.Builder toBuilder() { return new Builder() .contentStreamProvider(contentStreamProvider) .protocol(protocol) .host(host) .port(port) .encodedPath(path) .rawQueryParameters(queryParameters) .method(httpMethod) .headers(headers) ; }