Class HttpRequestRetryExec
- All Implemented Interfaces:
ExecChainHandler
Further responsibilities such as communication with the opposite endpoint is delegated to the next executor in the request execution chain.
If this handler is active, pay particular attention to the placement
of other handlers within the handler chain relative to the retry handler.
Use ChainElement.RETRY
as name when referring to this handler.
If a custom handler is placed before the retry handler, the handler will see the initial request and the final outcome after the last retry. Elapsed time will account for any delays imposed by the retry handler.
A custom handler which is placed after the retry handler will be invoked for each individual retry. Elapsed time will measure each individual http request, without the delay imposed by the retry handler.
- Since:
- 5.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.slf4j.Logger
private final HttpRequestRetryStrategy
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.hc.core5.http.ClassicHttpResponse
execute
(org.apache.hc.core5.http.ClassicHttpRequest request, ExecChain.Scope scope, ExecChain chain) Executes the actual HTTP request.
-
Field Details
-
LOG
private static final org.slf4j.Logger LOG -
retryStrategy
-
-
Constructor Details
-
HttpRequestRetryExec
-
-
Method Details
-
execute
public org.apache.hc.core5.http.ClassicHttpResponse execute(org.apache.hc.core5.http.ClassicHttpRequest request, ExecChain.Scope scope, ExecChain chain) throws IOException, org.apache.hc.core5.http.HttpException Description copied from interface:ExecChainHandler
Executes the actual HTTP request. The handler can choose to return a response message or delegate request execution to the next element in the execution chain.- Specified by:
execute
in interfaceExecChainHandler
- Parameters:
request
- the actual request.scope
- the execution scope .chain
- the next element in the request execution chain.- Throws:
IOException
org.apache.hc.core5.http.HttpException
-