2014-05-15 23:05:20 +00:00
|
|
|
package org.capnproto;
|
|
|
|
|
|
|
|
import java.nio.ByteBuffer;
|
|
|
|
|
2014-05-19 12:43:58 +00:00
|
|
|
public final class MessageReader {
|
|
|
|
final ByteBuffer[] segmentSlices;
|
2014-05-15 23:05:20 +00:00
|
|
|
|
|
|
|
public MessageReader(ByteBuffer[] segmentSlices) {
|
|
|
|
this.segmentSlices = segmentSlices;
|
|
|
|
}
|
|
|
|
|
|
|
|
public <T> T getRoot(FromStructReader<T> factory) {
|
|
|
|
SegmentReader segment = new SegmentReader(this.segmentSlices[0]);
|
2014-05-17 19:15:18 +00:00
|
|
|
PointerReader pointerReader = PointerReader.getRoot(segment, 0,
|
2014-05-15 23:05:20 +00:00
|
|
|
0x7fffffff /* XXX */);
|
|
|
|
AnyPointer.Reader any = new AnyPointer.Reader(pointerReader);
|
|
|
|
return any.getAsStruct(factory);
|
|
|
|
}
|
|
|
|
}
|