pub struct ExtensionBus { /* private fields */ }Expand description
Global registry of discovered and provisioned capability extensions.
Implementations§
Source§impl ExtensionBus
impl ExtensionBus
pub fn new(extensions_dir: impl AsRef<Path>) -> Self
Sourcepub fn scan_and_load_extensions(&self)
pub fn scan_and_load_extensions(&self)
Scans the extensions directory for manifest.json files and loads them into memory.
Sourcepub fn register_extension_from_path(
&self,
manifest_path: &Path,
) -> Result<(), String>
pub fn register_extension_from_path( &self, manifest_path: &Path, ) -> Result<(), String>
Register a new extension from an absolute path (CLI workflow)
Sourcepub fn list_extensions(&self) -> Vec<ExtensionManifest>
pub fn list_extensions(&self) -> Vec<ExtensionManifest>
Retrieve all registered manifests (used by the Studio UI)
Sourcepub fn query_capability(&self, interface_hash: u64) -> Vec<ExtensionManifest>
pub fn query_capability(&self, interface_hash: u64) -> Vec<ExtensionManifest>
Query the bus for any extensions supporting a given semantic interface hash
Sourcepub fn dispatch_task(
&self,
extension_id: &str,
input_file_path: &str,
pipeline_steps: Vec<Value>,
sensitivity_context: u64,
guardianship_override: bool,
) -> Result<String, String>
pub fn dispatch_task( &self, extension_id: &str, input_file_path: &str, pipeline_steps: Vec<Value>, sensitivity_context: u64, guardianship_override: bool, ) -> Result<String, String>
Dispatches a task recipe to an extension over localhost RPC. Includes Sentinel Gatekeeping logic to enforce sensitivity classification.
Auto Trait Implementations§
impl !Freeze for ExtensionBus
impl RefUnwindSafe for ExtensionBus
impl Send for ExtensionBus
impl Sync for ExtensionBus
impl Unpin for ExtensionBus
impl UnsafeUnpin for ExtensionBus
impl UnwindSafe for ExtensionBus
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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