osdm_sys/models/
claimed_leg.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ClaimedLeg {
16 #[serde(rename = "trainNumber", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
17 pub train_number: Option<Option<String>>,
18 #[serde(rename = "connectionMissed", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
20 pub connection_missed: Option<Option<bool>>,
21 #[serde(rename = "serviceDegradation", skip_serializing_if = "Option::is_none")]
22 pub service_degradation: Option<Vec<String>>,
23 #[serde(rename = "departureStation", skip_serializing_if = "Option::is_none")]
24 pub departure_station: Option<Box<models::Place>>,
25 #[serde(rename = "arrivalStation", skip_serializing_if = "Option::is_none")]
26 pub arrival_station: Option<Box<models::Place>>,
27 #[serde(rename = "plannedDepartureTime", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
28 pub planned_departure_time: Option<Option<String>>,
29 #[serde(rename = "timetabledArrivalTime", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
30 pub timetabled_arrival_time: Option<Option<String>>,
31 #[serde(rename = "observedArrivalTime", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
32 pub observed_arrival_time: Option<Option<String>>,
33}
34
35impl ClaimedLeg {
36 pub fn new() -> ClaimedLeg {
37 ClaimedLeg {
38 train_number: None,
39 connection_missed: None,
40 service_degradation: None,
41 departure_station: None,
42 arrival_station: None,
43 planned_departure_time: None,
44 timetabled_arrival_time: None,
45 observed_arrival_time: None,
46 }
47 }
48}
49