pub struct AdvancedRecoveryExecutor { /* private fields */ }Expand description
Enhanced error recovery executor with advanced recovery strategies.
Implementations§
Source§impl AdvancedRecoveryExecutor
impl AdvancedRecoveryExecutor
Sourcepub fn new(policy: RecoveryPolicy) -> Self
pub fn new(policy: RecoveryPolicy) -> Self
Create a new advanced recovery executor.
Sourcepub fn coordinator(&self) -> Arc<RecoveryCoordinator> ⓘ
pub fn coordinator(&self) -> Arc<RecoveryCoordinator> ⓘ
Get recovery coordinator.
Sourcepub fn bulk_handler(&self) -> Arc<BulkRecoveryHandler> ⓘ
pub fn bulk_handler(&self) -> Arc<BulkRecoveryHandler> ⓘ
Get bulk recovery handler.
Sourcepub async fn retry_adaptive<F, Fut>(
&self,
error: Error,
attempts: u32,
initial_delay: Duration,
max_delay: Duration,
multiplier: f64,
jitter: JitterStrategy,
operation: F,
) -> Result<Value>
pub async fn retry_adaptive<F, Fut>( &self, error: Error, attempts: u32, initial_delay: Duration, max_delay: Duration, multiplier: f64, jitter: JitterStrategy, operation: F, ) -> Result<Value>
Execute with adaptive retry including jitter.
Sourcepub async fn execute_with_deadline<F, Fut>(
&self,
operation_id: &str,
operation: F,
deadline: &mut RecoveryDeadline,
base_strategy: &RecoveryStrategy,
) -> Result<Value>
pub async fn execute_with_deadline<F, Fut>( &self, operation_id: &str, operation: F, deadline: &mut RecoveryDeadline, base_strategy: &RecoveryStrategy, ) -> Result<Value>
Execute with deadline-aware recovery.
Sourcepub fn register_handler(
&mut self,
name: String,
handler: Arc<dyn RecoveryHandler>,
)
pub fn register_handler( &mut self, name: String, handler: Arc<dyn RecoveryHandler>, )
Register a recovery handler.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for AdvancedRecoveryExecutor
impl !UnwindSafe for AdvancedRecoveryExecutor
impl Freeze for AdvancedRecoveryExecutor
impl Send for AdvancedRecoveryExecutor
impl Sync for AdvancedRecoveryExecutor
impl Unpin for AdvancedRecoveryExecutor
impl UnsafeUnpin for AdvancedRecoveryExecutor
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