in flink-connector-mongodb/src/main/java/org/apache/flink/connector/mongodb/source/enumerator/MongoSourceEnumStateSerializer.java [85:108]
public MongoSourceEnumState deserialize(int version, byte[] serialized) throws IOException {
try (ByteArrayInputStream bais = new ByteArrayInputStream(serialized);
DataInputStream in = new DataInputStream(bais)) {
List<String> remainingCollections = deserializeList(in, DataInput::readUTF);
List<String> alreadyProcessedCollections = deserializeList(in, DataInput::readUTF);
List<MongoScanSourceSplit> remainingScanSplits =
deserializeList(in, i -> deserializeMongoScanSourceSplit(version, i));
Map<String, MongoScanSourceSplit> assignedScanSplits =
deserializeMap(
in,
DataInput::readUTF,
i -> deserializeMongoScanSourceSplit(version, i));
boolean initialized = in.readBoolean();
return new MongoSourceEnumState(
remainingCollections,
alreadyProcessedCollections,
remainingScanSplits,
assignedScanSplits,
initialized);
}
}