osdm_sys/models/
deck_availability.rs

1/*
2 * UIC 90918-10 - OSDM
3 *
4 * Specifications for the OSDM API standard. The OSDM specification supports two modes of operation: Retailer Mode and Distributor Mode. The API works identically in both modes, except that in distributor mode the API also returns fare information.  The following resources are key to get started:    -  [Processes](https://osdm.io/spec/processes/)   -  [Models](https://osdm.io/spec/models/)   -  [Getting started](https://osdm.io/spec/getting-started/) 
5 *
6 * The version of the OpenAPI document: 3.7.0
7 * Contact: osdm@uic.org
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// DeckAvailability : A coach deck 
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DeckAvailability {
17    /// Identifies the coach deck layout. It is recommended to import coach deck layout master data periodically by calling GET /coach-deck-layouts 
18    #[serde(rename = "layoutId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
19    pub layout_id: Option<Option<String>>,
20    /// Only compartments that match a requested place restriction must be returned (e.g. only return bike hook compartments if availabilities for a bicycle reservation offer were requested). Empty if the whole deck contains no compartments (e.g. traction unit) or no places that matches a requested place restriction. 
21    #[serde(rename = "compartments", skip_serializing_if = "Option::is_none")]
22    pub compartments: Option<Vec<models::CompartmentAvailability>>,
23}
24
25impl DeckAvailability {
26    /// A coach deck 
27    pub fn new() -> DeckAvailability {
28        DeckAvailability {
29            layout_id: None,
30            compartments: None,
31        }
32    }
33}
34