pub struct ProviderCapabilityDiscoverySystem { /* private fields */ }Expand description
Comprehensive provider capability discovery and management system
Implementations§
Source§impl ProviderCapabilityDiscoverySystem
impl ProviderCapabilityDiscoverySystem
Sourcepub fn new(config: DiscoveryConfig) -> Self
pub fn new(config: DiscoveryConfig) -> Self
Create a new provider capability discovery system
Sourcepub async fn start(&self) -> DeviceResult<()>
pub async fn start(&self) -> DeviceResult<()>
Start the discovery system
Sourcepub async fn discover_providers(&self) -> DeviceResult<Vec<ProviderInfo>>
pub async fn discover_providers(&self) -> DeviceResult<Vec<ProviderInfo>>
Discover available providers
Sourcepub async fn get_provider_capabilities(
&self,
provider_id: &str,
) -> DeviceResult<Option<ProviderCapabilities>>
pub async fn get_provider_capabilities( &self, provider_id: &str, ) -> DeviceResult<Option<ProviderCapabilities>>
Get provider capabilities
Sourcepub async fn compare_providers(
&self,
provider_ids: &[String],
criteria: &[ComparisonCriterion],
) -> DeviceResult<ComparisonResults>
pub async fn compare_providers( &self, provider_ids: &[String], criteria: &[ComparisonCriterion], ) -> DeviceResult<ComparisonResults>
Compare providers
Sourcepub async fn get_recommendations(
&self,
requirements: &CapabilityRequirements,
) -> DeviceResult<Vec<ProviderRecommendation>>
pub async fn get_recommendations( &self, requirements: &CapabilityRequirements, ) -> DeviceResult<Vec<ProviderRecommendation>>
Get provider recommendations
Auto Trait Implementations§
impl Freeze for ProviderCapabilityDiscoverySystem
impl !RefUnwindSafe for ProviderCapabilityDiscoverySystem
impl Send for ProviderCapabilityDiscoverySystem
impl Sync for ProviderCapabilityDiscoverySystem
impl Unpin for ProviderCapabilityDiscoverySystem
impl !UnwindSafe for ProviderCapabilityDiscoverySystem
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.