Class MongoDbCollectionSchema

java.lang.Object
io.debezium.connector.mongodb.MongoDbCollectionSchema
All Implemented Interfaces:
DataCollectionSchema

public class MongoDbCollectionSchema extends Object implements DataCollectionSchema
Defines the Kafka Connect Schema functionality associated with a given mongodb collection, and which can be used to send documents that match the schema to Kafka Connect.
Author:
Chris Cranford
  • Field Details

    • id

      private final CollectionId id
    • fieldFilter

      private final FieldSelector.FieldFilter fieldFilter
    • keySchema

      private final org.apache.kafka.connect.data.Schema keySchema
    • envelopeSchema

      private final Envelope envelopeSchema
    • valueSchema

      private final org.apache.kafka.connect.data.Schema valueSchema
    • keyGeneratorOplog

      private final Function<org.bson.BsonDocument,Object> keyGeneratorOplog
    • keyGeneratorChangeStream

      private final Function<org.bson.BsonDocument,Object> keyGeneratorChangeStream
    • valueGenerator

      private final Function<org.bson.BsonDocument,String> valueGenerator
  • Constructor Details

  • Method Details

    • id

      public io.debezium.spi.schema.DataCollectionId id()
      Specified by:
      id in interface DataCollectionSchema
    • keySchema

      public org.apache.kafka.connect.data.Schema keySchema()
      Specified by:
      keySchema in interface DataCollectionSchema
    • valueSchema

      public org.apache.kafka.connect.data.Schema valueSchema()
    • getEnvelopeSchema

      public Envelope getEnvelopeSchema()
      Specified by:
      getEnvelopeSchema in interface DataCollectionSchema
    • keyFromDocumentOplog

      public org.apache.kafka.connect.data.Struct keyFromDocumentOplog(org.bson.BsonDocument document)
    • keyFromDocument

      public org.apache.kafka.connect.data.Struct keyFromDocument(org.bson.BsonDocument document)
    • valueFromDocumentOplog

      public org.apache.kafka.connect.data.Struct valueFromDocumentOplog(org.bson.BsonDocument document, org.bson.BsonDocument filter, Envelope.Operation operation)
    • valueFromDocumentChangeStream

      public org.apache.kafka.connect.data.Struct valueFromDocumentChangeStream(com.mongodb.client.model.changestream.ChangeStreamDocument<org.bson.BsonDocument> document, Envelope.Operation operation)
    • extractFullDocument

      private void extractFullDocument(com.mongodb.client.model.changestream.ChangeStreamDocument<org.bson.BsonDocument> document, org.apache.kafka.connect.data.Struct value)
    • extractFullDocumentBeforeChange

      private void extractFullDocumentBeforeChange(com.mongodb.client.model.changestream.ChangeStreamDocument<org.bson.BsonDocument> document, org.apache.kafka.connect.data.Struct value)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object