public final class ByteArrayPacker extends java.lang.Object implements PrimitiveArrayPacker<byte[]>
Modifier and Type | Method and Description |
---|---|
java.nio.ByteBuffer |
addToBuffer(java.nio.ByteBuffer byteBuffer,
byte[] data,
int index)
Adds data[index] to the byteBuffer, position will be updated
|
java.nio.ByteBuffer |
addToBuffer(java.nio.ByteBuffer byteBuffer,
int offset,
byte[] data,
int index)
Adds data[index] to the byteBuffer, position will not be updated
|
static ByteArrayPacker |
getInstance() |
MessageType<byte[],byte[]> |
getMessageType() |
byte[] |
packToByteArray(byte[] data) |
int |
readDataFromBuffer(ObjectBuilder objectBuilder,
int currentBufferLocation,
DataBuffer dataBuffer)
Read the buffer and build the actual object.
|
void |
readFromBufferAndSet(java.nio.ByteBuffer byteBuffer,
byte[] array,
int index)
Read data from buffer and set to the array.
|
void |
readFromBufferAndSet(java.nio.ByteBuffer byteBuffer,
int offset,
byte[] array,
int index)
Read data from buffer and set to the array.
|
byte[] |
unpackFromByteArray(byte[] array) |
byte[] |
wrapperForLength(int length) |
void |
writeDataToBuffer(byte[] data,
PackerStore packerStore,
int alreadyCopied,
int leftToCopy,
int spaceLeft,
java.nio.ByteBuffer targetBuffer)
Transfer the data to the buffer.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
bulkCopyToBuffer, bulkReadFromBuffer, determineLength, isHeaderRequired, packToByteBuffer, packToByteBuffer, unpackFromBuffer, unpackFromBuffer, wrapperForByteLength
public static ByteArrayPacker getInstance()
public MessageType<byte[],byte[]> getMessageType()
getMessageType
in interface PrimitiveArrayPacker<byte[]>
public java.nio.ByteBuffer addToBuffer(java.nio.ByteBuffer byteBuffer, byte[] data, int index)
PrimitiveArrayPacker
addToBuffer
in interface PrimitiveArrayPacker<byte[]>
public java.nio.ByteBuffer addToBuffer(java.nio.ByteBuffer byteBuffer, int offset, byte[] data, int index)
PrimitiveArrayPacker
addToBuffer
in interface PrimitiveArrayPacker<byte[]>
public void readFromBufferAndSet(java.nio.ByteBuffer byteBuffer, int offset, byte[] array, int index)
PrimitiveArrayPacker
readFromBufferAndSet
in interface PrimitiveArrayPacker<byte[]>
byteBuffer
- ByteBuffer
instanceoffset
- offset of byteBufferarray
- destination arrayindex
- index of array to updatepublic void readFromBufferAndSet(java.nio.ByteBuffer byteBuffer, byte[] array, int index)
PrimitiveArrayPacker
readFromBufferAndSet
in interface PrimitiveArrayPacker<byte[]>
byteBuffer
- ByteBuffer
instancearray
- destination arrayindex
- index of array to updatepublic void writeDataToBuffer(byte[] data, PackerStore packerStore, int alreadyCopied, int leftToCopy, int spaceLeft, java.nio.ByteBuffer targetBuffer)
DataPacker
DataPacker.determineLength(Object, PackerStore)
,
you may transfer data from state
* to targetBuffer. If not, you may directly transfer data to the targetBuffer.writeDataToBuffer
in interface DataPacker<byte[],byte[]>
writeDataToBuffer
in interface PrimitiveArrayPacker<byte[]>
public int readDataFromBuffer(ObjectBuilder objectBuilder, int currentBufferLocation, DataBuffer dataBuffer)
DataPacker
ObjectBuilder.setFinalObject(Object)
to set and mark the end of the current objectreadDataFromBuffer
in interface DataPacker<byte[],byte[]>
readDataFromBuffer
in interface PrimitiveArrayPacker<byte[]>
public byte[] wrapperForLength(int length)
wrapperForLength
in interface PrimitiveArrayPacker<byte[]>
public byte[] packToByteArray(byte[] data)
packToByteArray
in interface DataPacker<byte[],byte[]>
packToByteArray
in interface PrimitiveArrayPacker<byte[]>
public byte[] unpackFromByteArray(byte[] array)
unpackFromByteArray
in interface DataPacker<byte[],byte[]>