The java.nio.ByteBuffer
class has a ByteBuffer.array()
method, however this returns an array that is the size of the buffer's capacity, and not the used capacity. Due to this, I'm having some issues.
I have a ByteBuffer which I am allocating as some size and then I am inserting data to it.
ByteBuffer oldBuffer = ByteBuffer.allocate(SIZE);
addHeader(oldBuffer, pendingItems);
newBuffer.flip();
oldBuffer.put(newBuffer);
// as of now I am sending everything from oldBuffer
send(address, oldBuffer.array());
How can I just send what is being used in oldBuffer
. Is there any one liner to do this?