minos.common.protocol.avro.databases

Classes

MinosAvroDatabaseProtocol

Encoder/Decoder class for values to be stored on the database with avro format.

class MinosAvroDatabaseProtocol[source]

Bases: MinosAvroProtocol

Encoder/Decoder class for values to be stored on the database with avro format.

classmethod encode(value, *args, **kwargs)[source]

Encoder in avro for database Values all the headers are converted in fields with double underscore name the body is a set fields coming from the data type.

Parameters
  • value (Any) – The data to be stored.

  • args – Additional positional arguments.

  • kwargs – Additional named arguments.

Returns

A bytes object.

Return type

bytes

classmethod decode(data, *args, **kwargs)[source]

Decode the given bytes of data into a single dictionary or a sequence of dictionaries.

Parameters
  • data (bytes) – A bytes object.

  • args – Additional positional arguments.

  • kwargs – Additional named arguments.

Returns

A dictionary or a list of dictionaries.

Return type

Union[dict[str, Any], list[dict[str, Any]]]

classmethod decode_schema(data, *args, **kwargs)

Decode the given bytes of data into a single dictionary or a sequence of dictionaries.

Parameters
  • data (bytes) – A bytes object.

  • args – Additional positional arguments.

  • kwargs – Additional named arguments.

Returns

A tuple or a list of tuples.

Return type

Union[dict[str, Any], list[dict[str, Any]]]