public RevObject read(InputStream rawData) throws IOException { return read(null, rawData); }
@Override public RevObject read(@Nullable ObjectId id, InputStream rawData) throws IOException { return readInternal(id, newDataInput(rawData)); }
for (int i = 0; i < repeatCount; i++) { out.reset(); DataStreamRevObjectSerializerV2.INSTANCE.write(orig, out); for (int i = 0; i < repeatCount; i++) { RevTree d = (RevTree) DataStreamRevObjectSerializerV2.INSTANCE .read(RevTree.EMPTY_TREE_ID, new ByteArrayInputStream(v2data)); for (Node n : Iterables.concat(d.trees(), d.features())) { n.getName(); DataStreamRevObjectSerializerV2.INSTANCE.write(orig, out); ByteArrayOutputStream v2compressed = compress(out.toByteArray()); ByteArrayOutputStream v3compressed = compress(encoded);
@Override public void write(DataOutputStream out, FeatureInfo value) throws IOException { String path = value.getPath(); ObjectId featureTypeId = value.getFeatureTypeId(); RevFeature feature = value.getFeature(); out.writeUTF(path); MergeStatusBuilder.OID.write(out, featureTypeId); DataStreamRevObjectSerializerV2.INSTANCE.write(feature, out); }
private RevObject readInternal(@Nullable ObjectId id, DataInput in) throws IOException { final TYPE type = format.readHeader(in); Serializer<RevObject> serializer = serializer(type); RevObject object = serializer.readBody(id, in); return object; }
@Override public RevObject read(@Nullable ObjectId id, byte[] data, int offset, int length) throws IOException { return readInternal(id, ByteStreams.newDataInput(data, offset)); }
@Override public void write(RevObject o, OutputStream out) throws IOException { serializer(o.getType()).write(o, out); }
@Override public FeatureInfo read(DataInputStream in) throws IOException { String path = in.readUTF(); ObjectId featureTypeId = MergeStatusBuilder.OID.read(in); RevFeature feature = (RevFeature) DataStreamRevObjectSerializerV2.INSTANCE.read(in); return FeatureInfo.insert(feature, featureTypeId, path); }
@Override public RevObject read(@Nullable ObjectId id, byte[] data, int offset, int length) throws IOException { final int type = data[offset] & 0xFF; if (RevObject.TYPE.TREE.ordinal() == type) { final int size = Ints.fromBytes(data[offset + 1], data[offset + 2], data[offset + 3], data[offset + 4]); offset += 1 + Integer.BYTES;// skip size header length -= 1 + Integer.BYTES; Preconditions.checkState(size == length, "expected %s, got %s", size, length); return FormatCommonV2_3.INSTANCE.readTree(id, data, offset, length); } return super.read(id, new ByteArrayInputStream(data, offset, length)); }