Registry of provider profile modules available to the core runtime.
Summary
Functions
Returns the built-in provider profile modules loaded at registry boot.
Returns a specification to start this module under a supervisor.
Fetches a provider profile module by id.
Lists the registered provider ids.
Returns the registered provider profile mapping.
Registers a provider profile module in the registry.
Registers multiple provider profile modules in order.
Returns true when a provider id is registered.
Starts a provider registry.
Types
Functions
@spec built_in_modules(GenServer.server()) :: [module()]
Returns the built-in provider profile modules loaded at registry boot.
Returns a specification to start this module under a supervisor.
See Supervisor.
@spec fetch(atom(), GenServer.server()) :: {:ok, module()} | :error
Fetches a provider profile module by id.
@spec ids(GenServer.server()) :: [atom()]
Lists the registered provider ids.
@spec list(GenServer.server()) :: %{optional(atom()) => module()}
Returns the registered provider profile mapping.
@spec register(module(), GenServer.server()) :: :ok | {:error, {:module_not_loaded, module()}} | {:error, {:missing_callbacks, module(), [{atom(), non_neg_integer()}]}} | {:error, {:behaviour_not_declared, module()}} | {:error, {:duplicate_profile_id, atom(), module(), module()}}
Registers a provider profile module in the registry.
@spec register_many([module()], GenServer.server()) :: :ok | {:error, {:module_not_loaded, module()}} | {:error, {:missing_callbacks, module(), [{atom(), non_neg_integer()}]}} | {:error, {:behaviour_not_declared, module()}} | {:error, {:duplicate_profile_id, atom(), module(), module()}}
Registers multiple provider profile modules in order.
@spec registered?(atom(), GenServer.server()) :: boolean()
Returns true when a provider id is registered.
@spec start_link(keyword()) :: GenServer.on_start()
Starts a provider registry.