osdm-sys 0.1.0-alpha.2

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/)
Documentation
/*
 * UIC 90918-10 - OSDM
 *
 * 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/) 
 *
 * The version of the OpenAPI document: 3.7.0
 * Contact: osdm@uic.org
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

/// Vehicle : List of the coaches in a vehicle run ordered according to the physical ordering of the vehicle. 
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
#[cfg_attr(feature = "utoipa", derive(utoipa::ToSchema))]
pub struct Vehicle {
    #[serde(rename = "coaches", skip_serializing_if = "Option::is_none")]
    pub coaches: Option<Vec<models::Coach>>,
    /// References to the reservations/fares for which all places in the vehicle can be selected.  The reservation ids must be part of the list of reservation ids for which the consumer has requested the available places and the consumer must accept a list by setting  singleSelectionMapsRequired to false 
    #[serde(rename = "reservationRefs", skip_serializing_if = "Option::is_none")]
    pub reservation_refs: Option<Vec<String>>,
}

impl Vehicle {
    /// List of the coaches in a vehicle run ordered according to the physical ordering of the vehicle. 
    pub fn new() -> Vehicle {
        Vehicle {
            coaches: None,
            reservation_refs: None,
        }
    }
}