Raxol.Core.Runtime.Plugins.Manager.Behaviour behaviour (Raxol v0.4.0)

View Source

Defines the behaviour for plugin management functionality. This is used for mocking in tests.

Summary

Callbacks

Gets a plugin by its ID.

Loads a plugin from a file path.

Starts the plugin manager with the given options.

Unloads a plugin by its ID.

Callbacks

get_plugin(plugin_id)

@callback get_plugin(plugin_id :: String.t()) :: {:ok, map()} | {:error, term()}

Gets a plugin by its ID.

load_plugin(plugin_path)

@callback load_plugin(plugin_path :: String.t()) :: {:ok, map()} | {:error, term()}

Loads a plugin from a file path.

start_link(opts)

@callback start_link(opts :: Keyword.t()) :: GenServer.on_start()

Starts the plugin manager with the given options.

unload_plugin(plugin_id)

@callback unload_plugin(plugin_id :: String.t()) :: :ok | {:error, term()}

Unloads a plugin by its ID.