in bindings/python/src/layers.rs [72:96]
fn new(
max_times: Option<usize>,
factor: Option<f32>,
jitter: bool,
max_delay: Option<f64>,
min_delay: Option<f64>,
) -> PyResult<Self> {
let mut retry = od::layers::RetryLayer::default();
if let Some(max_times) = max_times {
retry = retry.with_max_times(max_times);
}
if let Some(factor) = factor {
retry = retry.with_factor(factor);
}
if jitter {
retry = retry.with_jitter();
}
if let Some(max_delay) = max_delay {
retry = retry.with_max_delay(Duration::from_micros((max_delay * 1000000.0) as u64));
}
if let Some(min_delay) = min_delay {
retry = retry.with_min_delay(Duration::from_micros((min_delay * 1000000.0) as u64));
}
Ok(Self(retry))
}