Class ClientExecutionParams<InputT extends SdkRequest,OutputT>
java.lang.Object
software.amazon.awssdk.core.client.handler.ClientExecutionParams<InputT,OutputT>
- Type Parameters:
InputT
- Input POJO type.OutputT
- Output POJO type.
@NotThreadSafe
public final class ClientExecutionParams<InputT extends SdkRequest,OutputT>
extends Object
Encapsulates parameters needed for a particular API call. Captures input and output pojo types.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncredentialType
(CredentialType credentialType) discoveredEndpoint
(URI discoveredEndpoint) Non-streaming requests can use handlers that handle both error and success as a single handler instead of submitting individual success and error handlers.HttpResponseHandler
<? extends SdkException> getInput()
boolean
hostPrefixExpression
(String hostPrefixExpression) Sets the resolved host prefix expression that will be added as a prefix to the original endpoint.boolean
putExecutionAttribute
(ExecutionAttribute<T> attribute, T value) withAsyncRequestBody
(AsyncRequestBody asyncRequestBody) withCombinedResponseHandler
(HttpResponseHandler<Response<OutputT>> combinedResponseHandler) withErrorResponseHandler
(HttpResponseHandler<? extends SdkException> errorResponseHandler) withFullDuplex
(boolean fullDuplex) Sets whether the API is a full duplex ie, request and response are streamed in parallel.withInitialRequestEvent
(boolean hasInitialRequestEvent) Sets whether this is an event streaming request over RPC.withMarshaller
(Marshaller<InputT> marshaller) withMetricCollector
(MetricCollector metricCollector) withOperationName
(String operationName) Sets the operation name of the API.withProtocolMetadata
(SdkProtocolMetadata protocolMetadata) Sets the protocol metadata of the API.withRequestBody
(RequestBody requestBody) withRequestConfiguration
(SdkClientConfiguration requestConfiguration) withResponseHandler
(HttpResponseHandler<OutputT> responseHandler)
-
Constructor Details
-
ClientExecutionParams
public ClientExecutionParams()
-
-
Method Details
-
getMarshaller
-
withMarshaller
-
getInput
-
withInput
-
getResponseHandler
-
withResponseHandler
public ClientExecutionParams<InputT,OutputT> withResponseHandler(HttpResponseHandler<OutputT> responseHandler) -
getErrorResponseHandler
-
withErrorResponseHandler
public ClientExecutionParams<InputT,OutputT> withErrorResponseHandler(HttpResponseHandler<? extends SdkException> errorResponseHandler) -
getCombinedResponseHandler
Non-streaming requests can use handlers that handle both error and success as a single handler instead of submitting individual success and error handlers. This allows the protocol to have more control over how to determine success and failure from a given HTTP response. This handler is mutually exclusive togetResponseHandler()
andgetErrorResponseHandler()
and an exception will be thrown if this constraint is violated. -
withCombinedResponseHandler
public ClientExecutionParams<InputT,OutputT> withCombinedResponseHandler(HttpResponseHandler<Response<OutputT>> combinedResponseHandler) -
getRequestBody
-
withRequestBody
-
getAsyncRequestBody
-
withAsyncRequestBody
public ClientExecutionParams<InputT,OutputT> withAsyncRequestBody(AsyncRequestBody asyncRequestBody) -
isFullDuplex
public boolean isFullDuplex() -
withFullDuplex
Sets whether the API is a full duplex ie, request and response are streamed in parallel. -
hasInitialRequestEvent
public boolean hasInitialRequestEvent() -
withInitialRequestEvent
public ClientExecutionParams<InputT,OutputT> withInitialRequestEvent(boolean hasInitialRequestEvent) Sets whether this is an event streaming request over RPC. -
getOperationName
-
withOperationName
Sets the operation name of the API. -
getProtocolMetadata
-
withProtocolMetadata
public ClientExecutionParams<InputT,OutputT> withProtocolMetadata(SdkProtocolMetadata protocolMetadata) Sets the protocol metadata of the API. -
hostPrefixExpression
-
hostPrefixExpression
Sets the resolved host prefix expression that will be added as a prefix to the original endpoint. This value is present only if the operation is tagged with endpoint trait. -
discoveredEndpoint
-
discoveredEndpoint
-
credentialType
-
credentialType
-
withMetricCollector
-
putExecutionAttribute
public <T> ClientExecutionParams<InputT,OutputT> putExecutionAttribute(ExecutionAttribute<T> attribute, T value) -
executionAttributes
-
getMetricCollector
-
requestConfiguration
-
withRequestConfiguration
public <T> ClientExecutionParams<InputT,OutputT> withRequestConfiguration(SdkClientConfiguration requestConfiguration)
-