Class NettyReadBufferFactory

java.lang.Object
io.micronaut.core.io.buffer.ReadBufferFactory
io.micronaut.buffer.netty.NettyReadBufferFactory

public final class NettyReadBufferFactory extends io.micronaut.core.io.buffer.ReadBufferFactory
Netty-based ReadBufferFactory. Also has additional utilities for dealing with netty buffers.
Since:
4.10.0
  • Nested Class Summary

    Nested classes/interfaces inherited from class io.micronaut.core.io.buffer.ReadBufferFactory

    io.micronaut.core.io.buffer.ReadBufferFactory.BufferingOutputStream
  • Method Summary

    Modifier and Type
    Method
    Description
    io.micronaut.core.io.buffer.ReadBuffer
    adapt(byte @NonNull [] array)
     
    @NonNull io.micronaut.core.io.buffer.ReadBuffer
    adapt(io.micronaut.core.io.buffer.ByteBuffer<?> buffer)
     
    @NonNull io.micronaut.core.io.buffer.ReadBuffer
    adapt(@NonNull io.netty.buffer.ByteBuf buffer)
    Create a buffer with the given input data.
    @NonNull io.micronaut.core.io.buffer.ReadBuffer
    adapt(@NonNull ByteBuffer nioBuffer)
     
    <T extends Throwable>
    @NonNull io.micronaut.core.io.buffer.ReadBuffer
    buffer(@NonNull io.micronaut.core.util.functional.ThrowingConsumer<? super OutputStream,T> writer)
     
    @NonNull io.micronaut.core.io.buffer.ReadBuffer
    compose(@NonNull Iterable<@NonNull io.micronaut.core.io.buffer.ReadBuffer> buffers)
     
    @NonNull io.micronaut.core.io.buffer.ReadBuffer
    copyOf(@NonNull InputStream stream)
     
    @NonNull io.micronaut.core.io.buffer.ReadBuffer
    copyOf(@NonNull CharSequence cs, @NonNull Charset charset)
     
    @NonNull io.micronaut.core.io.buffer.ReadBuffer
    copyOf(@NonNull ByteBuffer nioBuffer)
     
    io.micronaut.core.io.buffer.ReadBuffer
     
    static @NonNull NettyReadBufferFactory
    of(@NonNull io.netty.buffer.ByteBufAllocator allocator)
    Get a buffer factory associated with the given allocator.
    io.micronaut.core.io.buffer.ReadBufferFactory.BufferingOutputStream
     
    static @NonNull io.netty.buffer.ByteBuf
    toByteBuf(@NonNull io.micronaut.core.io.buffer.ReadBuffer readBuffer)
    Convert the given ReadBuffer to a netty ByteBuf.

    Methods inherited from class io.micronaut.core.io.buffer.ReadBufferFactory

    getJdkFactory

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • of

      @NonNull public static @NonNull NettyReadBufferFactory of(@NonNull @NonNull io.netty.buffer.ByteBufAllocator allocator)
      Get a buffer factory associated with the given allocator.
      Parameters:
      allocator - The allocator to use
      Returns:
      The buffer factory
    • createEmpty

      public io.micronaut.core.io.buffer.ReadBuffer createEmpty()
      Overrides:
      createEmpty in class io.micronaut.core.io.buffer.ReadBufferFactory
    • copyOf

      @NonNull public @NonNull io.micronaut.core.io.buffer.ReadBuffer copyOf(@NonNull @NonNull CharSequence cs, @NonNull @NonNull Charset charset)
      Overrides:
      copyOf in class io.micronaut.core.io.buffer.ReadBufferFactory
    • copyOf

      @NonNull public @NonNull io.micronaut.core.io.buffer.ReadBuffer copyOf(@NonNull @NonNull InputStream stream) throws IOException
      Overrides:
      copyOf in class io.micronaut.core.io.buffer.ReadBufferFactory
      Throws:
      IOException
    • copyOf

      @NonNull public @NonNull io.micronaut.core.io.buffer.ReadBuffer copyOf(@NonNull @NonNull ByteBuffer nioBuffer)
      Overrides:
      copyOf in class io.micronaut.core.io.buffer.ReadBufferFactory
    • adapt

      @NonNull public @NonNull io.micronaut.core.io.buffer.ReadBuffer adapt(@NonNull @NonNull ByteBuffer nioBuffer)
      Overrides:
      adapt in class io.micronaut.core.io.buffer.ReadBufferFactory
    • adapt

      @NonNull public @NonNull io.micronaut.core.io.buffer.ReadBuffer adapt(@NonNull io.micronaut.core.io.buffer.ByteBuffer<?> buffer)
      Overrides:
      adapt in class io.micronaut.core.io.buffer.ReadBufferFactory
    • adapt

      public io.micronaut.core.io.buffer.ReadBuffer adapt(byte @NonNull [] array)
      Overrides:
      adapt in class io.micronaut.core.io.buffer.ReadBufferFactory
    • adapt

      @NonNull public @NonNull io.micronaut.core.io.buffer.ReadBuffer adapt(@NonNull @NonNull io.netty.buffer.ByteBuf buffer)
      Create a buffer with the given input data. Whether the data is copied or used as-is is implementation-defined. Ownership of the given buffer transfers to this class, so it should not be modified elsewhere after this method is called. Release ownership also transfers to this class.
      Parameters:
      buffer - A buffer
      Returns:
      The adapted buffer
    • toByteBuf

      @NonNull public static @NonNull io.netty.buffer.ByteBuf toByteBuf(@NonNull @NonNull io.micronaut.core.io.buffer.ReadBuffer readBuffer)
      Convert the given ReadBuffer to a netty ByteBuf. This is a consuming operation.
      Parameters:
      readBuffer - The buffer to read from
      Returns:
      The read data
    • buffer

      @NonNull public <T extends Throwable> @NonNull io.micronaut.core.io.buffer.ReadBuffer buffer(@NonNull @NonNull io.micronaut.core.util.functional.ThrowingConsumer<? super OutputStream,T> writer) throws T
      Overrides:
      buffer in class io.micronaut.core.io.buffer.ReadBufferFactory
      Throws:
      T
    • outputStreamBuffer

      @NonNull public io.micronaut.core.io.buffer.ReadBufferFactory.BufferingOutputStream outputStreamBuffer()
      Overrides:
      outputStreamBuffer in class io.micronaut.core.io.buffer.ReadBufferFactory
    • compose

      @NonNull public @NonNull io.micronaut.core.io.buffer.ReadBuffer compose(@NonNull @NonNull Iterable<@NonNull io.micronaut.core.io.buffer.ReadBuffer> buffers)
      Overrides:
      compose in class io.micronaut.core.io.buffer.ReadBufferFactory