osdm_sys/models/
trip_specification_summary.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/// TripSpecificationSummary : Trip specification summary. Provided by OJP.  It requires the id of an already existing trip to change and specifies the parameters which must be used to generate the new trip. 
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct TripSpecificationSummary {
17    /// The id of an already existing trip to change. 
18    #[serde(rename = "id")]
19    pub id: String,
20    #[serde(rename = "origin", skip_serializing_if = "Option::is_none")]
21    pub origin: Option<Box<models::PlaceRef>>,
22    #[serde(rename = "destination", skip_serializing_if = "Option::is_none")]
23    pub destination: Option<Box<models::PlaceRef>>,
24}
25
26impl TripSpecificationSummary {
27    /// Trip specification summary. Provided by OJP.  It requires the id of an already existing trip to change and specifies the parameters which must be used to generate the new trip. 
28    pub fn new(id: String) -> TripSpecificationSummary {
29        TripSpecificationSummary {
30            id,
31            origin: None,
32            destination: None,
33        }
34    }
35}
36