made_core/value_objects/ceremony/
state_deadline.rs1use super::{StateId, StateVisit};
2use serde::{Deserialize, Serialize};
3use time::OffsetDateTime;
4
5#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
6pub struct StateDeadline {
7 state_id: StateId,
8 state_visit: StateVisit,
9 #[serde(with = "time::serde::rfc3339")]
10 at: OffsetDateTime,
11}
12impl StateDeadline {
13 #[must_use]
14 pub fn new(state_id: StateId, state_visit: StateVisit, at: OffsetDateTime) -> Self {
15 Self {
16 state_id,
17 state_visit,
18 at,
19 }
20 }
21 #[must_use]
22 pub fn state_id(&self) -> &StateId {
23 &self.state_id
24 }
25 #[must_use]
26 pub fn state_visit(&self) -> StateVisit {
27 self.state_visit
28 }
29 #[must_use]
30 pub fn at(&self) -> OffsetDateTime {
31 self.at
32 }
33}