@Override protected final Bucket readBucketBody(DataInput in) throws IOException { ObjectId objectId = readObjectId(in); @Nullable final Envelope bounds = readBounds(in); return Bucket.create(objectId, bounds); }
@Override protected final Bucket readBucketBody(int bucketIndex, DataInput in) throws IOException { ObjectId objectId = readObjectId(in); @Nullable final Envelope bounds = readBounds(in); return RevObjectFactory.defaultInstance().createBucket(objectId, bucketIndex, bounds); }
@SuppressWarnings("unchecked") @Override public Node readNode(DataInput in) throws IOException { final int typeAndMasks = in.readByte() & 0xFF; final int nodeType = typeAndMasks & TYPE_READ_MASK; final int boundsMask = typeAndMasks & BOUNDS_READ_MASK; //unused final int metadataMask = typeAndMasks & METADATA_READ_MASK; final int extraDataMask = typeAndMasks & EXTRA_DATA_READ_MASK; final RevObject.TYPE contentType = RevObject.TYPE.valueOf(nodeType); final String name = in.readUTF(); final ObjectId objectId = readObjectId(in); ObjectId metadataId = ObjectId.NULL; if (metadataMask == METADATA_PRESENT_MASK) { metadataId = readObjectId(in); } @Nullable final Envelope bbox = readBounds(in); Map<String, Object> extraData = null; if (extraDataMask == EXTRA_DATA_PRESENT_MASK) { Object extra = valueEncoder.decode(FieldType.MAP, in); Preconditions.checkState(extra instanceof Map); extraData = (Map<String, Object>) extra; } final Node node; node = Node.create(name, objectId, metadataId, contentType, bbox, extraData); return node; }
@SuppressWarnings("unchecked") @Override public Node readNode(DataInput in) throws IOException { final int typeAndMasks = in.readByte() & 0xFF; final int nodeType = typeAndMasks & TYPE_READ_MASK; // final int boundsMask = typeAndMasks & BOUNDS_READ_MASK; //unused final int metadataMask = typeAndMasks & METADATA_READ_MASK; final int extraDataMask = typeAndMasks & EXTRA_DATA_READ_MASK; final RevObject.TYPE contentType = RevObject.TYPE.valueOf(nodeType); final String name = in.readUTF(); final ObjectId objectId = readObjectId(in); ObjectId metadataId = ObjectId.NULL; if (metadataMask == METADATA_PRESENT_MASK) { metadataId = readObjectId(in); } @Nullable final Envelope bbox = readBounds(in); Map<String, Object> extraData = null; if (extraDataMask == EXTRA_DATA_PRESENT_MASK) { Object extra = valueEncoder.decode(FieldType.MAP, in); Preconditions.checkState(extra instanceof Map); extraData = (Map<String, Object>) extra; } final Node node; node = RevObjectFactory.defaultInstance().createNode(name, objectId, metadataId, contentType, bbox, extraData); return node; }