Class NettyImmutableDataBuf
java.lang.Object
eu.cloudnetservice.driver.impl.network.netty.buffer.NettyImmutableDataBuf
- All Implemented Interfaces:
eu.cloudnetservice.driver.network.buffer.DataBuf, AutoCloseable
- Direct Known Subclasses:
NettyMutableDataBuf
public sealed class NettyImmutableDataBuf
extends Object
implements eu.cloudnetservice.driver.network.buffer.DataBuf
permits NettyMutableDataBuf
The default implementation of an immutable data buf wrapping a netty byte buf.
- Since:
- 4.0
-
Nested Class Summary
Nested classes/interfaces inherited from interface eu.cloudnetservice.driver.network.buffer.DataBuf
eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final io.netty5.buffer.Bufferprotected intprotected int -
Constructor Summary
ConstructorsConstructorDescriptionNettyImmutableDataBuf(@NonNull io.netty5.buffer.Buffer buffer) Constructs a new netty immutable data buf instance. -
Method Summary
Modifier and TypeMethodDescriptionboolean@NonNull eu.cloudnetservice.driver.network.buffer.DataBufacquire()intacquires()@NonNull eu.cloudnetservice.driver.network.buffer.DataBufadvanceReaderOffset(int delta) eu.cloudnetservice.driver.network.buffer.DataBuf.Mutable@NonNull io.netty5.buffer.Bufferbuffer()Get the wrapped netty byte buf of this buffer, for internal use only.private @NonNull io.netty5.buffer.internal.ResourceSupport<?, ?> Gets the backing buffer instance cast to aResourceSupportinstance.voidclose()voidintbooleanbytereadByte()byte[]charreadChar()@NonNull eu.cloudnetservice.driver.network.buffer.DataBufdoubleint@NonNull eu.cloudnetservice.driver.network.buffer.DataBufreaderOffset(int offset) floatintreadInt()longreadLong()<T> TreadNullable(@NonNull Function<eu.cloudnetservice.driver.network.buffer.DataBuf, T> readerWhenNonNull) <T> TreadNullable(@NonNull Function<eu.cloudnetservice.driver.network.buffer.DataBuf, T> readerWhenNonNull, T valueWhenNull) <T> TreadObject(@NonNull Class<T> type) <T> TreadObject(@NonNull Type type) short@NonNull eu.cloudnetservice.driver.network.buffer.DataBufvoidrelease()@NonNull eu.cloudnetservice.driver.network.buffer.DataBufbyte[]toString()
-
Field Details
-
buffer
protected final io.netty5.buffer.Buffer buffer -
readOffset
protected int readOffset -
writeOffset
protected int writeOffset
-
-
Constructor Details
-
NettyImmutableDataBuf
Constructs a new netty immutable data buf instance.- Parameters:
buffer- the netty buffer to wrap.- Throws:
NullPointerException- if the given buffer is null.IllegalArgumentException- if the given buffer cannot be wrapped into a data buf.
-
-
Method Details
-
readBoolean
public boolean readBoolean()- Specified by:
readBooleanin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readByte
public byte readByte()- Specified by:
readBytein interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readInt
public int readInt()- Specified by:
readIntin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readShort
public short readShort()- Specified by:
readShortin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readLong
public long readLong()- Specified by:
readLongin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readFloat
public float readFloat()- Specified by:
readFloatin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readDouble
public double readDouble()- Specified by:
readDoublein interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readChar
public char readChar()- Specified by:
readCharin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readByteArray
public byte[] readByteArray()- Specified by:
readByteArrayin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readUniqueId
-
readString
-
readDataBuf
-
toByteArray
public byte[] toByteArray()- Specified by:
toByteArrayin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readObject
-
readObject
-
readNullable
-
readNullable
-
readableBytes
public int readableBytes()- Specified by:
readableBytesin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readerOffset
public int readerOffset()- Specified by:
readerOffsetin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
readerOffset
-
advanceReaderOffset
-
readableNioBuffer
- Specified by:
readableNioBufferin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
startTransaction
-
redoTransaction
-
asMutable
- Specified by:
asMutablein interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
accessible
public boolean accessible()- Specified by:
accessiblein interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
acquires
public int acquires()- Specified by:
acquiresin interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
acquire
-
release
public void release()- Specified by:
releasein interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
forceRelease
public void forceRelease()- Specified by:
forceReleasein interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceeu.cloudnetservice.driver.network.buffer.DataBuf
-
toString
-
buffer
-
bufferAsResourceSupport
-