Interface ExecChainHandler

  • All Known Implementing Classes:
    BackoffStrategyExec, CachingExec, ConnectExec, ContentCompressionExec, HttpRequestRetryExec, MainClientExec, ProtocolExec, RedirectExec

    @Contract(threading=STATELESS)
    public interface ExecChainHandler
    Abstract request execution handler in a classic 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.

    Important: please note it is required for decorators that implement post execution aspects or response post-processing of any sort to release resources associated with the response by calling Closeable.close() methods in case of an I/O, protocol or runtime exception, or in case the response is not propagated to the caller.

    Since:
    4.3
    • Method Detail

      • execute

        org.apache.hc.core5.http.ClassicHttpResponse execute​(org.apache.hc.core5.http.ClassicHttpRequest request,
                                                             ExecChain.Scope scope,
                                                             ExecChain chain)
                                                      throws java.io.IOException,
                                                             org.apache.hc.core5.http.HttpException
        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.
        Parameters:
        request - the actual request.
        scope - the execution scope .
        chain - the next element in the request execution chain.
        Throws:
        java.io.IOException
        org.apache.hc.core5.http.HttpException