Raxol.Plugins.Manager.Core (Raxol v0.5.0)
View SourceCore functionality for the plugin manager. Handles basic plugin management operations and state.
Summary
Functions
Gets the current API version of the plugin manager.
Gets a plugin by name.
Gets a list of all loaded plugins.
Loads a plugin module and initializes it. Delegates to Raxol.Plugins.Lifecycle.load_plugin/3.
Loads a plugin module with specific configuration and initializes it. Delegates to Raxol.Plugins.Lifecycle.load_plugin/3.
Returns a map of loaded plugin names to plugin structs (for test compatibility).
Creates a new plugin manager with default configuration.
Updates the configuration in the manager.
Updates the plugins map in the manager and keeps loaded_plugins in sync.
Types
@type t() :: %Raxol.Plugins.Manager.Core{ api_version: String.t(), config: map(), event_handler: function() | nil, loaded_plugins: %{required(String.t()) => Raxol.Plugins.Plugin.t()}, metadata: map(), plugin_config: Raxol.Plugins.PluginConfig.t(), plugin_states: %{required(String.t()) => any()}, plugins: %{required(String.t()) => Raxol.Plugins.Plugin.t()} }
Functions
Gets the current API version of the plugin manager.
Gets a plugin by name.
Gets a list of all loaded plugins.
Loads a plugin module and initializes it. Delegates to Raxol.Plugins.Lifecycle.load_plugin/3.
Loads a plugin module with specific configuration and initializes it. Delegates to Raxol.Plugins.Lifecycle.load_plugin/3.
Returns a map of loaded plugin names to plugin structs (for test compatibility).
Creates a new plugin manager with default configuration.
Updates the configuration in the manager.
Updates the plugins map in the manager and keeps loaded_plugins in sync.