Class StreamingNettyByteBody

java.lang.Object
io.micronaut.http.body.InternalByteBody
io.micronaut.http.body.stream.BaseStreamingByteBody<StreamingNettyByteBody.SharedBuffer>
io.micronaut.http.netty.body.StreamingNettyByteBody
All Implemented Interfaces:
io.micronaut.http.body.ByteBody, io.micronaut.http.body.CloseableByteBody, Closeable, AutoCloseable

@Internal public final class StreamingNettyByteBody extends io.micronaut.http.body.stream.BaseStreamingByteBody<StreamingNettyByteBody.SharedBuffer> implements io.micronaut.http.body.CloseableByteBody
Netty implementation for streaming ByteBody.
Since:
4.5.0
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    This class buffers input data and distributes it to multiple StreamingNettyByteBody instances.

    Nested classes/interfaces inherited from interface io.micronaut.http.body.ByteBody

    io.micronaut.http.body.ByteBody.BodyDiscardedException, io.micronaut.http.body.ByteBody.SplitBackpressureMode
  • Field Summary

    Fields inherited from class io.micronaut.http.body.stream.BaseStreamingByteBody

    sharedBuffer, upstream
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    @NonNull io.micronaut.core.execution.ExecutionFlow<? extends io.micronaut.http.body.CloseableAvailableByteBody>
     
    void
     
    protected io.micronaut.http.body.stream.BaseStreamingByteBody<StreamingNettyByteBody.SharedBuffer>
    derive(io.micronaut.http.body.stream.BufferConsumer.Upstream upstream)
     
    io.micronaut.http.body.stream.BufferConsumer.Upstream
    primary(io.micronaut.http.body.stream.BufferConsumer primary)
     
    @NonNull io.micronaut.http.body.CloseableByteBody
    split(@NonNull io.micronaut.http.body.ByteBody.SplitBackpressureMode backpressureMode)
     
    void
     

    Methods inherited from class io.micronaut.http.body.stream.BaseStreamingByteBody

    allowDiscard, expectedLength, move, toInputStream, toReadBufferPublisher

    Methods inherited from class io.micronaut.http.body.InternalByteBody

    buffer, bufferFlow, failClaim, recordClosed, recordPrimaryOp, toByteArrayPublisher

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface io.micronaut.http.body.ByteBody

    buffer, expectedLength, move, split, toByteArrayPublisher, toByteBufferPublisher, toInputStream, toReadBufferPublisher

    Methods inherited from interface io.micronaut.http.body.CloseableByteBody

    allowDiscard
  • Constructor Details

  • Method Details

    • primary

      public io.micronaut.http.body.stream.BufferConsumer.Upstream primary(io.micronaut.http.body.stream.BufferConsumer primary)
      Specified by:
      primary in class io.micronaut.http.body.stream.BaseStreamingByteBody<StreamingNettyByteBody.SharedBuffer>
    • derive

      protected io.micronaut.http.body.stream.BaseStreamingByteBody<StreamingNettyByteBody.SharedBuffer> derive(io.micronaut.http.body.stream.BufferConsumer.Upstream upstream)
      Specified by:
      derive in class io.micronaut.http.body.stream.BaseStreamingByteBody<StreamingNettyByteBody.SharedBuffer>
    • split

      @NonNull public @NonNull io.micronaut.http.body.CloseableByteBody split(@NonNull @NonNull io.micronaut.http.body.ByteBody.SplitBackpressureMode backpressureMode)
      Specified by:
      split in interface io.micronaut.http.body.ByteBody
    • bufferFlow

      @NonNull public @NonNull io.micronaut.core.execution.ExecutionFlow<? extends io.micronaut.http.body.CloseableAvailableByteBody> bufferFlow()
      Specified by:
      bufferFlow in class io.micronaut.http.body.InternalByteBody
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface io.micronaut.http.body.CloseableByteBody
    • touch

      public void touch()
      Specified by:
      touch in interface io.micronaut.http.body.ByteBody