Interface SdkHttpRequest.Builder
- All Superinterfaces:
Buildable
,CopyableBuilder<SdkHttpRequest.Builder,
,SdkHttpRequest> SdkBuilder<SdkHttpRequest.Builder,
,SdkHttpRequest> SdkHttpHeaders
- All Known Subinterfaces:
SdkHttpFullRequest.Builder
- Enclosing interface:
SdkHttpRequest
SdkHttpFullRequest
. An instance of this can be created using
SdkHttpFullRequest.builder()
.-
Method Summary
Modifier and TypeMethodDescriptionappendHeader
(String headerName, String headerValue) Add a single header to be included in the created HTTP request.appendRawQueryParameter
(String paramName, String paramValue) Add a single un-encoded query parameter to be included in the created HTTP request.Removes all headers from this builder.Removes all query parameters from this builder.The path, exactly as it was configured withencodedPath(String)
.encodedPath
(String path) Configure anSdkHttpRequest.encodedPath()
to be used in the created HTTP request.default void
forEachRawQueryParameter
(BiConsumer<? super String, ? super List<String>> consumer) headers()
The query parameters, exactly as they were configured withheaders(Map)
,putHeader(String, String)
andputHeader(String, List)
.Configure anSdkHttpHeaders.headers()
to be used in the created HTTP request.host()
The host, exactly as it was configured withhost(String)
.Configure aSdkHttpRequest.host()
to be used in the created HTTP request.method()
The path, exactly as it was configured withmethod(SdkHttpMethod)
.method
(SdkHttpMethod httpMethod) Configure anSdkHttpRequest.method()
to be used in the created HTTP request.default int
port()
The port, exactly as it was configured withport(Integer)
.Configure aSdkHttpRequest.port()
to be used in the created HTTP request.protocol()
The protocol, exactly as it was configured withprotocol(String)
.Configure aSdkHttpRequest.protocol()
to be used in the created HTTP request.default SdkHttpRequest.Builder
Add a single header to be included in the created HTTP request.Add a single header with multiple values to be included in the created HTTP request.default SdkHttpRequest.Builder
putRawQueryParameter
(String paramName, String paramValue) Add a single un-encoded query parameter to be included in the created HTTP request.putRawQueryParameter
(String paramName, List<String> paramValues) Add a single un-encoded query parameter with multiple values to be included in the created HTTP request.The query parameters, exactly as they were configured withrawQueryParameters(Map)
,putRawQueryParameter(String, String)
andputRawQueryParameter(String, List)
.rawQueryParameters
(Map<String, List<String>> queryParameters) Configure anSdkHttpRequest.rawQueryParameters()
to be used in the created HTTP request.removeHeader
(String headerName) Remove all values for the requested header from this builder.removeQueryParameter
(String paramName) Remove all values for the requested query parameter from this builder.default SdkHttpRequest.Builder
Convenience method to set theprotocol()
,host()
,port()
,encodedPath()
and extracts query parameters from aURI
object.Methods inherited from interface software.amazon.awssdk.utils.builder.CopyableBuilder
copy
Methods inherited from interface software.amazon.awssdk.utils.builder.SdkBuilder
applyMutation, build
Methods inherited from interface software.amazon.awssdk.http.SdkHttpHeaders
firstMatchingHeader, firstMatchingHeader, forEachHeader, matchingHeaders, numHeaders
-
Method Details
-
uri
Convenience method to set theprotocol()
,host()
,port()
,encodedPath()
and extracts query parameters from aURI
object.- Parameters:
uri
- URI containing protocol, host, port and path.- Returns:
- This builder for method chaining.
-
protocol
String protocol()The protocol, exactly as it was configured withprotocol(String)
. -
protocol
Configure aSdkHttpRequest.protocol()
to be used in the created HTTP request. This is not validated until the http request is created. -
host
String host()The host, exactly as it was configured withhost(String)
. -
host
Configure aSdkHttpRequest.host()
to be used in the created HTTP request. This is not validated until the http request is created. -
port
Integer port()The port, exactly as it was configured withport(Integer)
. -
port
Configure aSdkHttpRequest.port()
to be used in the created HTTP request. This is not validated until the http request is created. In order to simplify mapping from aURI
, "-1" will be treated as "null" when the http request is created. -
encodedPath
String encodedPath()The path, exactly as it was configured withencodedPath(String)
. -
encodedPath
Configure anSdkHttpRequest.encodedPath()
to be used in the created HTTP request. This is not validated until the http request is created. This path MUST be URL encoded.Justification of requirements: The path must be encoded when it is configured, because there is no way for the HTTP implementation to distinguish a "/" that is part of a resource name that should be encoded as "%2F" from a "/" that is part of the actual path.
-
rawQueryParameters
The query parameters, exactly as they were configured withrawQueryParameters(Map)
,putRawQueryParameter(String, String)
andputRawQueryParameter(String, List)
. -
putRawQueryParameter
Add a single un-encoded query parameter to be included in the created HTTP request.This completely OVERRIDES any values already configured with this parameter name in the builder.
- Parameters:
paramName
- The name of the query parameter to addparamValue
- The un-encoded value for the query parameter.
-
appendRawQueryParameter
Add a single un-encoded query parameter to be included in the created HTTP request.This will ADD the value to any existing values already configured with this parameter name in the builder.
- Parameters:
paramName
- The name of the query parameter to addparamValue
- The un-encoded value for the query parameter.
-
putRawQueryParameter
Add a single un-encoded query parameter with multiple values to be included in the created HTTP request.This completely OVERRIDES any values already configured with this parameter name in the builder.
- Parameters:
paramName
- The name of the query parameter to addparamValues
- The un-encoded values for the query parameter.
-
rawQueryParameters
Configure anSdkHttpRequest.rawQueryParameters()
to be used in the created HTTP request. This is not validated until the http request is created. This overrides any values currently configured in the builder. The query parameters MUST NOT be URL encoded.Justification of requirements: The query parameters must not be encoded when they are configured because some HTTP implementations perform this encoding automatically.
-
removeQueryParameter
Remove all values for the requested query parameter from this builder. -
clearQueryParameters
SdkHttpRequest.Builder clearQueryParameters()Removes all query parameters from this builder. -
forEachRawQueryParameter
-
numRawQueryParameters
default int numRawQueryParameters() -
encodedQueryParameters
-
method
SdkHttpMethod method()The path, exactly as it was configured withmethod(SdkHttpMethod)
. -
method
Configure anSdkHttpRequest.method()
to be used in the created HTTP request. This is not validated until the http request is created. -
headers
The query parameters, exactly as they were configured withheaders(Map)
,putHeader(String, String)
andputHeader(String, List)
.- Specified by:
headers
in interfaceSdkHttpHeaders
- Returns:
- An unmodifiable map of all headers in this message.
-
putHeader
Add a single header to be included in the created HTTP request.This completely OVERRIDES any values already configured with this header name in the builder.
- Parameters:
headerName
- The name of the header to add (eg. "Host")headerValue
- The value for the header
-
putHeader
Add a single header with multiple values to be included in the created HTTP request.This completely OVERRIDES any values already configured with this header name in the builder.
- Parameters:
headerName
- The name of the header to addheaderValues
- The values for the header
-
appendHeader
Add a single header to be included in the created HTTP request.This will ADD the value to any existing values already configured with this header name in the builder.
- Parameters:
headerName
- The name of the header to addheaderValue
- The value for the header
-
headers
Configure anSdkHttpHeaders.headers()
to be used in the created HTTP request. This is not validated until the http request is created. This overrides any values currently configured in the builder. -
removeHeader
Remove all values for the requested header from this builder. -
clearHeaders
SdkHttpRequest.Builder clearHeaders()Removes all headers from this builder.
-