Class LocalTableSchemaStore

  • All Implemented Interfaces:
    SchemaStore

    public class LocalTableSchemaStore
    extends java.lang.Object
    implements SchemaStore
    This is an example implementation of a Schema Store. In this particular implementation, we rely on avro schemas placed under the resources folder, inside the table_schemas folder. They will be used as schemas for the tables that have CDC enabled.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static LocalTableSchemaStore getInstance()  
      org.apache.avro.generic.GenericDatumReader<org.apache.avro.generic.GenericRecord> getReader​(java.lang.String namespace, java.lang.String name)
      Get the datum reader
      org.apache.avro.Schema getSchema​(java.lang.String namespace, java.lang.String name)
      Expects cassandra keyspace name for namespace and cassandra table name for name.
      org.apache.avro.generic.GenericDatumWriter<org.apache.avro.generic.GenericRecord> getWriter​(java.lang.String namespace, java.lang.String name)
      Get the datum writer
      protected void loadFromResource()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • LocalTableSchemaStore

        protected LocalTableSchemaStore()
    • Method Detail

      • getSchema

        public org.apache.avro.Schema getSchema​(java.lang.String namespace,
                                                java.lang.String name)
        Expects cassandra keyspace name for namespace and cassandra table name for name.
        Specified by:
        getSchema in interface SchemaStore
        Returns:
        the schema, or throws
      • getWriter

        public org.apache.avro.generic.GenericDatumWriter<org.apache.avro.generic.GenericRecord> getWriter​(java.lang.String namespace,
                                                                                                           java.lang.String name)
        Description copied from interface: SchemaStore
        Get the datum writer
        Specified by:
        getWriter in interface SchemaStore
        Returns:
        the writer, or throws if schema is not found
      • getReader

        public org.apache.avro.generic.GenericDatumReader<org.apache.avro.generic.GenericRecord> getReader​(java.lang.String namespace,
                                                                                                           java.lang.String name)
        Description copied from interface: SchemaStore
        Get the datum reader
        Specified by:
        getReader in interface SchemaStore
        Returns:
        the reader, or throws if schema is not found
      • loadFromResource

        protected void loadFromResource()