Class MongoDBConnectorDeserializationSchema

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected boolean hasMetadata
      Whether the deserializer needs to handle metadata columns.
      protected org.apache.flink.cdc.connectors.mongodb.table.MongoDBConnectorDeserializationSchema.DeserializationRuntimeConverter physicalConverter
      Runtime converter that converts ChangeStreamDocuments into RowData consisted of physical column values.
    • Constructor Summary

      Constructors 
      Constructor Description
      MongoDBConnectorDeserializationSchema​(org.apache.flink.table.types.logical.RowType physicalDataType, MetadataConverter[] metadataConverters, org.apache.flink.api.common.typeinfo.TypeInformation<org.apache.flink.table.data.RowData> resultTypeInfo, java.time.ZoneId localTimeZone)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void deserialize​(org.apache.kafka.connect.source.SourceRecord record, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out)
      Deserialize the Debezium record, it is represented in Kafka SourceRecord.
      protected void emit​(org.apache.kafka.connect.source.SourceRecord inRecord, org.apache.flink.table.data.RowData physicalRow, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> collector)  
      protected org.bson.BsonDocument extractBsonDocument​(org.apache.kafka.connect.data.Struct value, org.apache.kafka.connect.data.Schema valueSchema, String fieldName)  
      protected org.apache.flink.table.data.GenericRowData extractRowData​(org.bson.BsonDocument document)  
      org.apache.flink.api.common.typeinfo.TypeInformation<org.apache.flink.table.data.RowData> getProducedType()  
      protected com.mongodb.client.model.changestream.OperationType operationTypeFor​(org.apache.kafka.connect.source.SourceRecord record)  
    • Field Detail

      • physicalConverter

        protected final org.apache.flink.cdc.connectors.mongodb.table.MongoDBConnectorDeserializationSchema.DeserializationRuntimeConverter physicalConverter
        Runtime converter that converts ChangeStreamDocuments into RowData consisted of physical column values.
      • hasMetadata

        protected final boolean hasMetadata
        Whether the deserializer needs to handle metadata columns.
    • Constructor Detail

      • MongoDBConnectorDeserializationSchema

        public MongoDBConnectorDeserializationSchema​(org.apache.flink.table.types.logical.RowType physicalDataType,
                                                     MetadataConverter[] metadataConverters,
                                                     org.apache.flink.api.common.typeinfo.TypeInformation<org.apache.flink.table.data.RowData> resultTypeInfo,
                                                     java.time.ZoneId localTimeZone)
    • Method Detail

      • deserialize

        public void deserialize​(org.apache.kafka.connect.source.SourceRecord record,
                                org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out)
                         throws Exception
        Description copied from interface: DebeziumDeserializationSchema
        Deserialize the Debezium record, it is represented in Kafka SourceRecord.
        Specified by:
        deserialize in interface DebeziumDeserializationSchema<org.apache.flink.table.data.RowData>
        Throws:
        Exception
      • extractRowData

        protected org.apache.flink.table.data.GenericRowData extractRowData​(org.bson.BsonDocument document)
                                                                     throws Exception
        Throws:
        Exception
      • extractBsonDocument

        protected org.bson.BsonDocument extractBsonDocument​(org.apache.kafka.connect.data.Struct value,
                                                            org.apache.kafka.connect.data.Schema valueSchema,
                                                            String fieldName)
      • getProducedType

        public org.apache.flink.api.common.typeinfo.TypeInformation<org.apache.flink.table.data.RowData> getProducedType()
        Specified by:
        getProducedType in interface org.apache.flink.api.java.typeutils.ResultTypeQueryable<org.apache.flink.table.data.RowData>
      • operationTypeFor

        protected com.mongodb.client.model.changestream.OperationType operationTypeFor​(org.apache.kafka.connect.source.SourceRecord record)
      • emit

        protected void emit​(org.apache.kafka.connect.source.SourceRecord inRecord,
                            org.apache.flink.table.data.RowData physicalRow,
                            org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> collector)