Skip to main content

lta/get_facilities_maintenance/
json.rs

1// @generated by satay. Do not edit by hand.
2#![allow(
3    clippy::doc_markdown,
4    clippy::missing_errors_doc,
5    clippy::must_use_candidate,
6    clippy::needless_pass_by_value,
7    clippy::return_self_not_must_use,
8    clippy::single_match_else
9)]
10
11use super::parts::{
12    GetFacilitiesMaintenanceInput, GetFacilitiesMaintenanceResponse,
13    get_facilities_maintenance_parts,
14};
15/// Returns links to facility maintenance data files for a queried MRT/LRT station. Each link points to a JSON file describing the maintenance works currently in progress at that station.
16///
17/// **Update freq**: Ad-Hoc
18pub fn encode_get_facilities_maintenance(
19    input: GetFacilitiesMaintenanceInput,
20) -> Result<http::Request<Vec<u8>>, satay_runtime::Error> {
21    let parts = get_facilities_maintenance_parts(input)?;
22    satay_runtime::into_empty_request(parts)
23}
24pub fn decode_get_facilities_maintenance_response<B: AsRef<[u8]>>(
25    response: satay_runtime::ResponseParts<B>,
26) -> Result<GetFacilitiesMaintenanceResponse, satay_runtime::Error> {
27    let status = response.status;
28    match status.as_u16() {
29        200 => {
30            let body = response.body;
31            let value = satay_runtime::from_projected_json_slice::<Vec<String>>(
32                body.as_ref(),
33                "value",
34                Some("Link"),
35            )?;
36            Ok(GetFacilitiesMaintenanceResponse::Ok(value))
37        }
38        _ => {
39            let body = response.body;
40            Ok(GetFacilitiesMaintenanceResponse::UnexpectedStatus(
41                status,
42                body.as_ref().to_vec(),
43            ))
44        }
45    }
46}