Class AsyncProtocolExec

java.lang.Object
org.apache.hc.client5.http.impl.async.AsyncProtocolExec
All Implemented Interfaces:
AsyncExecChainHandler

@Contract(threading=STATELESS) @Internal public final class AsyncProtocolExec extends Object implements AsyncExecChainHandler
Request execution handler in the asynchronous request execution chain that is responsible for implementation of HTTP specification requirements.

Further responsibilities such as communication with the opposite endpoint is delegated to the next executor in the request execution chain.

Since:
5.0
  • Field Details

  • Constructor Details

  • Method Details

    • execute

      public void execute(org.apache.hc.core5.http.HttpRequest userRequest, org.apache.hc.core5.http.nio.AsyncEntityProducer entityProducer, AsyncExecChain.Scope scope, AsyncExecChain chain, AsyncExecCallback asyncExecCallback) throws org.apache.hc.core5.http.HttpException, IOException
      Description copied from interface: AsyncExecChainHandler
      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.
      Specified by:
      execute in interface AsyncExecChainHandler
      Parameters:
      userRequest - the actual request.
      entityProducer - the request entity producer or null 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
      IOException
    • internalExecute

      private void internalExecute(org.apache.hc.core5.http.HttpHost target, String pathPrefix, AuthExchange targetAuthExchange, AuthExchange proxyAuthExchange, AtomicBoolean challenged, 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, IOException
      Throws:
      org.apache.hc.core5.http.HttpException
      IOException
    • needAuthentication

      private boolean needAuthentication(AuthExchange targetAuthExchange, AuthExchange proxyAuthExchange, org.apache.hc.core5.http.HttpHost proxy, org.apache.hc.core5.http.HttpHost target, String pathPrefix, org.apache.hc.core5.http.HttpResponse response, HttpClientContext context)