org.apache.hc.client5.http.impl.classic

## Class ProtocolExec

- java.lang.Object
- - org.apache.hc.client5.http.impl.classic.ProtocolExec

- All Implemented Interfaces:
    ExecChainHandler

      @Contract(threading=STATELESS)
       @Internal
      public final class ProtocolExec
      extends Object
      implements ExecChainHandler

  Request execution handler in the classic 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:
    4.3

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ProtocolExec(AuthenticationStrategy targetAuthStrategy, AuthenticationStrategy proxyAuthStrategy, SchemePortResolver schemePortResolver, boolean authCachingDisabled)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `ClassicHttpResponse` | `execute(ClassicHttpRequest userRequest, ExecChain.Scope scope, ExecChain chain)` Executes the actual HTTP request.

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

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

- - ### Constructor Detail

    - #### ProtocolExec

          public ProtocolExec(AuthenticationStrategy targetAuthStrategy,
                              AuthenticationStrategy proxyAuthStrategy,
                              SchemePortResolver schemePortResolver,
                              boolean authCachingDisabled)

  - ### Method Detail

    - #### execute

          public ClassicHttpResponse execute(ClassicHttpRequest userRequest,
                                             ExecChain.Scope scope,
                                             ExecChain chain)
                                      throws IOException,
                                             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 interface `ExecChainHandler`
      Parameters:
        `userRequest` - the actual request.
        `scope` - the execution scope .
        `chain` - the next element in the request execution chain.
      Throws:
        `IOException`
        `HttpException`

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