public BsonValue apply()

in flink-connector-mongodb/src/main/java/org/apache/flink/connector/mongodb/table/MongoKeyExtractor.java [73:86]


    public BsonValue apply(RowData rowData) {
        Object rowKeyValue = primaryKeyGetter.getFieldOrNull(rowData);
        checkNotNull(rowKeyValue, "Primary key value is null of RowData: " + rowData);

        BsonValue keyValue = primaryKeyConverter.apply(rowKeyValue);
        if (!isCompoundPrimaryKey(primaryKeyIndexes) && keyValue.isString()) {
            String keyString = keyValue.asString().getValue();
            // Try to restore MongoDB's ObjectId from string.
            if (ObjectId.isValid(keyString)) {
                keyValue = new BsonObjectId(new ObjectId(keyString));
            }
        }
        return keyValue;
    }