aws_sdk_geomaps/operation/get_static_map/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::get_static_map::_get_static_map_output::GetStaticMapOutputBuilder;
3
4pub use crate::operation::get_static_map::_get_static_map_input::GetStaticMapInputBuilder;
5
6impl crate::operation::get_static_map::builders::GetStaticMapInputBuilder {
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_static_map::GetStaticMapOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::get_static_map::GetStaticMapError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.get_static_map();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `GetStaticMap`.
24///
25/// <p><code>GetStaticMap</code> provides high-quality static map images with customizable options. You can modify the map's appearance and overlay additional information. It's an ideal solution for applications requiring tailored static map snapshots.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct GetStaticMapFluentBuilder {
28    handle: ::std::sync::Arc<crate::client::Handle>,
29    inner: crate::operation::get_static_map::builders::GetStaticMapInputBuilder,
30    config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl
33    crate::client::customize::internal::CustomizableSend<
34        crate::operation::get_static_map::GetStaticMapOutput,
35        crate::operation::get_static_map::GetStaticMapError,
36    > for GetStaticMapFluentBuilder
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_static_map::GetStaticMapOutput,
44            crate::operation::get_static_map::GetStaticMapError,
45        >,
46    > {
47        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
48    }
49}
50impl GetStaticMapFluentBuilder {
51    /// Creates a new `GetStaticMapFluentBuilder`.
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 GetStaticMap as a reference.
60    pub fn as_input(&self) -> &crate::operation::get_static_map::builders::GetStaticMapInputBuilder {
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_static_map::GetStaticMapOutput,
75        ::aws_smithy_runtime_api::client::result::SdkError<
76            crate::operation::get_static_map::GetStaticMapError,
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_static_map::GetStaticMap::operation_runtime_plugins(
85            self.handle.runtime_plugins.clone(),
86            &self.handle.conf,
87            self.config_override,
88        );
89        crate::operation::get_static_map::GetStaticMap::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_static_map::GetStaticMapOutput,
97        crate::operation::get_static_map::GetStaticMapError,
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    /// <p>Takes in two pairs of coordinates, \[Lon, Lat\], denoting south-westerly and north-easterly edges of the image. The underlying area becomes the view of the image.</p>
112    /// <p>Example: -123.17075,49.26959,-123.08125,49.31429</p>
113    pub fn bounding_box(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
114        self.inner = self.inner.bounding_box(input.into());
115        self
116    }
117    /// <p>Takes in two pairs of coordinates, \[Lon, Lat\], denoting south-westerly and north-easterly edges of the image. The underlying area becomes the view of the image.</p>
118    /// <p>Example: -123.17075,49.26959,-123.08125,49.31429</p>
119    pub fn set_bounding_box(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
120        self.inner = self.inner.set_bounding_box(input);
121        self
122    }
123    /// <p>Takes in two pairs of coordinates, \[Lon, Lat\], denoting south-westerly and north-easterly edges of the image. The underlying area becomes the view of the image.</p>
124    /// <p>Example: -123.17075,49.26959,-123.08125,49.31429</p>
125    pub fn get_bounding_box(&self) -> &::std::option::Option<::std::string::String> {
126        self.inner.get_bounding_box()
127    }
128    /// <p>Takes in two or more pair of coordinates, \[Lon, Lat\], with each coordinate separated by a comma. The API will generate an image to encompass all of the provided coordinates.</p><note>
129    /// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
130    /// </note>
131    /// <p>Example: 97.170451,78.039098,99.045536,27.176178</p>
132    pub fn bounded_positions(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
133        self.inner = self.inner.bounded_positions(input.into());
134        self
135    }
136    /// <p>Takes in two or more pair of coordinates, \[Lon, Lat\], with each coordinate separated by a comma. The API will generate an image to encompass all of the provided coordinates.</p><note>
137    /// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
138    /// </note>
139    /// <p>Example: 97.170451,78.039098,99.045536,27.176178</p>
140    pub fn set_bounded_positions(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
141        self.inner = self.inner.set_bounded_positions(input);
142        self
143    }
144    /// <p>Takes in two or more pair of coordinates, \[Lon, Lat\], with each coordinate separated by a comma. The API will generate an image to encompass all of the provided coordinates.</p><note>
145    /// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
146    /// </note>
147    /// <p>Example: 97.170451,78.039098,99.045536,27.176178</p>
148    pub fn get_bounded_positions(&self) -> &::std::option::Option<::std::string::String> {
149        self.inner.get_bounded_positions()
150    }
151    /// <p>Takes in a pair of coordinates, \[Lon, Lat\], which becomes the center point of the image. This parameter requires that either zoom or radius is set.</p><note>
152    /// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
153    /// </note>
154    /// <p>Example: 49.295,-123.108</p>
155    pub fn center(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
156        self.inner = self.inner.center(input.into());
157        self
158    }
159    /// <p>Takes in a pair of coordinates, \[Lon, Lat\], which becomes the center point of the image. This parameter requires that either zoom or radius is set.</p><note>
160    /// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
161    /// </note>
162    /// <p>Example: 49.295,-123.108</p>
163    pub fn set_center(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
164        self.inner = self.inner.set_center(input);
165        self
166    }
167    /// <p>Takes in a pair of coordinates, \[Lon, Lat\], which becomes the center point of the image. This parameter requires that either zoom or radius is set.</p><note>
168    /// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
169    /// </note>
170    /// <p>Example: 49.295,-123.108</p>
171    pub fn get_center(&self) -> &::std::option::Option<::std::string::String> {
172        self.inner.get_center()
173    }
174    /// <p>Sets color tone for map, such as dark and light for specific map styles. It only applies to vector map styles, such as Standard.</p>
175    /// <p>Example: <code>Light</code></p>
176    /// <p>Default value: <code>Light</code></p><note>
177    /// <p>Valid values for <code>ColorScheme</code> are case sensitive.</p>
178    /// </note>
179    pub fn color_scheme(mut self, input: crate::types::ColorScheme) -> Self {
180        self.inner = self.inner.color_scheme(input);
181        self
182    }
183    /// <p>Sets color tone for map, such as dark and light for specific map styles. It only applies to vector map styles, such as Standard.</p>
184    /// <p>Example: <code>Light</code></p>
185    /// <p>Default value: <code>Light</code></p><note>
186    /// <p>Valid values for <code>ColorScheme</code> are case sensitive.</p>
187    /// </note>
188    pub fn set_color_scheme(mut self, input: ::std::option::Option<crate::types::ColorScheme>) -> Self {
189        self.inner = self.inner.set_color_scheme(input);
190        self
191    }
192    /// <p>Sets color tone for map, such as dark and light for specific map styles. It only applies to vector map styles, such as Standard.</p>
193    /// <p>Example: <code>Light</code></p>
194    /// <p>Default value: <code>Light</code></p><note>
195    /// <p>Valid values for <code>ColorScheme</code> are case sensitive.</p>
196    /// </note>
197    pub fn get_color_scheme(&self) -> &::std::option::Option<crate::types::ColorScheme> {
198        self.inner.get_color_scheme()
199    }
200    /// <p>Takes in a string to draw geometries on the image. The input is a comma separated format as follows format: <code>\[Lon, Lat\]</code></p>
201    /// <p>Example: <code>line:-122.407653,37.798557,-122.413291,37.802443;color=%23DD0000;width=7;outline-color=#00DD00;outline-width=5yd|point:-122.40572,37.80004;label=Fog Hill Market;size=large;text-color=%23DD0000;color=#EE4B2B</code></p><note>
202    /// <p>Currently it supports the following geometry types: point, line and polygon. It does not support multiPoint , multiLine and multiPolgyon.</p>
203    /// </note>
204    pub fn compact_overlay(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
205        self.inner = self.inner.compact_overlay(input.into());
206        self
207    }
208    /// <p>Takes in a string to draw geometries on the image. The input is a comma separated format as follows format: <code>\[Lon, Lat\]</code></p>
209    /// <p>Example: <code>line:-122.407653,37.798557,-122.413291,37.802443;color=%23DD0000;width=7;outline-color=#00DD00;outline-width=5yd|point:-122.40572,37.80004;label=Fog Hill Market;size=large;text-color=%23DD0000;color=#EE4B2B</code></p><note>
210    /// <p>Currently it supports the following geometry types: point, line and polygon. It does not support multiPoint , multiLine and multiPolgyon.</p>
211    /// </note>
212    pub fn set_compact_overlay(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
213        self.inner = self.inner.set_compact_overlay(input);
214        self
215    }
216    /// <p>Takes in a string to draw geometries on the image. The input is a comma separated format as follows format: <code>\[Lon, Lat\]</code></p>
217    /// <p>Example: <code>line:-122.407653,37.798557,-122.413291,37.802443;color=%23DD0000;width=7;outline-color=#00DD00;outline-width=5yd|point:-122.40572,37.80004;label=Fog Hill Market;size=large;text-color=%23DD0000;color=#EE4B2B</code></p><note>
218    /// <p>Currently it supports the following geometry types: point, line and polygon. It does not support multiPoint , multiLine and multiPolgyon.</p>
219    /// </note>
220    pub fn get_compact_overlay(&self) -> &::std::option::Option<::std::string::String> {
221        self.inner.get_compact_overlay()
222    }
223    /// <p>It is a flag that takes in true or false. It prevents the labels that are on the edge of the image from being cut or obscured.</p>
224    pub fn crop_labels(mut self, input: bool) -> Self {
225        self.inner = self.inner.crop_labels(input);
226        self
227    }
228    /// <p>It is a flag that takes in true or false. It prevents the labels that are on the edge of the image from being cut or obscured.</p>
229    pub fn set_crop_labels(mut self, input: ::std::option::Option<bool>) -> Self {
230        self.inner = self.inner.set_crop_labels(input);
231        self
232    }
233    /// <p>It is a flag that takes in true or false. It prevents the labels that are on the edge of the image from being cut or obscured.</p>
234    pub fn get_crop_labels(&self) -> &::std::option::Option<bool> {
235        self.inner.get_crop_labels()
236    }
237    /// <p>Takes in a string to draw geometries on the image. The input is a valid GeoJSON collection object.</p>
238    /// <p>Example: <code>{"type":"FeatureCollection","features": \[{"type":"Feature","geometry":{"type":"MultiPoint","coordinates": \[\[-90.076345,51.504107\],\[-0.074451,51.506892\]\]},"properties": {"color":"#00DD00"}}\]}</code></p>
239    pub fn geo_json_overlay(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
240        self.inner = self.inner.geo_json_overlay(input.into());
241        self
242    }
243    /// <p>Takes in a string to draw geometries on the image. The input is a valid GeoJSON collection object.</p>
244    /// <p>Example: <code>{"type":"FeatureCollection","features": \[{"type":"Feature","geometry":{"type":"MultiPoint","coordinates": \[\[-90.076345,51.504107\],\[-0.074451,51.506892\]\]},"properties": {"color":"#00DD00"}}\]}</code></p>
245    pub fn set_geo_json_overlay(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
246        self.inner = self.inner.set_geo_json_overlay(input);
247        self
248    }
249    /// <p>Takes in a string to draw geometries on the image. The input is a valid GeoJSON collection object.</p>
250    /// <p>Example: <code>{"type":"FeatureCollection","features": \[{"type":"Feature","geometry":{"type":"MultiPoint","coordinates": \[\[-90.076345,51.504107\],\[-0.074451,51.506892\]\]},"properties": {"color":"#00DD00"}}\]}</code></p>
251    pub fn get_geo_json_overlay(&self) -> &::std::option::Option<::std::string::String> {
252        self.inner.get_geo_json_overlay()
253    }
254    /// <p>Specifies the height of the map image.</p>
255    pub fn height(mut self, input: i32) -> Self {
256        self.inner = self.inner.height(input);
257        self
258    }
259    /// <p>Specifies the height of the map image.</p>
260    pub fn set_height(mut self, input: ::std::option::Option<i32>) -> Self {
261        self.inner = self.inner.set_height(input);
262        self
263    }
264    /// <p>Specifies the height of the map image.</p>
265    pub fn get_height(&self) -> &::std::option::Option<i32> {
266        self.inner.get_height()
267    }
268    /// <p>Optional: The API key to be used for authorization. Either an API key or valid SigV4 signature must be provided when making a request.</p>
269    pub fn key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
270        self.inner = self.inner.key(input.into());
271        self
272    }
273    /// <p>Optional: The API key to be used for authorization. Either an API key or valid SigV4 signature must be provided when making a request.</p>
274    pub fn set_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
275        self.inner = self.inner.set_key(input);
276        self
277    }
278    /// <p>Optional: The API key to be used for authorization. Either an API key or valid SigV4 signature must be provided when making a request.</p>
279    pub fn get_key(&self) -> &::std::option::Option<::std::string::String> {
280        self.inner.get_key()
281    }
282    /// <p>Overrides the label size auto-calculated by <code>FileName</code>. Takes in one of the values - <code>Small</code> or <code>Large</code>.</p>
283    pub fn label_size(mut self, input: crate::types::LabelSize) -> Self {
284        self.inner = self.inner.label_size(input);
285        self
286    }
287    /// <p>Overrides the label size auto-calculated by <code>FileName</code>. Takes in one of the values - <code>Small</code> or <code>Large</code>.</p>
288    pub fn set_label_size(mut self, input: ::std::option::Option<crate::types::LabelSize>) -> Self {
289        self.inner = self.inner.set_label_size(input);
290        self
291    }
292    /// <p>Overrides the label size auto-calculated by <code>FileName</code>. Takes in one of the values - <code>Small</code> or <code>Large</code>.</p>
293    pub fn get_label_size(&self) -> &::std::option::Option<crate::types::LabelSize> {
294        self.inner.get_label_size()
295    }
296    /// <p>Specifies the language on the map labels using the BCP 47 language tag, limited to ISO 639-1 two-letter language codes. If the specified language data isn't available for the map image, the labels will default to the regional primary language.</p>
297    /// <p>Supported codes:</p>
298    /// <ul>
299    /// <li>
300    /// <p><code>ar</code></p></li>
301    /// <li>
302    /// <p><code>as</code></p></li>
303    /// <li>
304    /// <p><code>az</code></p></li>
305    /// <li>
306    /// <p><code>be</code></p></li>
307    /// <li>
308    /// <p><code>bg</code></p></li>
309    /// <li>
310    /// <p><code>bn</code></p></li>
311    /// <li>
312    /// <p><code>bs</code></p></li>
313    /// <li>
314    /// <p><code>ca</code></p></li>
315    /// <li>
316    /// <p><code>cs</code></p></li>
317    /// <li>
318    /// <p><code>cy</code></p></li>
319    /// <li>
320    /// <p><code>da</code></p></li>
321    /// <li>
322    /// <p><code>de</code></p></li>
323    /// <li>
324    /// <p><code>el</code></p></li>
325    /// <li>
326    /// <p><code>en</code></p></li>
327    /// <li>
328    /// <p><code>es</code></p></li>
329    /// <li>
330    /// <p><code>et</code></p></li>
331    /// <li>
332    /// <p><code>eu</code></p></li>
333    /// <li>
334    /// <p><code>fi</code></p></li>
335    /// <li>
336    /// <p><code>fo</code></p></li>
337    /// <li>
338    /// <p><code>fr</code></p></li>
339    /// <li>
340    /// <p><code>ga</code></p></li>
341    /// <li>
342    /// <p><code>gl</code></p></li>
343    /// <li>
344    /// <p><code>gn</code></p></li>
345    /// <li>
346    /// <p><code>gu</code></p></li>
347    /// <li>
348    /// <p><code>he</code></p></li>
349    /// <li>
350    /// <p><code>hi</code></p></li>
351    /// <li>
352    /// <p><code>hr</code></p></li>
353    /// <li>
354    /// <p><code>hu</code></p></li>
355    /// <li>
356    /// <p><code>hy</code></p></li>
357    /// <li>
358    /// <p><code>id</code></p></li>
359    /// <li>
360    /// <p><code>is</code></p></li>
361    /// <li>
362    /// <p><code>it</code></p></li>
363    /// <li>
364    /// <p><code>ja</code></p></li>
365    /// <li>
366    /// <p><code>ka</code></p></li>
367    /// <li>
368    /// <p><code>kk</code></p></li>
369    /// <li>
370    /// <p><code>km</code></p></li>
371    /// <li>
372    /// <p><code>kn</code></p></li>
373    /// <li>
374    /// <p><code>ko</code></p></li>
375    /// <li>
376    /// <p><code>ky</code></p></li>
377    /// <li>
378    /// <p><code>lt</code></p></li>
379    /// <li>
380    /// <p><code>lv</code></p></li>
381    /// <li>
382    /// <p><code>mk</code></p></li>
383    /// <li>
384    /// <p><code>ml</code></p></li>
385    /// <li>
386    /// <p><code>mr</code></p></li>
387    /// <li>
388    /// <p><code>ms</code></p></li>
389    /// <li>
390    /// <p><code>mt</code></p></li>
391    /// <li>
392    /// <p><code>my</code></p></li>
393    /// <li>
394    /// <p><code>nl</code></p></li>
395    /// <li>
396    /// <p><code>no</code></p></li>
397    /// <li>
398    /// <p><code>or</code></p></li>
399    /// <li>
400    /// <p><code>pa</code></p></li>
401    /// <li>
402    /// <p><code>pl</code></p></li>
403    /// <li>
404    /// <p><code>pt</code></p></li>
405    /// <li>
406    /// <p><code>ro</code></p></li>
407    /// <li>
408    /// <p><code>ru</code></p></li>
409    /// <li>
410    /// <p><code>sk</code></p></li>
411    /// <li>
412    /// <p><code>sl</code></p></li>
413    /// <li>
414    /// <p><code>sq</code></p></li>
415    /// <li>
416    /// <p><code>sr</code></p></li>
417    /// <li>
418    /// <p><code>sv</code></p></li>
419    /// <li>
420    /// <p><code>ta</code></p></li>
421    /// <li>
422    /// <p><code>te</code></p></li>
423    /// <li>
424    /// <p><code>th</code></p></li>
425    /// <li>
426    /// <p><code>tr</code></p></li>
427    /// <li>
428    /// <p><code>uk</code></p></li>
429    /// <li>
430    /// <p><code>uz</code></p></li>
431    /// <li>
432    /// <p><code>vi</code></p></li>
433    /// <li>
434    /// <p><code>zh</code></p></li>
435    /// </ul>
436    pub fn language(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
437        self.inner = self.inner.language(input.into());
438        self
439    }
440    /// <p>Specifies the language on the map labels using the BCP 47 language tag, limited to ISO 639-1 two-letter language codes. If the specified language data isn't available for the map image, the labels will default to the regional primary language.</p>
441    /// <p>Supported codes:</p>
442    /// <ul>
443    /// <li>
444    /// <p><code>ar</code></p></li>
445    /// <li>
446    /// <p><code>as</code></p></li>
447    /// <li>
448    /// <p><code>az</code></p></li>
449    /// <li>
450    /// <p><code>be</code></p></li>
451    /// <li>
452    /// <p><code>bg</code></p></li>
453    /// <li>
454    /// <p><code>bn</code></p></li>
455    /// <li>
456    /// <p><code>bs</code></p></li>
457    /// <li>
458    /// <p><code>ca</code></p></li>
459    /// <li>
460    /// <p><code>cs</code></p></li>
461    /// <li>
462    /// <p><code>cy</code></p></li>
463    /// <li>
464    /// <p><code>da</code></p></li>
465    /// <li>
466    /// <p><code>de</code></p></li>
467    /// <li>
468    /// <p><code>el</code></p></li>
469    /// <li>
470    /// <p><code>en</code></p></li>
471    /// <li>
472    /// <p><code>es</code></p></li>
473    /// <li>
474    /// <p><code>et</code></p></li>
475    /// <li>
476    /// <p><code>eu</code></p></li>
477    /// <li>
478    /// <p><code>fi</code></p></li>
479    /// <li>
480    /// <p><code>fo</code></p></li>
481    /// <li>
482    /// <p><code>fr</code></p></li>
483    /// <li>
484    /// <p><code>ga</code></p></li>
485    /// <li>
486    /// <p><code>gl</code></p></li>
487    /// <li>
488    /// <p><code>gn</code></p></li>
489    /// <li>
490    /// <p><code>gu</code></p></li>
491    /// <li>
492    /// <p><code>he</code></p></li>
493    /// <li>
494    /// <p><code>hi</code></p></li>
495    /// <li>
496    /// <p><code>hr</code></p></li>
497    /// <li>
498    /// <p><code>hu</code></p></li>
499    /// <li>
500    /// <p><code>hy</code></p></li>
501    /// <li>
502    /// <p><code>id</code></p></li>
503    /// <li>
504    /// <p><code>is</code></p></li>
505    /// <li>
506    /// <p><code>it</code></p></li>
507    /// <li>
508    /// <p><code>ja</code></p></li>
509    /// <li>
510    /// <p><code>ka</code></p></li>
511    /// <li>
512    /// <p><code>kk</code></p></li>
513    /// <li>
514    /// <p><code>km</code></p></li>
515    /// <li>
516    /// <p><code>kn</code></p></li>
517    /// <li>
518    /// <p><code>ko</code></p></li>
519    /// <li>
520    /// <p><code>ky</code></p></li>
521    /// <li>
522    /// <p><code>lt</code></p></li>
523    /// <li>
524    /// <p><code>lv</code></p></li>
525    /// <li>
526    /// <p><code>mk</code></p></li>
527    /// <li>
528    /// <p><code>ml</code></p></li>
529    /// <li>
530    /// <p><code>mr</code></p></li>
531    /// <li>
532    /// <p><code>ms</code></p></li>
533    /// <li>
534    /// <p><code>mt</code></p></li>
535    /// <li>
536    /// <p><code>my</code></p></li>
537    /// <li>
538    /// <p><code>nl</code></p></li>
539    /// <li>
540    /// <p><code>no</code></p></li>
541    /// <li>
542    /// <p><code>or</code></p></li>
543    /// <li>
544    /// <p><code>pa</code></p></li>
545    /// <li>
546    /// <p><code>pl</code></p></li>
547    /// <li>
548    /// <p><code>pt</code></p></li>
549    /// <li>
550    /// <p><code>ro</code></p></li>
551    /// <li>
552    /// <p><code>ru</code></p></li>
553    /// <li>
554    /// <p><code>sk</code></p></li>
555    /// <li>
556    /// <p><code>sl</code></p></li>
557    /// <li>
558    /// <p><code>sq</code></p></li>
559    /// <li>
560    /// <p><code>sr</code></p></li>
561    /// <li>
562    /// <p><code>sv</code></p></li>
563    /// <li>
564    /// <p><code>ta</code></p></li>
565    /// <li>
566    /// <p><code>te</code></p></li>
567    /// <li>
568    /// <p><code>th</code></p></li>
569    /// <li>
570    /// <p><code>tr</code></p></li>
571    /// <li>
572    /// <p><code>uk</code></p></li>
573    /// <li>
574    /// <p><code>uz</code></p></li>
575    /// <li>
576    /// <p><code>vi</code></p></li>
577    /// <li>
578    /// <p><code>zh</code></p></li>
579    /// </ul>
580    pub fn set_language(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
581        self.inner = self.inner.set_language(input);
582        self
583    }
584    /// <p>Specifies the language on the map labels using the BCP 47 language tag, limited to ISO 639-1 two-letter language codes. If the specified language data isn't available for the map image, the labels will default to the regional primary language.</p>
585    /// <p>Supported codes:</p>
586    /// <ul>
587    /// <li>
588    /// <p><code>ar</code></p></li>
589    /// <li>
590    /// <p><code>as</code></p></li>
591    /// <li>
592    /// <p><code>az</code></p></li>
593    /// <li>
594    /// <p><code>be</code></p></li>
595    /// <li>
596    /// <p><code>bg</code></p></li>
597    /// <li>
598    /// <p><code>bn</code></p></li>
599    /// <li>
600    /// <p><code>bs</code></p></li>
601    /// <li>
602    /// <p><code>ca</code></p></li>
603    /// <li>
604    /// <p><code>cs</code></p></li>
605    /// <li>
606    /// <p><code>cy</code></p></li>
607    /// <li>
608    /// <p><code>da</code></p></li>
609    /// <li>
610    /// <p><code>de</code></p></li>
611    /// <li>
612    /// <p><code>el</code></p></li>
613    /// <li>
614    /// <p><code>en</code></p></li>
615    /// <li>
616    /// <p><code>es</code></p></li>
617    /// <li>
618    /// <p><code>et</code></p></li>
619    /// <li>
620    /// <p><code>eu</code></p></li>
621    /// <li>
622    /// <p><code>fi</code></p></li>
623    /// <li>
624    /// <p><code>fo</code></p></li>
625    /// <li>
626    /// <p><code>fr</code></p></li>
627    /// <li>
628    /// <p><code>ga</code></p></li>
629    /// <li>
630    /// <p><code>gl</code></p></li>
631    /// <li>
632    /// <p><code>gn</code></p></li>
633    /// <li>
634    /// <p><code>gu</code></p></li>
635    /// <li>
636    /// <p><code>he</code></p></li>
637    /// <li>
638    /// <p><code>hi</code></p></li>
639    /// <li>
640    /// <p><code>hr</code></p></li>
641    /// <li>
642    /// <p><code>hu</code></p></li>
643    /// <li>
644    /// <p><code>hy</code></p></li>
645    /// <li>
646    /// <p><code>id</code></p></li>
647    /// <li>
648    /// <p><code>is</code></p></li>
649    /// <li>
650    /// <p><code>it</code></p></li>
651    /// <li>
652    /// <p><code>ja</code></p></li>
653    /// <li>
654    /// <p><code>ka</code></p></li>
655    /// <li>
656    /// <p><code>kk</code></p></li>
657    /// <li>
658    /// <p><code>km</code></p></li>
659    /// <li>
660    /// <p><code>kn</code></p></li>
661    /// <li>
662    /// <p><code>ko</code></p></li>
663    /// <li>
664    /// <p><code>ky</code></p></li>
665    /// <li>
666    /// <p><code>lt</code></p></li>
667    /// <li>
668    /// <p><code>lv</code></p></li>
669    /// <li>
670    /// <p><code>mk</code></p></li>
671    /// <li>
672    /// <p><code>ml</code></p></li>
673    /// <li>
674    /// <p><code>mr</code></p></li>
675    /// <li>
676    /// <p><code>ms</code></p></li>
677    /// <li>
678    /// <p><code>mt</code></p></li>
679    /// <li>
680    /// <p><code>my</code></p></li>
681    /// <li>
682    /// <p><code>nl</code></p></li>
683    /// <li>
684    /// <p><code>no</code></p></li>
685    /// <li>
686    /// <p><code>or</code></p></li>
687    /// <li>
688    /// <p><code>pa</code></p></li>
689    /// <li>
690    /// <p><code>pl</code></p></li>
691    /// <li>
692    /// <p><code>pt</code></p></li>
693    /// <li>
694    /// <p><code>ro</code></p></li>
695    /// <li>
696    /// <p><code>ru</code></p></li>
697    /// <li>
698    /// <p><code>sk</code></p></li>
699    /// <li>
700    /// <p><code>sl</code></p></li>
701    /// <li>
702    /// <p><code>sq</code></p></li>
703    /// <li>
704    /// <p><code>sr</code></p></li>
705    /// <li>
706    /// <p><code>sv</code></p></li>
707    /// <li>
708    /// <p><code>ta</code></p></li>
709    /// <li>
710    /// <p><code>te</code></p></li>
711    /// <li>
712    /// <p><code>th</code></p></li>
713    /// <li>
714    /// <p><code>tr</code></p></li>
715    /// <li>
716    /// <p><code>uk</code></p></li>
717    /// <li>
718    /// <p><code>uz</code></p></li>
719    /// <li>
720    /// <p><code>vi</code></p></li>
721    /// <li>
722    /// <p><code>zh</code></p></li>
723    /// </ul>
724    pub fn get_language(&self) -> &::std::option::Option<::std::string::String> {
725        self.inner.get_language()
726    }
727    /// <p>Applies additional space (in pixels) around overlay feature to prevent them from being cut or obscured.</p><note>
728    /// <p>Value for max and min is determined by:</p>
729    /// <p>Min: <code>1</code></p>
730    /// <p>Max: <code>min(height, width)/4</code></p>
731    /// </note>
732    /// <p>Example: <code>100</code></p>
733    pub fn padding(mut self, input: i32) -> Self {
734        self.inner = self.inner.padding(input);
735        self
736    }
737    /// <p>Applies additional space (in pixels) around overlay feature to prevent them from being cut or obscured.</p><note>
738    /// <p>Value for max and min is determined by:</p>
739    /// <p>Min: <code>1</code></p>
740    /// <p>Max: <code>min(height, width)/4</code></p>
741    /// </note>
742    /// <p>Example: <code>100</code></p>
743    pub fn set_padding(mut self, input: ::std::option::Option<i32>) -> Self {
744        self.inner = self.inner.set_padding(input);
745        self
746    }
747    /// <p>Applies additional space (in pixels) around overlay feature to prevent them from being cut or obscured.</p><note>
748    /// <p>Value for max and min is determined by:</p>
749    /// <p>Min: <code>1</code></p>
750    /// <p>Max: <code>min(height, width)/4</code></p>
751    /// </note>
752    /// <p>Example: <code>100</code></p>
753    pub fn get_padding(&self) -> &::std::option::Option<i32> {
754        self.inner.get_padding()
755    }
756    /// <p>Specifies the political view, using ISO 3166-2 or ISO 3166-3 country code format.</p>
757    /// <p>The following political views are currently supported:</p>
758    /// <ul>
759    /// <li>
760    /// <p><code>ARG</code>: Argentina's view on the Southern Patagonian Ice Field and Tierra Del Fuego, including the Falkland Islands, South Georgia, and South Sandwich Islands</p></li>
761    /// <li>
762    /// <p><code>EGY</code>: Egypt's view on Bir Tawil</p></li>
763    /// <li>
764    /// <p><code>IND</code>: India's view on Gilgit-Baltistan</p></li>
765    /// <li>
766    /// <p><code>KEN</code>: Kenya's view on the Ilemi Triangle</p></li>
767    /// <li>
768    /// <p><code>MAR</code>: Morocco's view on Western Sahara</p></li>
769    /// <li>
770    /// <p><code>RUS</code>: Russia's view on Crimea</p></li>
771    /// <li>
772    /// <p><code>SDN</code>: Sudan's view on the Halaib Triangle</p></li>
773    /// <li>
774    /// <p><code>SRB</code>: Serbia's view on Kosovo, Vukovar, and Sarengrad Islands</p></li>
775    /// <li>
776    /// <p><code>SUR</code>: Suriname's view on the Courantyne Headwaters and Lawa Headwaters</p></li>
777    /// <li>
778    /// <p><code>SYR</code>: Syria's view on the Golan Heights</p></li>
779    /// <li>
780    /// <p><code>TUR</code>: Turkey's view on Cyprus and Northern Cyprus</p></li>
781    /// <li>
782    /// <p><code>TZA</code>: Tanzania's view on Lake Malawi</p></li>
783    /// <li>
784    /// <p><code>URY</code>: Uruguay's view on Rincon de Artigas</p></li>
785    /// <li>
786    /// <p><code>VNM</code>: Vietnam's view on the Paracel Islands and Spratly Islands</p></li>
787    /// </ul>
788    pub fn political_view(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
789        self.inner = self.inner.political_view(input.into());
790        self
791    }
792    /// <p>Specifies the political view, using ISO 3166-2 or ISO 3166-3 country code format.</p>
793    /// <p>The following political views are currently supported:</p>
794    /// <ul>
795    /// <li>
796    /// <p><code>ARG</code>: Argentina's view on the Southern Patagonian Ice Field and Tierra Del Fuego, including the Falkland Islands, South Georgia, and South Sandwich Islands</p></li>
797    /// <li>
798    /// <p><code>EGY</code>: Egypt's view on Bir Tawil</p></li>
799    /// <li>
800    /// <p><code>IND</code>: India's view on Gilgit-Baltistan</p></li>
801    /// <li>
802    /// <p><code>KEN</code>: Kenya's view on the Ilemi Triangle</p></li>
803    /// <li>
804    /// <p><code>MAR</code>: Morocco's view on Western Sahara</p></li>
805    /// <li>
806    /// <p><code>RUS</code>: Russia's view on Crimea</p></li>
807    /// <li>
808    /// <p><code>SDN</code>: Sudan's view on the Halaib Triangle</p></li>
809    /// <li>
810    /// <p><code>SRB</code>: Serbia's view on Kosovo, Vukovar, and Sarengrad Islands</p></li>
811    /// <li>
812    /// <p><code>SUR</code>: Suriname's view on the Courantyne Headwaters and Lawa Headwaters</p></li>
813    /// <li>
814    /// <p><code>SYR</code>: Syria's view on the Golan Heights</p></li>
815    /// <li>
816    /// <p><code>TUR</code>: Turkey's view on Cyprus and Northern Cyprus</p></li>
817    /// <li>
818    /// <p><code>TZA</code>: Tanzania's view on Lake Malawi</p></li>
819    /// <li>
820    /// <p><code>URY</code>: Uruguay's view on Rincon de Artigas</p></li>
821    /// <li>
822    /// <p><code>VNM</code>: Vietnam's view on the Paracel Islands and Spratly Islands</p></li>
823    /// </ul>
824    pub fn set_political_view(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
825        self.inner = self.inner.set_political_view(input);
826        self
827    }
828    /// <p>Specifies the political view, using ISO 3166-2 or ISO 3166-3 country code format.</p>
829    /// <p>The following political views are currently supported:</p>
830    /// <ul>
831    /// <li>
832    /// <p><code>ARG</code>: Argentina's view on the Southern Patagonian Ice Field and Tierra Del Fuego, including the Falkland Islands, South Georgia, and South Sandwich Islands</p></li>
833    /// <li>
834    /// <p><code>EGY</code>: Egypt's view on Bir Tawil</p></li>
835    /// <li>
836    /// <p><code>IND</code>: India's view on Gilgit-Baltistan</p></li>
837    /// <li>
838    /// <p><code>KEN</code>: Kenya's view on the Ilemi Triangle</p></li>
839    /// <li>
840    /// <p><code>MAR</code>: Morocco's view on Western Sahara</p></li>
841    /// <li>
842    /// <p><code>RUS</code>: Russia's view on Crimea</p></li>
843    /// <li>
844    /// <p><code>SDN</code>: Sudan's view on the Halaib Triangle</p></li>
845    /// <li>
846    /// <p><code>SRB</code>: Serbia's view on Kosovo, Vukovar, and Sarengrad Islands</p></li>
847    /// <li>
848    /// <p><code>SUR</code>: Suriname's view on the Courantyne Headwaters and Lawa Headwaters</p></li>
849    /// <li>
850    /// <p><code>SYR</code>: Syria's view on the Golan Heights</p></li>
851    /// <li>
852    /// <p><code>TUR</code>: Turkey's view on Cyprus and Northern Cyprus</p></li>
853    /// <li>
854    /// <p><code>TZA</code>: Tanzania's view on Lake Malawi</p></li>
855    /// <li>
856    /// <p><code>URY</code>: Uruguay's view on Rincon de Artigas</p></li>
857    /// <li>
858    /// <p><code>VNM</code>: Vietnam's view on the Paracel Islands and Spratly Islands</p></li>
859    /// </ul>
860    pub fn get_political_view(&self) -> &::std::option::Option<::std::string::String> {
861        self.inner.get_political_view()
862    }
863    /// <p>Determines if the result image will display icons representing points of interest on the map.</p>
864    pub fn points_of_interests(mut self, input: crate::types::MapFeatureMode) -> Self {
865        self.inner = self.inner.points_of_interests(input);
866        self
867    }
868    /// <p>Determines if the result image will display icons representing points of interest on the map.</p>
869    pub fn set_points_of_interests(mut self, input: ::std::option::Option<crate::types::MapFeatureMode>) -> Self {
870        self.inner = self.inner.set_points_of_interests(input);
871        self
872    }
873    /// <p>Determines if the result image will display icons representing points of interest on the map.</p>
874    pub fn get_points_of_interests(&self) -> &::std::option::Option<crate::types::MapFeatureMode> {
875        self.inner.get_points_of_interests()
876    }
877    /// <p>Used with center parameter, it specifies the zoom of the image where you can control it on a granular level. Takes in any value <code>&gt;= 1</code>.</p>
878    /// <p>Example: <code>1500</code></p><note>
879    /// <p>Cannot be used with <code>Zoom</code>.</p>
880    /// </note>
881    /// <p><b>Unit</b>: <code>Meters</code></p>
882    /// <p></p>
883    pub fn radius(mut self, input: i64) -> Self {
884        self.inner = self.inner.radius(input);
885        self
886    }
887    /// <p>Used with center parameter, it specifies the zoom of the image where you can control it on a granular level. Takes in any value <code>&gt;= 1</code>.</p>
888    /// <p>Example: <code>1500</code></p><note>
889    /// <p>Cannot be used with <code>Zoom</code>.</p>
890    /// </note>
891    /// <p><b>Unit</b>: <code>Meters</code></p>
892    /// <p></p>
893    pub fn set_radius(mut self, input: ::std::option::Option<i64>) -> Self {
894        self.inner = self.inner.set_radius(input);
895        self
896    }
897    /// <p>Used with center parameter, it specifies the zoom of the image where you can control it on a granular level. Takes in any value <code>&gt;= 1</code>.</p>
898    /// <p>Example: <code>1500</code></p><note>
899    /// <p>Cannot be used with <code>Zoom</code>.</p>
900    /// </note>
901    /// <p><b>Unit</b>: <code>Meters</code></p>
902    /// <p></p>
903    pub fn get_radius(&self) -> &::std::option::Option<i64> {
904        self.inner.get_radius()
905    }
906    /// <p>The map scaling parameter to size the image, icons, and labels. It follows the pattern of <code>^map(@2x)?$</code>.</p>
907    /// <p>Example: <code>map, map@2x</code></p>
908    pub fn file_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
909        self.inner = self.inner.file_name(input.into());
910        self
911    }
912    /// <p>The map scaling parameter to size the image, icons, and labels. It follows the pattern of <code>^map(@2x)?$</code>.</p>
913    /// <p>Example: <code>map, map@2x</code></p>
914    pub fn set_file_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
915        self.inner = self.inner.set_file_name(input);
916        self
917    }
918    /// <p>The map scaling parameter to size the image, icons, and labels. It follows the pattern of <code>^map(@2x)?$</code>.</p>
919    /// <p>Example: <code>map, map@2x</code></p>
920    pub fn get_file_name(&self) -> &::std::option::Option<::std::string::String> {
921        self.inner.get_file_name()
922    }
923    /// <p>Displays a scale on the bottom right of the map image with the unit specified in the input.</p>
924    /// <p>Example: <code>KilometersMiles, Miles, Kilometers, MilesKilometers</code></p>
925    pub fn scale_bar_unit(mut self, input: crate::types::ScaleBarUnit) -> Self {
926        self.inner = self.inner.scale_bar_unit(input);
927        self
928    }
929    /// <p>Displays a scale on the bottom right of the map image with the unit specified in the input.</p>
930    /// <p>Example: <code>KilometersMiles, Miles, Kilometers, MilesKilometers</code></p>
931    pub fn set_scale_bar_unit(mut self, input: ::std::option::Option<crate::types::ScaleBarUnit>) -> Self {
932        self.inner = self.inner.set_scale_bar_unit(input);
933        self
934    }
935    /// <p>Displays a scale on the bottom right of the map image with the unit specified in the input.</p>
936    /// <p>Example: <code>KilometersMiles, Miles, Kilometers, MilesKilometers</code></p>
937    pub fn get_scale_bar_unit(&self) -> &::std::option::Option<crate::types::ScaleBarUnit> {
938        self.inner.get_scale_bar_unit()
939    }
940    /// <p><code>Style</code> specifies the desired map style.</p>
941    pub fn style(mut self, input: crate::types::StaticMapStyle) -> Self {
942        self.inner = self.inner.style(input);
943        self
944    }
945    /// <p><code>Style</code> specifies the desired map style.</p>
946    pub fn set_style(mut self, input: ::std::option::Option<crate::types::StaticMapStyle>) -> Self {
947        self.inner = self.inner.set_style(input);
948        self
949    }
950    /// <p><code>Style</code> specifies the desired map style.</p>
951    pub fn get_style(&self) -> &::std::option::Option<crate::types::StaticMapStyle> {
952        self.inner.get_style()
953    }
954    /// <p>Specifies the width of the map image.</p>
955    pub fn width(mut self, input: i32) -> Self {
956        self.inner = self.inner.width(input);
957        self
958    }
959    /// <p>Specifies the width of the map image.</p>
960    pub fn set_width(mut self, input: ::std::option::Option<i32>) -> Self {
961        self.inner = self.inner.set_width(input);
962        self
963    }
964    /// <p>Specifies the width of the map image.</p>
965    pub fn get_width(&self) -> &::std::option::Option<i32> {
966        self.inner.get_width()
967    }
968    /// <p>Specifies the zoom level of the map image.</p><note>
969    /// <p>Cannot be used with <code>Radius</code>.</p>
970    /// </note>
971    pub fn zoom(mut self, input: f32) -> Self {
972        self.inner = self.inner.zoom(input);
973        self
974    }
975    /// <p>Specifies the zoom level of the map image.</p><note>
976    /// <p>Cannot be used with <code>Radius</code>.</p>
977    /// </note>
978    pub fn set_zoom(mut self, input: ::std::option::Option<f32>) -> Self {
979        self.inner = self.inner.set_zoom(input);
980        self
981    }
982    /// <p>Specifies the zoom level of the map image.</p><note>
983    /// <p>Cannot be used with <code>Radius</code>.</p>
984    /// </note>
985    pub fn get_zoom(&self) -> &::std::option::Option<f32> {
986        self.inner.get_zoom()
987    }
988}