Skip to main content

aion_store/
timer.rs

1//! `TimerEntry` and timer-facing types.
2
3use aion_core::{TimerId, WorkflowId};
4use chrono::{DateTime, Utc};
5use serde::{Deserialize, Serialize};
6
7/// Durable timer record returned by [`crate::ReadableEventStore::expired_timers`].
8#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq, Hash)]
9pub struct TimerEntry {
10    /// Workflow that owns the timer.
11    pub workflow_id: WorkflowId,
12    /// Timer identifier within the owning workflow.
13    pub timer_id: TimerId,
14    /// Instant at which the timer is due to fire.
15    pub fire_at: DateTime<Utc>,
16}