Trait FilteredAggregateCapabilityProvider

Source
pub trait FilteredAggregateCapabilityProvider: Send + Sync {
    // Required methods
    fn route_instances(
        &self,
    ) -> Vec<BoxFuture<'_, Result<FilteredAggregateCapabilityRouteData, RoutingError>>>;
    fn clone_boxed(&self) -> Box<dyn FilteredAggregateCapabilityProvider>;
}
Expand description

A provider of a capability from an aggregation of zero or more offered instances of a capability, with filters.

This trait type-erases the capability type, so it can be handled and hosted generically.

Required Methods§

Source

fn route_instances( &self, ) -> Vec<BoxFuture<'_, Result<FilteredAggregateCapabilityRouteData, RoutingError>>>

Return a list of futures to route every instance in the aggregate to its source. Each result is paired with the list of instances to include in the source.

Source

fn clone_boxed(&self) -> Box<dyn FilteredAggregateCapabilityProvider>

Trait-object compatible clone.

Trait Implementations§

Source§

impl Clone for Box<dyn FilteredAggregateCapabilityProvider>

Source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Box<dyn FilteredAggregateCapabilityProvider>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Implementors§