Skip to main content

figshare_rs/
poll.rs

1//! Polling configuration for asynchronous Figshare state transitions.
2
3use std::time::Duration;
4
5/// Backoff settings used by workflow helpers while waiting for Figshare.
6#[derive(Clone, Debug, PartialEq, Eq)]
7pub struct PollOptions {
8    /// Maximum total time to wait before failing.
9    pub max_wait: Duration,
10    /// Delay before the first retry.
11    pub initial_delay: Duration,
12    /// Maximum delay between retries.
13    pub max_delay: Duration,
14}
15
16impl Default for PollOptions {
17    fn default() -> Self {
18        Self {
19            max_wait: Duration::from_secs(60),
20            initial_delay: Duration::from_secs(1),
21            max_delay: Duration::from_secs(2),
22        }
23    }
24}