Object

za.co.absa.abris.avro.read.confluent

SchemaManager

Related Doc: package confluent

Permalink

object SchemaManager

This object provides methods to integrate with remote schemas through Schema Registry.

This can be considered an "enriched" facade to the Schema Registry client.

This is NOT THREAD SAFE, which means that multiple threads operating on this object (e.g. calling 'configureSchemaRegistry' with different parameters) would operated on the same Schema Registry client, thus, leading to inconsistent behavior.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SchemaManager
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val MAGIC_BYTE: Int

    Permalink
  5. val PARAM_SCHEMA_ID: String

    Permalink
  6. val PARAM_SCHEMA_ID_LATEST_NAME: String

    Permalink
  7. val PARAM_SCHEMA_REGISTRY_TOPIC: String

    Permalink
  8. val PARAM_SCHEMA_REGISTRY_URL: String

    Permalink
  9. val SCHEMA_ID_SIZE_BYTES: Int

    Permalink
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. def configureSchemaRegistry(configs: Map[String, String]): Unit

    Permalink

    Configures the Schema Registry client.

    Configures the Schema Registry client. When invoked, it expects at least SchemaManager.PARAM_SCHEMA_REGISTRY_URL to be set.

  13. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  15. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. def getBySubjectAndId(subject: String, id: Int): Option[Schema]

    Permalink

    Retrieves an Avro Schema instance from a given subject and stored with a given id.

    Retrieves an Avro Schema instance from a given subject and stored with a given id. It will return None if the Schema Registry client is not configured.

  17. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  18. def getLatestVersion(subject: String): Option[Int]

    Permalink

    Retrieves the id corresponding to the latest schema available in Schema Registry.

  19. def getSubjectName(topic: String, isKey: Boolean): String

    Permalink

    Confluent's Schema Registry supports schemas for Kafka keys and values.

    Confluent's Schema Registry supports schemas for Kafka keys and values. What makes them different is simply the what is appended to the schema name, either '-key' or '-value'.

    This method returns the subject name based on the topic and to which part of the message it corresponds.

  20. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  21. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  22. def isSchemaRegistryConfigured(): Boolean

    Permalink

    Checks if SchemaRegistry has been configured, i.e.

    Checks if SchemaRegistry has been configured, i.e. if it is null

  23. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  24. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  25. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  26. def register(schema: Schema, subject: String): Option[Int]

    Permalink

    Registers a schema into a given subject, returning the id the registration received.

    Registers a schema into a given subject, returning the id the registration received.

    Afterwards the schema can be identified by this id.

  27. def reset(): Unit

    Permalink

    Resets this manager to its initial state, before being configured.

  28. def setConfiguredSchemaRegistry(schemaRegistryClient: SchemaRegistryClient): Unit

    Permalink

    This class uses CachedSchemaRegistryClient by default.

    This class uses CachedSchemaRegistryClient by default. This method can override the default.

    The incoming instance MUST be already configured.

    Useful for tests using mocked SchemaRegistryClient instances.

  29. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  30. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  31. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped