Class

it.agilelab.darwin.manager

CachedAvroSchemaManager

Related Doc: package manager

Permalink

abstract class CachedAvroSchemaManager extends AvroSchemaManager

Implementation of AvroSchemaManager that defines a cache where the storage data is loaded, in order to reduce the number of accesses to the storage.

Linear Supertypes
AvroSchemaManager, Logging, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CachedAvroSchemaManager
  2. AvroSchemaManager
  3. Logging
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CachedAvroSchemaManager(connector: Connector)

    Permalink

Abstract Value Members

  1. abstract def getSchema(id: Long): Option[Schema]

    Permalink

    Extracts the Schema from its ID.

    Extracts the Schema from its ID.

    id

    a Long representing an ID

    returns

    the Schema associated to the input ID

    Definition Classes
    AvroSchemaManager

Concrete 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 _cache: AtomicReference[Option[AvroSchemaCache]]

    Permalink
    Attributes
    protected
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def cache: AvroSchemaCache

    Permalink
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. def generateAvroSingleObjectEncoded(avroPayload: Array[Byte], schema: Schema): Array[Byte]

    Permalink

    Create an array that creates a Single-Object encoded byte array.

    Create an array that creates a Single-Object encoded byte array. By specifications the encoded array is obtained concatenating the V1_HEADER, the schema id and the avro-encoded payload.

    avroPayload

    avro-serialized payload

    schema

    the schema used to encode the payload

    returns

    a Single-Object encoded byte array

    Definition Classes
    AvroSchemaManager
  12. def getAll: Seq[(Long, Schema)]

    Permalink

    Retrieves all registered schemas

    Retrieves all registered schemas

    returns

    A Sequence of (ID, Schema)

    Definition Classes
    CachedAvroSchemaManagerAvroSchemaManager
  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. def getId(schema: Schema): Long

    Permalink

    Extracts the ID from a Schema.

    Extracts the ID from a Schema.

    schema

    a Schema with unknown ID

    returns

    the ID associated with the input schema

    Definition Classes
    AvroSchemaManager
  15. def hashCode(): Int

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

    Permalink
    Definition Classes
    Any
  17. lazy val log: Logger

    Permalink
    Definition Classes
    Logging
  18. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  21. def registerAll(schemas: Seq[Schema]): Seq[(Long, Schema)]

    Permalink

    Checks if all the input Schema elements are already in the cache.

    Checks if all the input Schema elements are already in the cache. Then, it performs an insert on the storage for all the elements not found on the cache, and then returns each input schema paired with its ID.

    schemas

    all the Schema that should be registered

    returns

    a sequence of pairs of the input schemas associated with their IDs

    Definition Classes
    CachedAvroSchemaManagerAvroSchemaManager
  22. def registerAll(schemas: Iterable[Schema]): Iterable[IdSchemaPair]

    Permalink

    JAVA API: Checks if all the input Schema elements are already in the cache.

    JAVA API: Checks if all the input Schema elements are already in the cache. Then, it performs an insert on the storage for all the elements not found on the cache, and then returns each input schema paired with its ID.

    schemas

    all the Schema that should be registered

    returns

    a sequence of pairs of the input schemas associated with their IDs

    Definition Classes
    AvroSchemaManager
  23. def reload(): AvroSchemaManager

    Permalink

    Reloads all the schemas from the previously configured storage.

    Reloads all the schemas from the previously configured storage. Throws an exception if the cache wasn't already loaded (the getInstance method must always be used to initialize the cache using the required configuration).

    Definition Classes
    CachedAvroSchemaManagerAvroSchemaManager
  24. def retrieveSchemaAndAvroPayload(avroSingleObjectEncoded: Array[Byte]): (Schema, Array[Byte])

    Permalink

    Extracts a Tuple2 that contains the Schema and the Avro-encoded payload

    Extracts a Tuple2 that contains the Schema and the Avro-encoded payload

    avroSingleObjectEncoded

    a byte array of a Single-Object encoded payload

    returns

    a pair containing the Schema and the payload of the input array

    Definition Classes
    AvroSchemaManager
  25. def retrieveSchemaAndPayload(avroSingleObjectEncoded: Array[Byte]): SchemaPayloadPair

    Permalink

    Extracts a SchemaPayloadPair that contains the Schema and the Avro-encoded payload

    Extracts a SchemaPayloadPair that contains the Schema and the Avro-encoded payload

    avroSingleObjectEncoded

    a byte array of a Single-Object encoded payload

    returns

    a SchemaPayloadPair containing the Schema and the payload of the input array

    Definition Classes
    AvroSchemaManager
  26. final def synchronized[T0](arg0: ⇒ T0): T0

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

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

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

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

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

Inherited from AvroSchemaManager

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped