I think - and someone please correct me if I'm wrong - the offset is
always zero, and the length is byteBuffer.remaining().
So you would make a call something like:
byteBuffer.get(byteArray, 0, byteBuffer.remaining())
Then byteArray would contain the buffer's contents.
HTH,
DR
On 03/18/2011 08:22 PM, sean jensen-grey wrote:
I have a large sequence of pdfs stored in an avro file as part of a larger
structure.
I have found a bug in my code where I was calling
byteBuffer.array() to get back the byte[], this is incorrect as this is
entire backing store and NOT the contents of the element stored in Avro.
How/where do I get the offset and the length of the ByteBuffer returned from
Avro?
The convenience classes were generated via the maven plugin so my Record
signature is
MyRecord extends org.apache.avro.specific.SpecificRecordBase implements
org.apache.avro.specific.SpecificRecord
The avro schema entry is
{
"name" : "pdfs",
"type" : { "type" : "array", "items": "bytes" }
}