pub struct AdvancedRouter { /* private fields */ }
Implementations§
Source§impl AdvancedRouter
impl AdvancedRouter
pub fn new(strategy: RoutingStrategy, config: RoutingConfig) -> Self
pub async fn select_provider( &self, providers: &HashMap<String, Arc<dyn Provider>>, context: &RoutingContext, ) -> Option<ProviderSelection>
pub async fn update_provider_health( &self, provider_id: &str, success: bool, latency_ms: u64, )
pub async fn start_health_monitoring( &self, providers: HashMap<String, Arc<dyn Provider>>, )
pub async fn get_routing_stats(&self) -> RoutingStats
Auto Trait Implementations§
impl Freeze for AdvancedRouter
impl !RefUnwindSafe for AdvancedRouter
impl Send for AdvancedRouter
impl Sync for AdvancedRouter
impl Unpin for AdvancedRouter
impl !UnwindSafe for AdvancedRouter
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