pub struct Manager {
pub state_manager: StateManager,
pub mux_backend: Arc<dyn MuxBackend>,
pub event_tx: Sender<Event>,
pub file_manager: Option<Arc<dyn FileManager>>,
pub search_provider: Option<Arc<dyn SearchProvider>>,
pub command_history: Option<Arc<dyn CommandHistory>>,
/* private fields */
}
Expand description
Core Manager - Transport-agnostic orchestration engine
Fields§
§state_manager: StateManager
§mux_backend: Arc<dyn MuxBackend>
§event_tx: Sender<Event>
§file_manager: Option<Arc<dyn FileManager>>
§search_provider: Option<Arc<dyn SearchProvider>>
§command_history: Option<Arc<dyn CommandHistory>>
Implementations§
Source§impl Manager
impl Manager
Sourcepub fn new(
mux_backend: Arc<dyn MuxBackend>,
state_manager: StateManager,
) -> Self
pub fn new( mux_backend: Arc<dyn MuxBackend>, state_manager: StateManager, ) -> Self
Create new manager with a MuxBackend and StateManager For advanced configuration, use ManagerBuilder instead
Sourcepub fn builder(
mux_backend: Arc<dyn MuxBackend>,
state_manager: StateManager,
) -> ManagerBuilder
pub fn builder( mux_backend: Arc<dyn MuxBackend>, state_manager: StateManager, ) -> ManagerBuilder
Create a builder for advanced configuration
Sourcepub fn file_manager(&self) -> Option<&Arc<dyn FileManager>>
pub fn file_manager(&self) -> Option<&Arc<dyn FileManager>>
Get a reference to the file manager if available
Sourcepub fn search_provider(&self) -> Option<&Arc<dyn SearchProvider>>
pub fn search_provider(&self) -> Option<&Arc<dyn SearchProvider>>
Get a reference to the search provider if available
Sourcepub fn command_history(&self) -> Option<&Arc<dyn CommandHistory>>
pub fn command_history(&self) -> Option<&Arc<dyn CommandHistory>>
Get a reference to the command history if available
Sourcepub async fn execute_action(&self, action: Action) -> Result<Value>
pub async fn execute_action(&self, action: Action) -> Result<Value>
Execute an action
Sourcepub async fn subscribe_plugin(
&self,
plugin_id: &str,
events: Vec<String>,
) -> Result<()>
pub async fn subscribe_plugin( &self, plugin_id: &str, events: Vec<String>, ) -> Result<()>
Subscribe a plugin to specific event types
Sourcepub fn emit_event(&self, event: Event)
pub fn emit_event(&self, event: Event)
Emit an event
Sourcepub async fn unload_plugin(&self, plugin_id: &str) -> Result<()>
pub async fn unload_plugin(&self, plugin_id: &str) -> Result<()>
Unload a plugin
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Manager
impl !RefUnwindSafe for Manager
impl Send for Manager
impl Sync for Manager
impl Unpin for Manager
impl !UnwindSafe for Manager
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