Class NettyMutableDataBuf

java.lang.Object
eu.cloudnetservice.driver.impl.network.netty.buffer.NettyImmutableDataBuf
eu.cloudnetservice.driver.impl.network.netty.buffer.NettyMutableDataBuf
All Implemented Interfaces:
eu.cloudnetservice.driver.network.buffer.DataBuf, eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable, AutoCloseable

public final class NettyMutableDataBuf extends NettyImmutableDataBuf implements eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
Represents the default implementation of a mutable data buf, wrapping a netty byte buffer.
Since:
4.0
  • Constructor Details

    • NettyMutableDataBuf

      public NettyMutableDataBuf(@NonNull @NonNull io.netty5.buffer.Buffer buffer)
      Constructs a new mutable data buf instance.
      Parameters:
      buffer - the netty buffer to wrap.
      Throws:
      NullPointerException - if the given buffer is null.
      IllegalArgumentException - if the given buffer is read-only.
  • Method Details

    • writeBoolean

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeBoolean(boolean b)
      Specified by:
      writeBoolean in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeInt

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeInt(int integer)
      Specified by:
      writeInt in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeByte

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeByte(byte b)
      Specified by:
      writeByte in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeShort

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeShort(short s)
      Specified by:
      writeShort in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeLong

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeLong(long l)
      Specified by:
      writeLong in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeFloat

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeFloat(float f)
      Specified by:
      writeFloat in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeDouble

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeDouble(double d)
      Specified by:
      writeDouble in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeChar

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeChar(char c)
      Specified by:
      writeChar in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeByteArray

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeByteArray(byte[] b)
      Specified by:
      writeByteArray in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeByteArray

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeByteArray(byte[] b, int amount)
      Specified by:
      writeByteArray in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeUniqueId

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeUniqueId(@NonNull @NonNull UUID uuid)
      Specified by:
      writeUniqueId in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeString

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeString(@NonNull @NonNull String string)
      Specified by:
      writeString in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeDataBuf

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeDataBuf(@NonNull @NonNull eu.cloudnetservice.driver.network.buffer.DataBuf buf)
      Specified by:
      writeDataBuf in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeObject

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeObject(@Nullable @Nullable Object obj)
      Specified by:
      writeObject in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeNullable

      @NonNull public <T> @NonNull eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable writeNullable(@Nullable T object, @NonNull @NonNull BiConsumer<eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable, T> handlerWhenNonNull)
      Specified by:
      writeNullable in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • ensureWriteable

      @NonNull public eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable ensureWriteable(int bytes)
      Specified by:
      ensureWriteable in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeableBytes

      public int writeableBytes()
      Specified by:
      writeableBytes in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writerOffset

      public int writerOffset()
      Specified by:
      writerOffset in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writerOffset

      @NonNull public @NonNull eu.cloudnetservice.driver.network.buffer.DataBuf writerOffset(int offset)
      Specified by:
      writerOffset in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • advanceWriterOffset

      @NonNull public @NonNull eu.cloudnetservice.driver.network.buffer.DataBuf advanceWriterOffset(int delta)
      Specified by:
      advanceWriterOffset in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • writeableNioBuffer

      @NonNull public @NonNull ByteBuffer writeableNioBuffer()
      Specified by:
      writeableNioBuffer in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • asImmutable

      @NonNull public @NonNull eu.cloudnetservice.driver.network.buffer.DataBuf asImmutable()
      Specified by:
      asImmutable in interface eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable
    • toString

      @NonNull public @NonNull String toString()
      Overrides:
      toString in class NettyImmutableDataBuf