PacketFlow.Plugin (packetflow v0.1.0)
Plugin system for extending PacketFlow functionality
This module provides:
- Plugin discovery and loading
- Plugin lifecycle management
- Plugin dependency resolution
- Plugin configuration
- Plugin hot-swapping
Summary
Functions
Returns a specification to start this module under a supervisor.
Get plugin configuration
Get information about a loaded plugin
Callback implementation for GenServer.init/1
.
List all loaded plugins
Load a plugin by module name
Check if a plugin is loaded
Set plugin configuration
Unload a plugin by ID
Unwatch plugin lifecycle events
Watch for plugin lifecycle events
Types
Functions
Returns a specification to start this module under a supervisor.
See Supervisor
.
Get plugin configuration
@spec get_plugin_info(plugin_id()) :: plugin_info() | nil
Get information about a loaded plugin
Callback implementation for GenServer.init/1
.
@spec list_plugins() :: [plugin_id()]
List all loaded plugins
@spec load_plugin(module()) :: {:ok, plugin_info()} | {:error, String.t()}
Load a plugin by module name
Check if a plugin is loaded
Set plugin configuration
Unload a plugin by ID
Unwatch plugin lifecycle events
Watch for plugin lifecycle events