pub struct PluginManager { /* private fields */ }Expand description
Plugin manager for loading and managing enterprise plugins
Implementations§
Source§impl PluginManager
impl PluginManager
pub fn new() -> Self
Sourcepub fn register(&mut self, plugin: Box<dyn EnterprisePlugin>) -> Result<()>
pub fn register(&mut self, plugin: Box<dyn EnterprisePlugin>) -> Result<()>
Register a plugin with the manager
Sourcepub fn initialize_all(&mut self, context: &mut RuntimeContext) -> Result<()>
pub fn initialize_all(&mut self, context: &mut RuntimeContext) -> Result<()>
Initialize all registered plugins
Sourcepub fn has_feature(&self, feature: &str) -> bool
pub fn has_feature(&self, feature: &str) -> bool
Check if a feature is enabled through plugins
Sourcepub fn enabled_features(&self) -> Vec<String>
pub fn enabled_features(&self) -> Vec<String>
Get list of all enabled features
Sourcepub fn loaded_plugins(&self) -> Vec<String>
pub fn loaded_plugins(&self) -> Vec<String>
Get list of loaded plugin names
Sourcepub fn shutdown_all(&mut self) -> Result<()>
pub fn shutdown_all(&mut self) -> Result<()>
Shutdown all plugins
Trait Implementations§
Auto Trait Implementations§
impl Freeze for PluginManager
impl !RefUnwindSafe for PluginManager
impl Send for PluginManager
impl Sync for PluginManager
impl Unpin for PluginManager
impl !UnwindSafe for PluginManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more