org.apache.hc.client5.http.impl.async

## 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

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `execute(org.apache.hc.core5.http.HttpRequest userRequest, org.apache.hc.core5.http.nio.AsyncEntityProducer entityProducer, AsyncExecChain.Scope scope, AsyncExecChain chain, AsyncExecCallback asyncExecCallback)` Executes the actual HTTP request.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### 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` - If a protocol error occurs.
        `IOException` - If an I/O error occurs.

Copyright © 1999–2021 The Apache Software Foundation. All rights reserved.