Class AuthenticatingAsyncDecorator

java.lang.Object
org.apache.hc.client5.testing.async.AuthenticatingAsyncDecorator
All Implemented Interfaces:
org.apache.hc.core5.http.nio.AsyncDataConsumer, org.apache.hc.core5.http.nio.AsyncDataExchangeHandler, org.apache.hc.core5.http.nio.AsyncDataProducer, org.apache.hc.core5.http.nio.AsyncServerExchangeHandler, org.apache.hc.core5.http.nio.ResourceHolder

public class AuthenticatingAsyncDecorator extends Object implements org.apache.hc.core5.http.nio.AsyncServerExchangeHandler
  • Field Details

    • exchangeHandler

      private final org.apache.hc.core5.http.nio.AsyncServerExchangeHandler exchangeHandler
    • authenticationHandler

      private final AuthenticationHandler<String> authenticationHandler
    • authenticator

      private final Authenticator authenticator
    • responseProducerRef

      private final AtomicReference<org.apache.hc.core5.http.nio.AsyncResponseProducer> responseProducerRef
  • Constructor Details

    • AuthenticatingAsyncDecorator

      public AuthenticatingAsyncDecorator(org.apache.hc.core5.http.nio.AsyncServerExchangeHandler exchangeHandler, AuthenticationHandler<String> authenticationHandler, Authenticator authenticator)
      Since:
      5.3
    • AuthenticatingAsyncDecorator

      public AuthenticatingAsyncDecorator(org.apache.hc.core5.http.nio.AsyncServerExchangeHandler exchangeHandler, Authenticator authenticator)
  • Method Details

    • customizeUnauthorizedResponse

      protected void customizeUnauthorizedResponse(org.apache.hc.core5.http.HttpResponse unauthorized)
    • handleRequest

      public void handleRequest(org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.EntityDetails entityDetails, org.apache.hc.core5.http.nio.ResponseChannel responseChannel, org.apache.hc.core5.http.protocol.HttpContext context) throws org.apache.hc.core5.http.HttpException, IOException
      Specified by:
      handleRequest in interface org.apache.hc.core5.http.nio.AsyncServerExchangeHandler
      Throws:
      org.apache.hc.core5.http.HttpException
      IOException
    • updateCapacity

      public final void updateCapacity(org.apache.hc.core5.http.nio.CapacityChannel capacityChannel) throws IOException
      Specified by:
      updateCapacity in interface org.apache.hc.core5.http.nio.AsyncDataConsumer
      Throws:
      IOException
    • consume

      public final void consume(ByteBuffer src) throws IOException
      Specified by:
      consume in interface org.apache.hc.core5.http.nio.AsyncDataConsumer
      Throws:
      IOException
    • streamEnd

      public final void streamEnd(List<? extends org.apache.hc.core5.http.Header> trailers) throws org.apache.hc.core5.http.HttpException, IOException
      Specified by:
      streamEnd in interface org.apache.hc.core5.http.nio.AsyncDataConsumer
      Throws:
      org.apache.hc.core5.http.HttpException
      IOException
    • available

      public final int available()
      Specified by:
      available in interface org.apache.hc.core5.http.nio.AsyncDataProducer
    • produce

      public final void produce(org.apache.hc.core5.http.nio.DataStreamChannel channel) throws IOException
      Specified by:
      produce in interface org.apache.hc.core5.http.nio.AsyncDataProducer
      Throws:
      IOException
    • failed

      public final void failed(Exception cause)
      Specified by:
      failed in interface org.apache.hc.core5.http.nio.AsyncDataExchangeHandler
    • releaseResources

      public final void releaseResources()
      Specified by:
      releaseResources in interface org.apache.hc.core5.http.nio.ResourceHolder