Class IoBufferWrapper
- All Implemented Interfaces:
Comparable<IoBuffer>
IoBuffer
that wraps a buffer and proxies any operations to it.
You can think this class like a FilterOutputStream
. All operations are proxied by default
so that you can extend this class and override existing operations selectively. You can introduce
new operations, too.
- Version:
- $Rev: 671827 $, $Date: 2008-06-26 10:49:48 +0200 (Thu, 26 Jun 2008) $
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbyte[]
array()
int
Returns anInputStream
that reads the data from this buffer.Returns anOutputStream
that appends the data into this buffer.buf()
Returns the underlying NIO buffer instance.int
capacity()
capacity
(int newCapacity) Increases the capacity of this buffer.clear()
compact()
int
boolean
expand
(int expectedRemaining) Changes the capacity and limit of this buffer so this buffer get the specified expectedRemaining room from the current position.expand
(int pos, int expectedRemaining) Changes the capacity and limit of this buffer so this buffer get the specified expectedRemaining room from the specified position.fill
(byte value, int size) Fills this buffer with the specified value.fill
(int size) Fills this buffer withNUL (0x00)
.fillAndReset
(byte value, int size) Fills this buffer with the specified value.fillAndReset
(int size) Fills this buffer withNUL (0x00)
.flip()
void
free()
Declares this buffer and all its derived buffers are not used anymore so that it can be reused by someIoBufferAllocator
implementations.byte
get()
get
(byte[] dst) get
(byte[] dst, int offset, int length) byte
get
(int index) char
getChar()
char
getChar
(int index) double
double
getDouble
(int index) <E extends Enum<E>>
EReads a byte from the buffer and returns the correlating enum constant defined by the specified enum type.<E extends Enum<E>>
EReads a byte from the buffer and returns the correlating enum constant defined by the specified enum type.<E extends Enum<E>>
EgetEnumInt
(int index, Class<E> enumClass) Reads an int from the buffer and returns the correlating enum constant defined by the specified enum type.<E extends Enum<E>>
EgetEnumInt
(Class<E> enumClass) Reads an int from the buffer and returns the correlating enum constant defined by the specified enum type.getEnumSet
(int index, Class<E> enumClass) Reads a byte sized bit vector and converts it to anEnumSet
.getEnumSet
(Class<E> enumClass) Reads a byte sized bit vector and converts it to anEnumSet
.getEnumSetInt
(int index, Class<E> enumClass) Reads an int sized bit vector and converts it to anEnumSet
.getEnumSetInt
(Class<E> enumClass) Reads an int sized bit vector and converts it to anEnumSet
.getEnumSetLong
(int index, Class<E> enumClass) Reads a long sized bit vector and converts it to anEnumSet
.getEnumSetLong
(Class<E> enumClass) Reads a long sized bit vector and converts it to anEnumSet
.getEnumSetShort
(int index, Class<E> enumClass) Reads a short sized bit vector and converts it to anEnumSet
.getEnumSetShort
(Class<E> enumClass) Reads a short sized bit vector and converts it to anEnumSet
.<E extends Enum<E>>
EgetEnumShort
(int index, Class<E> enumClass) Reads a short from the buffer and returns the correlating enum constant defined by the specified enum type.<E extends Enum<E>>
EgetEnumShort
(Class<E> enumClass) Reads a short from the buffer and returns the correlating enum constant defined by the specified enum type.float
getFloat()
float
getFloat
(int index) Returns hexdump of this buffer.getHexDump
(int lengthLimit) Return hexdump of this buffer with limited length.int
getInt()
int
getInt
(int index) long
getLong()
long
getLong
(int index) int
Relative get method for reading a medium int value.int
getMediumInt
(int index) Absolute get method for reading a medium int value.Reads a Java object from the buffer using the contextClassLoader
of the current thread.getObject
(ClassLoader classLoader) Reads a Java object from the buffer using the specified classLoader.Returns the parent buffer that this buffer wrapped.getPrefixedString
(int prefixLength, CharsetDecoder decoder) Reads a string which has a length field before the actual encoded string, using the specifieddecoder
and returns it.getPrefixedString
(CharsetDecoder decoder) Reads a string which has a 16-bit length field before the actual encoded string, using the specifieddecoder
and returns it.short
getShort()
short
getShort
(int index) getSlice
(int length) TODO document me.getSlice
(int index, int length) TODO document me.getString
(int fieldSize, CharsetDecoder decoder) Reads aNUL
-terminated string from this buffer using the specifieddecoder
and returns it.getString
(CharsetDecoder decoder) Reads aNUL
-terminated string from this buffer using the specifieddecoder
and returns it.short
Reads one unsigned byte as a short integer.short
getUnsigned
(int index) Reads one byte as an unsigned short integer.long
Reads four bytes unsigned integer.long
getUnsignedInt
(int index) Reads four bytes unsigned integer.int
Relative get method for reading an unsigned medium int value.int
getUnsignedMediumInt
(int index) Absolute get method for reading an unsigned medium int value.int
Reads two bytes unsigned integer.int
getUnsignedShort
(int index) Reads two bytes unsigned integer.boolean
hasArray()
int
hashCode()
boolean
int
indexOf
(byte b) Returns the first occurence position of the specified byte from the current position to the current limit.boolean
Returns true if and only if autoExpand is turned on.boolean
Returns true if and only if autoShrink is turned on.boolean
returns true if and only if this buffer is derived from other buffer viaIoBuffer.duplicate()
,IoBuffer.slice()
orIoBuffer.asReadOnlyBuffer()
.boolean
isDirect()
boolean
int
limit()
limit
(int newLimit) mark()
int
Returns the position of the current mark.int
Returns the minimum capacity of this buffer which is used to determine the new capacity of the buffer shrunk byIoBuffer.compact()
andIoBuffer.shrink()
operation.minimumCapacity
(int minimumCapacity) Sets the minimum capacity of this buffer which is used to determine the new capacity of the buffer shrunk byIoBuffer.compact()
andIoBuffer.shrink()
operation.order()
int
position()
position
(int newPosition) boolean
prefixedDataAvailable
(int prefixLength) Returns true if this buffer contains a data which has a data length as a prefix and the buffer has remaining data as enough as specified in the data length field.boolean
prefixedDataAvailable
(int prefixLength, int maxDataLength) Returns true if this buffer contains a data which has a data length as a prefix and the buffer has remaining data as enough as specified in the data length field.put
(byte b) put
(byte[] src) put
(byte[] src, int offset, int length) put
(int index, byte b) Writes the content of the specified src into this buffer.put
(ByteBuffer src) Writes the content of the specified src into this buffer.putChar
(char value) putChar
(int index, char value) putDouble
(double value) putDouble
(int index, double value) Writes an enum's ordinal value to the buffer as a byte.Writes an enum's ordinal value to the buffer as a byte.putEnumInt
(int index, Enum<?> e) Writes an enum's ordinal value to the buffer as an integer.putEnumInt
(Enum<?> e) Writes an enum's ordinal value to the buffer as an integer.putEnumSet
(int index, Set<E> set) Writes the specifiedSet
to the buffer as a byte sized bit vector.putEnumSet
(Set<E> set) Writes the specifiedSet
to the buffer as a byte sized bit vector.putEnumSetInt
(int index, Set<E> set) Writes the specifiedSet
to the buffer as an int sized bit vector.putEnumSetInt
(Set<E> set) Writes the specifiedSet
to the buffer as an int sized bit vector.putEnumSetLong
(int index, Set<E> set) Writes the specifiedSet
to the buffer as a long sized bit vector.putEnumSetLong
(Set<E> set) Writes the specifiedSet
to the buffer as a long sized bit vector.putEnumSetShort
(int index, Set<E> set) Writes the specifiedSet
to the buffer as a short sized bit vector.putEnumSetShort
(Set<E> set) Writes the specifiedSet
to the buffer as a short sized bit vector.putEnumShort
(int index, Enum<?> e) Writes an enum's ordinal value to the buffer as a short.putEnumShort
(Enum<?> e) Writes an enum's ordinal value to the buffer as a short.putFloat
(float value) putFloat
(int index, float value) putInt
(int value) putInt
(int index, int value) putLong
(int index, long value) putLong
(long value) putMediumInt
(int value) Relative put method for writing a medium int value.putMediumInt
(int index, int value) Absolute put method for writing a medium int value.Writes the specified Java object to the buffer.putPrefixedString
(CharSequence in, int prefixLength, int padding, byte padValue, CharsetEncoder encoder) Writes the content ofin
into this buffer as a string which has a 16-bit length field before the actual encoded string, using the specifiedencoder
.putPrefixedString
(CharSequence in, int prefixLength, int padding, CharsetEncoder encoder) Writes the content ofin
into this buffer as a string which has a 16-bit length field before the actual encoded string, using the specifiedencoder
.putPrefixedString
(CharSequence in, int prefixLength, CharsetEncoder encoder) Writes the content ofin
into this buffer as a string which has a 16-bit length field before the actual encoded string, using the specifiedencoder
.putPrefixedString
(CharSequence in, CharsetEncoder encoder) Writes the content ofin
into this buffer as a string which has a 16-bit length field before the actual encoded string, using the specifiedencoder
.putShort
(int index, short value) putShort
(short value) putString
(CharSequence in, int fieldSize, CharsetEncoder encoder) Writes the content ofin
into this buffer as aNUL
-terminated string using the specifiedencoder
.putString
(CharSequence in, CharsetEncoder encoder) Writes the content ofin
into this buffer using the specifiedencoder
.int
reset()
rewind()
setAutoExpand
(boolean autoExpand) Turns on or off autoExpand.setAutoShrink
(boolean autoShrink) Turns on or off autoShrink.shrink()
Changes the capacity of this buffer so this buffer occupies as less memory as possible while retaining the position, limit and the buffer content between the position and limit.skip
(int size) Forwards the position of this buffer as the specifiedsize
bytes.slice()
sweep()
Clears this buffer and fills its content with NUL.sweep
(byte value) double Clears this buffer and fills its content with value.toString()
Methods inherited from class com.google.code.yanf4j.buffer.IoBuffer
allocate, allocate, getAllocator, isUseDirectBuffer, normalizeCapacity, setAllocator, setUseDirectBuffer, wrap, wrap, wrap
-
Field Details
-
buf
The buffer proxied by this proxy.
-
-
Constructor Details
-
IoBufferWrapper
Create a new instance.- Parameters:
buf
- the buffer to be proxied
-
-
Method Details
-
getParentBuffer
Returns the parent buffer that this buffer wrapped. -
isDirect
public boolean isDirect() -
buf
Description copied from class:IoBuffer
Returns the underlying NIO buffer instance. -
capacity
public int capacity() -
position
public int position() -
position
-
limit
public int limit() -
limit
-
mark
-
reset
-
clear
-
sweep
Description copied from class:IoBuffer
Clears this buffer and fills its content with NUL. The position is set to zero, the limit is set to the capacity, and the mark is discarded. -
sweep
Description copied from class:IoBuffer
double Clears this buffer and fills its content with value. The position is set to zero, the limit is set to the capacity, and the mark is discarded. -
flip
-
rewind
-
remaining
public int remaining() -
hasRemaining
public boolean hasRemaining()- Specified by:
hasRemaining
in classIoBuffer
- See Also:
-
get
public byte get() -
getUnsigned
public short getUnsigned()Description copied from class:IoBuffer
Reads one unsigned byte as a short integer.- Specified by:
getUnsigned
in classIoBuffer
-
put
-
get
public byte get(int index) -
getUnsigned
public short getUnsigned(int index) Description copied from class:IoBuffer
Reads one byte as an unsigned short integer.- Specified by:
getUnsigned
in classIoBuffer
-
put
-
get
-
getSlice
Description copied from class:IoBuffer
TODO document me. -
getSlice
Description copied from class:IoBuffer
TODO document me. -
get
-
put
Description copied from class:IoBuffer
Writes the content of the specified src into this buffer. -
put
Description copied from class:IoBuffer
Writes the content of the specified src into this buffer. -
put
-
put
-
compact
-
toString
-
hashCode
public int hashCode() -
equals
-
compareTo
-
order
-
order
-
getChar
public char getChar() -
putChar
-
getChar
public char getChar(int index) -
putChar
-
asCharBuffer
- Specified by:
asCharBuffer
in classIoBuffer
- See Also:
-
getShort
public short getShort() -
getUnsignedShort
public int getUnsignedShort()Description copied from class:IoBuffer
Reads two bytes unsigned integer.- Specified by:
getUnsignedShort
in classIoBuffer
-
putShort
-
getShort
public short getShort(int index) -
getUnsignedShort
public int getUnsignedShort(int index) Description copied from class:IoBuffer
Reads two bytes unsigned integer.- Specified by:
getUnsignedShort
in classIoBuffer
-
putShort
-
asShortBuffer
- Specified by:
asShortBuffer
in classIoBuffer
- See Also:
-
getInt
public int getInt() -
getUnsignedInt
public long getUnsignedInt()Description copied from class:IoBuffer
Reads four bytes unsigned integer.- Specified by:
getUnsignedInt
in classIoBuffer
-
putInt
-
getInt
public int getInt(int index) -
getUnsignedInt
public long getUnsignedInt(int index) Description copied from class:IoBuffer
Reads four bytes unsigned integer.- Specified by:
getUnsignedInt
in classIoBuffer
-
putInt
-
asIntBuffer
- Specified by:
asIntBuffer
in classIoBuffer
- See Also:
-
getLong
public long getLong() -
putLong
-
getLong
public long getLong(int index) -
putLong
-
asLongBuffer
- Specified by:
asLongBuffer
in classIoBuffer
- See Also:
-
getFloat
public float getFloat() -
putFloat
-
getFloat
public float getFloat(int index) -
putFloat
-
asFloatBuffer
- Specified by:
asFloatBuffer
in classIoBuffer
- See Also:
-
getDouble
public double getDouble() -
putDouble
-
getDouble
public double getDouble(int index) -
putDouble
-
asDoubleBuffer
- Specified by:
asDoubleBuffer
in classIoBuffer
- See Also:
-
getHexDump
Description copied from class:IoBuffer
Returns hexdump of this buffer. The data and pointer are not changed as a result of this method call.- Specified by:
getHexDump
in classIoBuffer
- Returns:
- hexidecimal representation of this buffer
-
getString
Description copied from class:IoBuffer
Reads aNUL
-terminated string from this buffer using the specifieddecoder
and returns it.- Specified by:
getString
in classIoBuffer
- Parameters:
fieldSize
- the maximum number of bytes to read- Throws:
CharacterCodingException
-
getString
Description copied from class:IoBuffer
Reads aNUL
-terminated string from this buffer using the specifieddecoder
and returns it. This method reads until the limit of this buffer if no NUL is found.- Specified by:
getString
in classIoBuffer
- Throws:
CharacterCodingException
-
getPrefixedString
Description copied from class:IoBuffer
Reads a string which has a 16-bit length field before the actual encoded string, using the specifieddecoder
and returns it. This method is a shortcut for getPrefixedString(2, decoder).- Specified by:
getPrefixedString
in classIoBuffer
- Throws:
CharacterCodingException
-
getPrefixedString
public String getPrefixedString(int prefixLength, CharsetDecoder decoder) throws CharacterCodingException Description copied from class:IoBuffer
Reads a string which has a length field before the actual encoded string, using the specifieddecoder
and returns it.- Specified by:
getPrefixedString
in classIoBuffer
- Parameters:
prefixLength
- the length of the length field (1, 2, or 4)- Throws:
CharacterCodingException
-
putString
public IoBuffer putString(CharSequence in, int fieldSize, CharsetEncoder encoder) throws CharacterCodingException Description copied from class:IoBuffer
Writes the content ofin
into this buffer as aNUL
-terminated string using the specifiedencoder
.If the charset name of the encoder is UTF-16, you cannot specify odd
fieldSize
, and this method will append twoNUL
s as a terminator.Please note that this method doesn't terminate with
NUL
if the input string is longer than fieldSize.- Specified by:
putString
in classIoBuffer
- Parameters:
fieldSize
- the maximum number of bytes to write- Throws:
CharacterCodingException
-
putString
Description copied from class:IoBuffer
Writes the content ofin
into this buffer using the specifiedencoder
. This method doesn't terminate string with NUL. You have to do it by yourself.- Specified by:
putString
in classIoBuffer
- Throws:
CharacterCodingException
-
putPrefixedString
public IoBuffer putPrefixedString(CharSequence in, CharsetEncoder encoder) throws CharacterCodingException Description copied from class:IoBuffer
Writes the content ofin
into this buffer as a string which has a 16-bit length field before the actual encoded string, using the specifiedencoder
. This method is a shortcut for putPrefixedString(in, 2, 0, encoder).- Specified by:
putPrefixedString
in classIoBuffer
- Throws:
CharacterCodingException
-
putPrefixedString
public IoBuffer putPrefixedString(CharSequence in, int prefixLength, CharsetEncoder encoder) throws CharacterCodingException Description copied from class:IoBuffer
Writes the content ofin
into this buffer as a string which has a 16-bit length field before the actual encoded string, using the specifiedencoder
. This method is a shortcut for putPrefixedString(in, prefixLength, 0, encoder).- Specified by:
putPrefixedString
in classIoBuffer
- Parameters:
prefixLength
- the length of the length field (1, 2, or 4)- Throws:
CharacterCodingException
-
putPrefixedString
public IoBuffer putPrefixedString(CharSequence in, int prefixLength, int padding, CharsetEncoder encoder) throws CharacterCodingException Description copied from class:IoBuffer
Writes the content ofin
into this buffer as a string which has a 16-bit length field before the actual encoded string, using the specifiedencoder
. This method is a shortcut for putPrefixedString(in, prefixLength, padding, ( byte ) 0, encoder) .- Specified by:
putPrefixedString
in classIoBuffer
- Parameters:
prefixLength
- the length of the length field (1, 2, or 4)padding
- the number of padded NULs (1 (or 0), 2, or 4)- Throws:
CharacterCodingException
-
putPrefixedString
public IoBuffer putPrefixedString(CharSequence in, int prefixLength, int padding, byte padValue, CharsetEncoder encoder) throws CharacterCodingException Description copied from class:IoBuffer
Writes the content ofin
into this buffer as a string which has a 16-bit length field before the actual encoded string, using the specifiedencoder
.- Specified by:
putPrefixedString
in classIoBuffer
- Parameters:
prefixLength
- the length of the length field (1, 2, or 4)padding
- the number of padded bytes (1 (or 0), 2, or 4)padValue
- the value of padded bytes- Throws:
CharacterCodingException
-
skip
Description copied from class:IoBuffer
Forwards the position of this buffer as the specifiedsize
bytes. -
fill
Description copied from class:IoBuffer
Fills this buffer with the specified value. This method moves buffer position forward. -
fillAndReset
Description copied from class:IoBuffer
Fills this buffer with the specified value. This method does not change buffer position.- Specified by:
fillAndReset
in classIoBuffer
-
fill
Description copied from class:IoBuffer
Fills this buffer withNUL (0x00)
. This method moves buffer position forward. -
fillAndReset
Description copied from class:IoBuffer
Fills this buffer withNUL (0x00)
. This method does not change buffer position.- Specified by:
fillAndReset
in classIoBuffer
-
isAutoExpand
public boolean isAutoExpand()Description copied from class:IoBuffer
Returns true if and only if autoExpand is turned on.- Specified by:
isAutoExpand
in classIoBuffer
-
setAutoExpand
Description copied from class:IoBuffer
Turns on or off autoExpand.- Specified by:
setAutoExpand
in classIoBuffer
-
expand
Description copied from class:IoBuffer
Changes the capacity and limit of this buffer so this buffer get the specified expectedRemaining room from the specified position. This method works even if you didn't set autoExpand to true. -
expand
Description copied from class:IoBuffer
Changes the capacity and limit of this buffer so this buffer get the specified expectedRemaining room from the current position. This method works even if you didn't set autoExpand to true. -
getObject
Description copied from class:IoBuffer
Reads a Java object from the buffer using the contextClassLoader
of the current thread.- Specified by:
getObject
in classIoBuffer
- Throws:
ClassNotFoundException
-
getObject
Description copied from class:IoBuffer
Reads a Java object from the buffer using the specified classLoader.- Specified by:
getObject
in classIoBuffer
- Throws:
ClassNotFoundException
-
putObject
Description copied from class:IoBuffer
Writes the specified Java object to the buffer. -
asInputStream
Description copied from class:IoBuffer
Returns anInputStream
that reads the data from this buffer.InputStream.read()
returns -1 if the buffer position reaches to the limit.- Specified by:
asInputStream
in classIoBuffer
-
asOutputStream
Description copied from class:IoBuffer
Returns anOutputStream
that appends the data into this buffer. Please note that theOutputStream.write(int)
will throw aBufferOverflowException
instead of anIOException
in case of buffer overflow. Please set autoExpand property by callingIoBuffer.setAutoExpand(boolean)
to prevent the unexpected runtime exception.- Specified by:
asOutputStream
in classIoBuffer
-
duplicate
-
slice
-
asReadOnlyBuffer
- Specified by:
asReadOnlyBuffer
in classIoBuffer
- See Also:
-
array
public byte[] array() -
arrayOffset
public int arrayOffset()- Specified by:
arrayOffset
in classIoBuffer
- See Also:
-
minimumCapacity
public int minimumCapacity()Description copied from class:IoBuffer
Returns the minimum capacity of this buffer which is used to determine the new capacity of the buffer shrunk byIoBuffer.compact()
andIoBuffer.shrink()
operation. The default value is the initial capacity of the buffer.- Specified by:
minimumCapacity
in classIoBuffer
-
minimumCapacity
Description copied from class:IoBuffer
Sets the minimum capacity of this buffer which is used to determine the new capacity of the buffer shrunk byIoBuffer.compact()
andIoBuffer.shrink()
operation. The default value is the initial capacity of the buffer.- Specified by:
minimumCapacity
in classIoBuffer
-
capacity
Description copied from class:IoBuffer
Increases the capacity of this buffer. If the new capacity is less than or equal to the current capacity, this method returns silently. If the new capacity is greater than the current capacity, the buffer is reallocated while retaining the position, limit, mark and the content of the buffer. -
isReadOnly
public boolean isReadOnly()- Specified by:
isReadOnly
in classIoBuffer
- See Also:
-
markValue
public int markValue()Description copied from class:IoBuffer
Returns the position of the current mark. This method returns -1 if no mark is set. -
hasArray
public boolean hasArray() -
free
public void free()Description copied from class:IoBuffer
Declares this buffer and all its derived buffers are not used anymore so that it can be reused by someIoBufferAllocator
implementations. It is not mandatory to call this method, but you might want to invoke this method for maximum performance. -
isDerived
public boolean isDerived()Description copied from class:IoBuffer
returns true if and only if this buffer is derived from other buffer viaIoBuffer.duplicate()
,IoBuffer.slice()
orIoBuffer.asReadOnlyBuffer()
. -
isAutoShrink
public boolean isAutoShrink()Description copied from class:IoBuffer
Returns true if and only if autoShrink is turned on.- Specified by:
isAutoShrink
in classIoBuffer
-
setAutoShrink
Description copied from class:IoBuffer
Turns on or off autoShrink.- Specified by:
setAutoShrink
in classIoBuffer
-
shrink
Description copied from class:IoBuffer
Changes the capacity of this buffer so this buffer occupies as less memory as possible while retaining the position, limit and the buffer content between the position and limit. The capacity of the buffer never becomes less thanIoBuffer.minimumCapacity()
. The mark is discarded once the capacity changes. -
getMediumInt
public int getMediumInt()Description copied from class:IoBuffer
Relative get method for reading a medium int value.Reads the next three bytes at this buffer's current position, composing them into an int value according to the current byte order, and then increments the position by three.
- Specified by:
getMediumInt
in classIoBuffer
- Returns:
- The medium int value at the buffer's current position
-
getUnsignedMediumInt
public int getUnsignedMediumInt()Description copied from class:IoBuffer
Relative get method for reading an unsigned medium int value.Reads the next three bytes at this buffer's current position, composing them into an int value according to the current byte order, and then increments the position by three.
- Specified by:
getUnsignedMediumInt
in classIoBuffer
- Returns:
- The unsigned medium int value at the buffer's current position
-
getMediumInt
public int getMediumInt(int index) Description copied from class:IoBuffer
Absolute get method for reading a medium int value.Reads the next three bytes at this buffer's current position, composing them into an int value according to the current byte order.
- Specified by:
getMediumInt
in classIoBuffer
- Parameters:
index
- The index from which the medium int will be read- Returns:
- The medium int value at the given index
-
getUnsignedMediumInt
public int getUnsignedMediumInt(int index) Description copied from class:IoBuffer
Absolute get method for reading an unsigned medium int value.Reads the next three bytes at this buffer's current position, composing them into an int value according to the current byte order.
- Specified by:
getUnsignedMediumInt
in classIoBuffer
- Parameters:
index
- The index from which the unsigned medium int will be read- Returns:
- The unsigned medium int value at the given index
-
putMediumInt
Description copied from class:IoBuffer
Relative put method for writing a medium int value.Writes three bytes containing the given int value, in the current byte order, into this buffer at the current position, and then increments the position by three.
- Specified by:
putMediumInt
in classIoBuffer
- Parameters:
value
- The medium int value to be written- Returns:
- This buffer
-
putMediumInt
Description copied from class:IoBuffer
Absolute put method for writing a medium int value.Writes three bytes containing the given int value, in the current byte order, into this buffer at the given index.
- Specified by:
putMediumInt
in classIoBuffer
- Parameters:
index
- The index at which the bytes will be writtenvalue
- The medium int value to be written- Returns:
- This buffer
-
getHexDump
Description copied from class:IoBuffer
Return hexdump of this buffer with limited length.- Specified by:
getHexDump
in classIoBuffer
- Parameters:
lengthLimit
- The maximum number of bytes to dump from the current buffer position.- Returns:
- hexidecimal representation of this buffer
-
prefixedDataAvailable
public boolean prefixedDataAvailable(int prefixLength) Description copied from class:IoBuffer
Returns true if this buffer contains a data which has a data length as a prefix and the buffer has remaining data as enough as specified in the data length field. This method is identical with prefixedDataAvailable( prefixLength, Integer.MAX_VALUE ). Please not that using this method can allow DoS (Denial of Service) attack in case the remote peer sends too big data length value. It is recommended to useIoBuffer.prefixedDataAvailable(int, int)
instead.- Specified by:
prefixedDataAvailable
in classIoBuffer
- Parameters:
prefixLength
- the length of the prefix field (1, 2, or 4)
-
prefixedDataAvailable
public boolean prefixedDataAvailable(int prefixLength, int maxDataLength) Description copied from class:IoBuffer
Returns true if this buffer contains a data which has a data length as a prefix and the buffer has remaining data as enough as specified in the data length field.- Specified by:
prefixedDataAvailable
in classIoBuffer
- Parameters:
prefixLength
- the length of the prefix field (1, 2, or 4)maxDataLength
- the allowed maximum of the read data length
-
indexOf
public int indexOf(byte b) Description copied from class:IoBuffer
Returns the first occurence position of the specified byte from the current position to the current limit. -
getEnum
Description copied from class:IoBuffer
Reads a byte from the buffer and returns the correlating enum constant defined by the specified enum type. -
getEnum
Description copied from class:IoBuffer
Reads a byte from the buffer and returns the correlating enum constant defined by the specified enum type. -
getEnumShort
Description copied from class:IoBuffer
Reads a short from the buffer and returns the correlating enum constant defined by the specified enum type.- Specified by:
getEnumShort
in classIoBuffer
- Type Parameters:
E
- The enum type to return- Parameters:
enumClass
- The enum's class object
-
getEnumShort
Description copied from class:IoBuffer
Reads a short from the buffer and returns the correlating enum constant defined by the specified enum type.- Specified by:
getEnumShort
in classIoBuffer
- Type Parameters:
E
- The enum type to return- Parameters:
index
- the index from which the bytes will be readenumClass
- The enum's class object
-
getEnumInt
Description copied from class:IoBuffer
Reads an int from the buffer and returns the correlating enum constant defined by the specified enum type.- Specified by:
getEnumInt
in classIoBuffer
- Type Parameters:
E
- The enum type to return- Parameters:
enumClass
- The enum's class object
-
getEnumInt
Description copied from class:IoBuffer
Reads an int from the buffer and returns the correlating enum constant defined by the specified enum type.- Specified by:
getEnumInt
in classIoBuffer
- Type Parameters:
E
- The enum type to return- Parameters:
index
- the index from which the bytes will be readenumClass
- The enum's class object
-
putEnum
Description copied from class:IoBuffer
Writes an enum's ordinal value to the buffer as a byte. -
putEnum
Description copied from class:IoBuffer
Writes an enum's ordinal value to the buffer as a byte. -
putEnumShort
Description copied from class:IoBuffer
Writes an enum's ordinal value to the buffer as a short.- Specified by:
putEnumShort
in classIoBuffer
- Parameters:
e
- The enum to write to the buffer
-
putEnumShort
Description copied from class:IoBuffer
Writes an enum's ordinal value to the buffer as a short.- Specified by:
putEnumShort
in classIoBuffer
- Parameters:
index
- The index at which the bytes will be writtene
- The enum to write to the buffer
-
putEnumInt
Description copied from class:IoBuffer
Writes an enum's ordinal value to the buffer as an integer.- Specified by:
putEnumInt
in classIoBuffer
- Parameters:
e
- The enum to write to the buffer
-
putEnumInt
Description copied from class:IoBuffer
Writes an enum's ordinal value to the buffer as an integer.- Specified by:
putEnumInt
in classIoBuffer
- Parameters:
index
- The index at which the bytes will be writtene
- The enum to write to the buffer
-
getEnumSet
Description copied from class:IoBuffer
Reads a byte sized bit vector and converts it to anEnumSet
.Each bit is mapped to a value in the specified enum. The least significant bit maps to the first entry in the specified enum and each subsequent bit maps to each subsequent bit as mapped to the subsequent enum value.
- Specified by:
getEnumSet
in classIoBuffer
- Type Parameters:
E
- the enum type- Parameters:
enumClass
- the enum class used to create the EnumSet- Returns:
- the EnumSet representation of the bit vector
-
getEnumSet
Description copied from class:IoBuffer
Reads a byte sized bit vector and converts it to anEnumSet
.- Specified by:
getEnumSet
in classIoBuffer
- Type Parameters:
E
- the enum type- Parameters:
index
- the index from which the byte will be readenumClass
- the enum class used to create the EnumSet- Returns:
- the EnumSet representation of the bit vector
- See Also:
-
getEnumSetShort
Description copied from class:IoBuffer
Reads a short sized bit vector and converts it to anEnumSet
.- Specified by:
getEnumSetShort
in classIoBuffer
- Type Parameters:
E
- the enum type- Parameters:
enumClass
- the enum class used to create the EnumSet- Returns:
- the EnumSet representation of the bit vector
- See Also:
-
getEnumSetShort
Description copied from class:IoBuffer
Reads a short sized bit vector and converts it to anEnumSet
.- Specified by:
getEnumSetShort
in classIoBuffer
- Type Parameters:
E
- the enum type- Parameters:
index
- the index from which the bytes will be readenumClass
- the enum class used to create the EnumSet- Returns:
- the EnumSet representation of the bit vector
- See Also:
-
getEnumSetInt
Description copied from class:IoBuffer
Reads an int sized bit vector and converts it to anEnumSet
.- Specified by:
getEnumSetInt
in classIoBuffer
- Type Parameters:
E
- the enum type- Parameters:
enumClass
- the enum class used to create the EnumSet- Returns:
- the EnumSet representation of the bit vector
- See Also:
-
getEnumSetInt
Description copied from class:IoBuffer
Reads an int sized bit vector and converts it to anEnumSet
.- Specified by:
getEnumSetInt
in classIoBuffer
- Type Parameters:
E
- the enum type- Parameters:
index
- the index from which the bytes will be readenumClass
- the enum class used to create the EnumSet- Returns:
- the EnumSet representation of the bit vector
- See Also:
-
getEnumSetLong
Description copied from class:IoBuffer
Reads a long sized bit vector and converts it to anEnumSet
.- Specified by:
getEnumSetLong
in classIoBuffer
- Type Parameters:
E
- the enum type- Parameters:
enumClass
- the enum class used to create the EnumSet- Returns:
- the EnumSet representation of the bit vector
- See Also:
-
getEnumSetLong
Description copied from class:IoBuffer
Reads a long sized bit vector and converts it to anEnumSet
.- Specified by:
getEnumSetLong
in classIoBuffer
- Type Parameters:
E
- the enum type- Parameters:
index
- the index from which the bytes will be readenumClass
- the enum class used to create the EnumSet- Returns:
- the EnumSet representation of the bit vector
- See Also:
-
putEnumSet
Description copied from class:IoBuffer
Writes the specifiedSet
to the buffer as a byte sized bit vector.- Specified by:
putEnumSet
in classIoBuffer
- Type Parameters:
E
- the enum type of the Set- Parameters:
set
- the enum set to write to the buffer
-
putEnumSet
Description copied from class:IoBuffer
Writes the specifiedSet
to the buffer as a byte sized bit vector.- Specified by:
putEnumSet
in classIoBuffer
- Type Parameters:
E
- the enum type of the Set- Parameters:
index
- the index at which the byte will be writtenset
- the enum set to write to the buffer
-
putEnumSetShort
Description copied from class:IoBuffer
Writes the specifiedSet
to the buffer as a short sized bit vector.- Specified by:
putEnumSetShort
in classIoBuffer
- Type Parameters:
E
- the enum type of the Set- Parameters:
set
- the enum set to write to the buffer
-
putEnumSetShort
Description copied from class:IoBuffer
Writes the specifiedSet
to the buffer as a short sized bit vector.- Specified by:
putEnumSetShort
in classIoBuffer
- Type Parameters:
E
- the enum type of the Set- Parameters:
index
- the index at which the bytes will be writtenset
- the enum set to write to the buffer
-
putEnumSetInt
Description copied from class:IoBuffer
Writes the specifiedSet
to the buffer as an int sized bit vector.- Specified by:
putEnumSetInt
in classIoBuffer
- Type Parameters:
E
- the enum type of the Set- Parameters:
set
- the enum set to write to the buffer
-
putEnumSetInt
Description copied from class:IoBuffer
Writes the specifiedSet
to the buffer as an int sized bit vector.- Specified by:
putEnumSetInt
in classIoBuffer
- Type Parameters:
E
- the enum type of the Set- Parameters:
index
- the index at which the bytes will be writtenset
- the enum set to write to the buffer
-
putEnumSetLong
Description copied from class:IoBuffer
Writes the specifiedSet
to the buffer as a long sized bit vector.- Specified by:
putEnumSetLong
in classIoBuffer
- Type Parameters:
E
- the enum type of the Set- Parameters:
set
- the enum set to write to the buffer
-
putEnumSetLong
Description copied from class:IoBuffer
Writes the specifiedSet
to the buffer as a long sized bit vector.- Specified by:
putEnumSetLong
in classIoBuffer
- Type Parameters:
E
- the enum type of the Set- Parameters:
index
- the index at which the bytes will be writtenset
- the enum set to write to the buffer
-