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