Module plugin
Generated from cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker.
Generic plugin infrastructure for NeMo Relay runtimes.
This module owns:
- config diagnostics and policy enums used by plugin systems
- a global plugin registry
- plugin registration contexts for middleware/subscriber installation
- rollback bookkeeping for registrations created during plugin setup
Re-exports
pub use dynamic::*;
Modules
- dynamic: Dynamic plugin control-plane and registry model.
Structs
- ConfigDiagnostic: Structured validation diagnostic for plugin validation.
- ConfigPolicy: Policy for how unsupported plugin/runtime config is handled.
- ConfigReport: Structured validation report.
- PluginComponentSpec: One configured plugin component.
- PluginConfig: Canonical plugin configuration document.
- PluginRegistration: Bookkeeping for one middleware/subscriber registration.
- PluginRegistrationContext: Context provided to plugin handlers during runtime registration.
- RuntimeDiagnostic: Bounded aggregate for a runtime failure observed by an active plugin.
Enums
- DiagnosticLevel: Diagnostic severity returned by plugin validation.
- PluginError: Error type for generic plugin operations.
- UnsupportedBehavior: Per-policy behavior for unsupported configuration.
Traits
- Plugin: Implemented by custom plugins that register runtime middleware.
Functions
- active_plugin_report: Returns the active plugin report or a report retained after a failed teardown.
- apply_global_config_policy: Applies non-default global policy fields to a component policy.
- clear_plugin_configuration: Deregisters and clears all configured plugin components.
- deregister_plugin: Removes a previously registered plugin.
- ensure_builtin_plugins_registered: Registers core-provided plugin kinds.
- initialize_plugins: Validates and activates
configlayered on top of the discoveredplugins.tomlconfiguration, so a direct integration sees the same file layering as the gateway. Each file’s schema version is validated before layering. Declaring a component inconfigapplies itsenabledvalue, while default policy values inherit from discovered files and componentconfigbodies merge field-by-field. The resolved configuration and diagnostics are passed to the sharedinitialize_plugins_with_diagnosticshelper. Call [initialize_plugins_exact] directly whenconfigis already fully resolved and every value must be applied exactly. - list_plugin_kinds: Lists registered plugin kinds in sorted order.
- lookup_plugin: Looks up a registered plugin by kind.
- record_active_plugin_runtime_diagnostic: Record a bounded runtime diagnostic against the active plugin report.
- register_plugin: Registers a plugin by kind.
- rollback_registrations: Rolls back registrations in reverse order, ignoring rollback failures.
- validate_plugin_config: Validates a plugin configuration document.