Package org.apache.hc.client5.http.async
Interface AsyncExecChainHandler
-
- All Known Implementing Classes:
AsyncCachingExec
,AsyncConnectExec
,AsyncHttpRequestRetryExec
,AsyncProtocolExec
,AsyncRedirectExec
,H2AsyncMainClientExec
,HttpAsyncMainClientExec
@Contract(threading=STATELESS) public interface AsyncExecChainHandler
Abstract request execution handler in an asynchronous client side request execution chain. Handlers can either be a decorator around another element that implements a cross cutting aspect or a self-contained executor capable of producing a response for the given request.For information regarding the handler chain behaviour in case of a request re-execution, please refer to the
AsyncHttpRequestRetryExec
javadoc.Well known request execution handlers could be referred to by name using one of the
ChainElement
enum values.- Since:
- 5.0
- See Also:
ChainElement
,HttpAsyncClientBuilder.addExecInterceptorFirst(String, AsyncExecChainHandler)
,HttpAsyncClientBuilder.addExecInterceptorBefore(String, String, AsyncExecChainHandler)
,HttpAsyncClientBuilder.addExecInterceptorAfter(String, String, AsyncExecChainHandler)
,HttpAsyncClientBuilder.addExecInterceptorLast(String, AsyncExecChainHandler)
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
execute(org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.nio.AsyncEntityProducer entityProducer, AsyncExecChain.Scope scope, AsyncExecChain chain, AsyncExecCallback asyncExecCallback)
Executes the actual HTTP request.
-
-
-
Method Detail
-
execute
void execute(org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.nio.AsyncEntityProducer entityProducer, AsyncExecChain.Scope scope, AsyncExecChain chain, AsyncExecCallback asyncExecCallback) throws org.apache.hc.core5.http.HttpException, java.io.IOException
Executes the actual HTTP request. The handler can choose to return a response message immediately inside the call or asynchronously at some later point or delegate request execution to the next element in the execution chain.- Parameters:
request
- the actual request.entityProducer
- the request entity producer ornull
if the request does not enclose an entity.scope
- the execution scope .chain
- the next element in the request execution chain.asyncExecCallback
- the execution callback.- Throws:
org.apache.hc.core5.http.HttpException
java.io.IOException
-
-