public static DataOutputStream[] streamsOnly(FilteredHollowBlobWriterStreamAndFilter[] streamAndFilters) { DataOutputStream streams[] = new DataOutputStream[streamAndFilters.length]; for(int i=0;i<streams.length;i++) streams[i] = streamAndFilters[i].getStream(); return streams; }
List<HollowSchema> filteredSchemaList = getFilteredSchemaList(unfilteredSchemaList, streamAndFilter.getConfig()); header.setSchemas(filteredSchemaList); headerWriter.writeHeader(header, streamAndFilter.getStream()); VarInt.writeVInt(streamAndFilter.getStream(), filteredSchemaList.size()); } else { for(int j=0;j<streamsWithType.length;j++) { schema.writeTo(streamsWithType[j].getStream()); VarInt.writeVInt(streamsWithType[j].getStream(), 1 + VarInt.sizeOfVInt(numShards)); VarInt.writeVInt(streamsWithType[j].getStream(), 0); /// forwards compatibility VarInt.writeVInt(streamsWithType[j].getStream(), numShards);
HollowObjectSchema filteredObjectSchema = getFilteredObjectSchema(schema, streamAndFilters[i].getConfig()); filteredObjectSchemas[i] = filteredObjectSchema; filteredObjectSchema.writeTo(streamAndFilters[i].getStream()); VarInt.writeVInt(streamAndFilters[i].getStream(), 1 + VarInt.sizeOfVInt(numShards)); VarInt.writeVInt(streamAndFilters[i].getStream(), 0); /// forwards compatibility VarInt.writeVInt(streamAndFilters[i].getStream(), numShards); long bitsPerRecord = writeBitsPerField(schema, bitsPerField, filteredObjectSchemas[i], streamAndFilters[i].getStream()); ObjectFilterConfig objectTypeConfig = streamAndFilters[j].getConfig().getObjectTypeConfig(schema.getName()); if(objectTypeConfig.includesField(schema.getFieldName(i))) streamsWithFieldList.add(streamAndFilters[j].getStream());