Class 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 java.lang.Object
    implements org.apache.hc.core5.http.nio.AsyncServerExchangeHandler
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int available()  
      void consume​(java.nio.ByteBuffer src)  
      protected void customizeUnauthorizedResponse​(org.apache.hc.core5.http.HttpResponse unauthorized)  
      void failed​(java.lang.Exception cause)  
      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)  
      void produce​(org.apache.hc.core5.http.nio.DataStreamChannel channel)  
      void releaseResources()  
      void streamEnd​(java.util.List<? extends org.apache.hc.core5.http.Header> trailers)  
      void updateCapacity​(org.apache.hc.core5.http.nio.CapacityChannel capacityChannel)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • exchangeHandler

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

        private final java.util.concurrent.atomic.AtomicReference<org.apache.hc.core5.http.nio.AsyncResponseProducer> responseProducerRef
    • Constructor Detail

      • AuthenticatingAsyncDecorator

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

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

      • 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,
                                  java.io.IOException
        Specified by:
        handleRequest in interface org.apache.hc.core5.http.nio.AsyncServerExchangeHandler
        Throws:
        org.apache.hc.core5.http.HttpException
        java.io.IOException
      • updateCapacity

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

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

        public final void streamEnd​(java.util.List<? extends org.apache.hc.core5.http.Header> trailers)
                             throws org.apache.hc.core5.http.HttpException,
                                    java.io.IOException
        Specified by:
        streamEnd in interface org.apache.hc.core5.http.nio.AsyncDataConsumer
        Throws:
        org.apache.hc.core5.http.HttpException
        java.io.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 java.io.IOException
        Specified by:
        produce in interface org.apache.hc.core5.http.nio.AsyncDataProducer
        Throws:
        java.io.IOException
      • failed

        public final void failed​(java.lang.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