Class DefaultHttpContentProcessor

  • All Implemented Interfaces:
    io.micronaut.core.async.publisher.Publishers.MicronautPublisher<io.netty.buffer.ByteBufHolder>, io.micronaut.core.async.subscriber.Completable, io.micronaut.core.async.subscriber.Emitter<io.netty.buffer.ByteBufHolder>, io.micronaut.core.util.Toggleable, HttpContentProcessor<io.netty.buffer.ByteBufHolder>, org.reactivestreams.Processor<io.netty.buffer.ByteBufHolder,​io.netty.buffer.ByteBufHolder>, org.reactivestreams.Publisher<io.netty.buffer.ByteBufHolder>, org.reactivestreams.Subscriber<io.netty.buffer.ByteBufHolder>

    @Internal
    public class DefaultHttpContentProcessor
    extends io.micronaut.core.async.processor.SingleThreadedBufferingProcessor<io.netty.buffer.ByteBufHolder,​io.netty.buffer.ByteBufHolder>
    implements HttpContentProcessor<io.netty.buffer.ByteBufHolder>
    This class will handle subscribing to a stream of HttpContent.
    Since:
    1.0
    • Nested Class Summary

      • Nested classes/interfaces inherited from class io.micronaut.core.async.subscriber.SingleThreadedBufferingSubscriber

        io.micronaut.core.async.subscriber.SingleThreadedBufferingSubscriber.BackPressureState, io.micronaut.core.async.subscriber.SingleThreadedBufferingSubscriber.DownstreamSubscription
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected long advertisedLength  
      protected io.micronaut.http.server.HttpServerConfiguration configuration  
      protected io.netty.channel.ChannelHandlerContext ctx  
      protected NettyHttpRequest nettyHttpRequest  
      protected java.util.concurrent.atomic.AtomicLong receivedLength  
      protected long requestMaxSize  
      protected io.micronaut.http.netty.stream.StreamedHttpMessage streamedHttpMessage  
      • Fields inherited from class io.micronaut.core.async.subscriber.SingleThreadedBufferingSubscriber

        upstreamBuffer, upstreamDemand, upstreamState, upstreamSubscription
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void onUpstreamMessage​(io.netty.buffer.ByteBufHolder message)  
      void subscribe​(org.reactivestreams.Subscriber<? super io.netty.buffer.ByteBufHolder> downstreamSubscriber)  
      • Methods inherited from class io.micronaut.core.async.processor.SingleThreadedBufferingProcessor

        currentDownstreamSubscriber, doOnComplete, doOnError, doOnNext, doOnSubscribe, getDownstreamSubscriber, subscribeDownstream
      • Methods inherited from class io.micronaut.core.async.subscriber.SingleThreadedBufferingSubscriber

        newDownstreamSubscription, onComplete, onError, onNext, onSubscribe, provideDownstreamSubscription
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.reactivestreams.Subscriber

        onComplete, onError, onNext, onSubscribe
      • Methods inherited from interface io.micronaut.core.util.Toggleable

        isEnabled
    • Field Detail

      • ctx

        protected final io.netty.channel.ChannelHandlerContext ctx
      • configuration

        protected final io.micronaut.http.server.HttpServerConfiguration configuration
      • advertisedLength

        protected final long advertisedLength
      • requestMaxSize

        protected final long requestMaxSize
      • streamedHttpMessage

        protected final io.micronaut.http.netty.stream.StreamedHttpMessage streamedHttpMessage
      • receivedLength

        protected final java.util.concurrent.atomic.AtomicLong receivedLength
    • Constructor Detail

      • DefaultHttpContentProcessor

        public DefaultHttpContentProcessor​(NettyHttpRequest<?> nettyHttpRequest,
                                           io.micronaut.http.server.HttpServerConfiguration configuration)
        Parameters:
        nettyHttpRequest - The NettyHttpRequest
        configuration - The HttpServerConfiguration
    • Method Detail

      • subscribe

        public final void subscribe​(org.reactivestreams.Subscriber<? super io.netty.buffer.ByteBufHolder> downstreamSubscriber)
        Specified by:
        subscribe in interface org.reactivestreams.Publisher<io.netty.buffer.ByteBufHolder>
        Overrides:
        subscribe in class io.micronaut.core.async.processor.SingleThreadedBufferingProcessor<io.netty.buffer.ByteBufHolder,​io.netty.buffer.ByteBufHolder>
      • onUpstreamMessage

        protected void onUpstreamMessage​(io.netty.buffer.ByteBufHolder message)
        Specified by:
        onUpstreamMessage in class io.micronaut.core.async.processor.SingleThreadedBufferingProcessor<io.netty.buffer.ByteBufHolder,​io.netty.buffer.ByteBufHolder>