Class RetryableStage<OutputT>
java.lang.Object
software.amazon.awssdk.core.internal.http.pipeline.stages.RetryableStage<OutputT>
- All Implemented Interfaces:
RequestPipeline<SdkHttpFullRequest,,Response<OutputT>> RequestToResponsePipeline<OutputT>
@SdkInternalApi
public final class RetryableStage<OutputT>
extends Object
implements RequestToResponsePipeline<OutputT>
Wrapper around the pipeline for a single request to provide retry, clock-skew and request throttling functionality.
-
Constructor Summary
ConstructorsConstructorDescriptionRetryableStage(HttpClientDependencies dependencies, RequestPipeline<SdkHttpFullRequest, Response<OutputT>> requestPipeline) -
Method Summary
Modifier and TypeMethodDescriptionexecute(SdkHttpFullRequest request, RequestExecutionContext context) Execute the pipeline with the given input.
-
Constructor Details
-
RetryableStage
public RetryableStage(HttpClientDependencies dependencies, RequestPipeline<SdkHttpFullRequest, Response<OutputT>> requestPipeline)
-
-
Method Details
-
execute
public Response<OutputT> execute(SdkHttpFullRequest request, RequestExecutionContext context) throws Exception Description copied from interface:RequestPipelineExecute the pipeline with the given input.- Specified by:
executein interfaceRequestPipeline<SdkHttpFullRequest,Response<OutputT>> - Parameters:
request- Input to pipeline.context- Context containing both request dependencies, and a container for any mutable state that must be shared between stages.- Returns:
- Output of pipeline.
- Throws:
Exception- If any error occurs. This will be thrown out of the pipeline, if exceptions must be handled seeRequestPipelineBuilder.wrappedWith(BiFunction).
-