avrora v0.11.0 Avrora.Config behaviour View Source

Configuration for Avrora.

Options:

* `schemas_path` path to local schema files, default ./priv/schemas
* `registry_url` URL for Confluent Schema Registry, default nil
* `registry_auth` authentication settings for Confluent Schema Registry, default nil
* `names_cache_ttl` duration to cache global schema names millisecods, default :infinity

Module configuration:

* `file_storage` module which handles files in `schemas_path`, default [`Avrora.Storage.File`](Avrora.Storage.File.html)
* `memory_storage` module which handles memory operations, default [`Avrora.Storage.Memory`](Avrora.Storage.Memory.html)
* `registry_storage` module which handles Schema Registry requests, default [`Avrora.Storage.Registry`](Avrora.Storage.Registry.html)
* `http_client` module which handles HTTP client requests to Schema Registry, default [`Avrora.HTTPClient`](Avrora.HTTPClient.html)
* `ets_lib` module which creates ETS tables with call [`Module.new/0`](https://hexdocs.pm/elixir/Module.html#new/0)

Link to this section Summary

Link to this section Callbacks

Link to this callback

file_storage()

View Source
file_storage() :: module()
Link to this callback

http_client()

View Source
http_client() :: module()
Link to this callback

memory_storage()

View Source
memory_storage() :: module()
Link to this callback

names_cache_ttl()

View Source
names_cache_ttl() :: integer() | atom()
Link to this callback

registry_auth()

View Source
registry_auth() :: tuple() | nil
Link to this callback

registry_storage()

View Source
registry_storage() :: module()
Link to this callback

registry_url()

View Source
registry_url() :: String.t() | nil
Link to this callback

schemas_path()

View Source
schemas_path() :: String.t()