Class KeyValueSchema


  • public class KeyValueSchema
    extends Object
    This class contains methods to build Kafka Key and Value Schemas from Cassandra table schemas.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.apache.kafka.connect.data.Schema keySchema  
      private static String NAMESPACE  
      private com.datastax.driver.core.TableMetadata tableMetadata  
      private org.apache.kafka.connect.data.Schema valueSchema  
    • Constructor Summary

      Constructors 
      Constructor Description
      KeyValueSchema​(String kafkaTopicPrefix, com.datastax.driver.core.TableMetadata tableMetadata, io.debezium.connector.SourceInfoStructMaker sourceInfoStructMaker)  
    • Field Detail

      • tableMetadata

        private final com.datastax.driver.core.TableMetadata tableMetadata
      • keySchema

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

        private final org.apache.kafka.connect.data.Schema valueSchema
    • Constructor Detail

      • KeyValueSchema

        KeyValueSchema​(String kafkaTopicPrefix,
                       com.datastax.driver.core.TableMetadata tableMetadata,
                       io.debezium.connector.SourceInfoStructMaker sourceInfoStructMaker)
    • Method Detail

      • tableMetadata

        public com.datastax.driver.core.TableMetadata tableMetadata()
      • keySchema

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

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

        private org.apache.kafka.connect.data.Schema getKeySchema​(String kafkaTopicPrefix,
                                                                  com.datastax.driver.core.TableMetadata tm)
      • getValueSchema

        private org.apache.kafka.connect.data.Schema getValueSchema​(String kafkaTopicPrefix,
                                                                    com.datastax.driver.core.TableMetadata tm,
                                                                    io.debezium.connector.SourceInfoStructMaker sourceInfoStructMaker)
      • getKeyName

        private static String getKeyName​(String kafkaTopicPrefix,
                                         com.datastax.driver.core.TableMetadata tm)
      • getValueName

        private static String getValueName​(String kafkaTopicPrefix,
                                           com.datastax.driver.core.TableMetadata tm)
      • getFieldSchema

        public static org.apache.kafka.connect.data.Schema getFieldSchema​(String fieldName,
                                                                          org.apache.kafka.connect.data.Schema schema)
        Get the schema of an inner field based on the field name
        Parameters:
        fieldName - the name of the field in the schema
        schema - the schema where the field resides in
        Returns:
        Schema