aws_sdk_iotfleetwise/operation/get_vehicle_status/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::get_vehicle_status::_get_vehicle_status_output::GetVehicleStatusOutputBuilder;
3
4pub use crate::operation::get_vehicle_status::_get_vehicle_status_input::GetVehicleStatusInputBuilder;
5
6impl crate::operation::get_vehicle_status::builders::GetVehicleStatusInputBuilder {
7    /// Sends a request with this input using the given client.
8    pub async fn send_with(
9        self,
10        client: &crate::Client,
11    ) -> ::std::result::Result<
12        crate::operation::get_vehicle_status::GetVehicleStatusOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::get_vehicle_status::GetVehicleStatusError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.get_vehicle_status();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `GetVehicleStatus`.
24///
25/// <p>Retrieves information about the status of campaigns, decoder manifests, or state templates associated with a vehicle.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct GetVehicleStatusFluentBuilder {
28    handle: ::std::sync::Arc<crate::client::Handle>,
29    inner: crate::operation::get_vehicle_status::builders::GetVehicleStatusInputBuilder,
30    config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl
33    crate::client::customize::internal::CustomizableSend<
34        crate::operation::get_vehicle_status::GetVehicleStatusOutput,
35        crate::operation::get_vehicle_status::GetVehicleStatusError,
36    > for GetVehicleStatusFluentBuilder
37{
38    fn send(
39        self,
40        config_override: crate::config::Builder,
41    ) -> crate::client::customize::internal::BoxFuture<
42        crate::client::customize::internal::SendResult<
43            crate::operation::get_vehicle_status::GetVehicleStatusOutput,
44            crate::operation::get_vehicle_status::GetVehicleStatusError,
45        >,
46    > {
47        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
48    }
49}
50impl GetVehicleStatusFluentBuilder {
51    /// Creates a new `GetVehicleStatusFluentBuilder`.
52    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
53        Self {
54            handle,
55            inner: ::std::default::Default::default(),
56            config_override: ::std::option::Option::None,
57        }
58    }
59    /// Access the GetVehicleStatus as a reference.
60    pub fn as_input(&self) -> &crate::operation::get_vehicle_status::builders::GetVehicleStatusInputBuilder {
61        &self.inner
62    }
63    /// Sends the request and returns the response.
64    ///
65    /// If an error occurs, an `SdkError` will be returned with additional details that
66    /// can be matched against.
67    ///
68    /// By default, any retryable failures will be retried twice. Retry behavior
69    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
70    /// set when configuring the client.
71    pub async fn send(
72        self,
73    ) -> ::std::result::Result<
74        crate::operation::get_vehicle_status::GetVehicleStatusOutput,
75        ::aws_smithy_runtime_api::client::result::SdkError<
76            crate::operation::get_vehicle_status::GetVehicleStatusError,
77            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
78        >,
79    > {
80        let input = self
81            .inner
82            .build()
83            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
84        let runtime_plugins = crate::operation::get_vehicle_status::GetVehicleStatus::operation_runtime_plugins(
85            self.handle.runtime_plugins.clone(),
86            &self.handle.conf,
87            self.config_override,
88        );
89        crate::operation::get_vehicle_status::GetVehicleStatus::orchestrate(&runtime_plugins, input).await
90    }
91
92    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
93    pub fn customize(
94        self,
95    ) -> crate::client::customize::CustomizableOperation<
96        crate::operation::get_vehicle_status::GetVehicleStatusOutput,
97        crate::operation::get_vehicle_status::GetVehicleStatusError,
98        Self,
99    > {
100        crate::client::customize::CustomizableOperation::new(self)
101    }
102    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
103        self.set_config_override(::std::option::Option::Some(config_override.into()));
104        self
105    }
106
107    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
108        self.config_override = config_override;
109        self
110    }
111    /// Create a paginator for this request
112    ///
113    /// Paginators are used by calling [`send().await`](crate::operation::get_vehicle_status::paginator::GetVehicleStatusPaginator::send) which returns a [`PaginationStream`](aws_smithy_async::future::pagination_stream::PaginationStream).
114    pub fn into_paginator(self) -> crate::operation::get_vehicle_status::paginator::GetVehicleStatusPaginator {
115        crate::operation::get_vehicle_status::paginator::GetVehicleStatusPaginator::new(self.handle, self.inner)
116    }
117    /// <p>A pagination token for the next set of results.</p>
118    /// <p>If the results of a search are large, only a portion of the results are returned, and a <code>nextToken</code> pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value. This parameter is only supported for resources of type <code>CAMPAIGN</code>.</p>
119    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
120        self.inner = self.inner.next_token(input.into());
121        self
122    }
123    /// <p>A pagination token for the next set of results.</p>
124    /// <p>If the results of a search are large, only a portion of the results are returned, and a <code>nextToken</code> pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value. This parameter is only supported for resources of type <code>CAMPAIGN</code>.</p>
125    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
126        self.inner = self.inner.set_next_token(input);
127        self
128    }
129    /// <p>A pagination token for the next set of results.</p>
130    /// <p>If the results of a search are large, only a portion of the results are returned, and a <code>nextToken</code> pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value. This parameter is only supported for resources of type <code>CAMPAIGN</code>.</p>
131    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
132        self.inner.get_next_token()
133    }
134    /// <p>The maximum number of items to return, between 1 and 100, inclusive. This parameter is only supported for resources of type <code>CAMPAIGN</code>.</p>
135    pub fn max_results(mut self, input: i32) -> Self {
136        self.inner = self.inner.max_results(input);
137        self
138    }
139    /// <p>The maximum number of items to return, between 1 and 100, inclusive. This parameter is only supported for resources of type <code>CAMPAIGN</code>.</p>
140    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
141        self.inner = self.inner.set_max_results(input);
142        self
143    }
144    /// <p>The maximum number of items to return, between 1 and 100, inclusive. This parameter is only supported for resources of type <code>CAMPAIGN</code>.</p>
145    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
146        self.inner.get_max_results()
147    }
148    /// <p>The ID of the vehicle to retrieve information about.</p>
149    pub fn vehicle_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
150        self.inner = self.inner.vehicle_name(input.into());
151        self
152    }
153    /// <p>The ID of the vehicle to retrieve information about.</p>
154    pub fn set_vehicle_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
155        self.inner = self.inner.set_vehicle_name(input);
156        self
157    }
158    /// <p>The ID of the vehicle to retrieve information about.</p>
159    pub fn get_vehicle_name(&self) -> &::std::option::Option<::std::string::String> {
160        self.inner.get_vehicle_name()
161    }
162}