aws_sdk_geomaps/operation/get_static_map/builders.rs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::get_static_map::_get_static_map_output::GetStaticMapOutputBuilder;
pub use crate::operation::get_static_map::_get_static_map_input::GetStaticMapInputBuilder;
impl crate::operation::get_static_map::builders::GetStaticMapInputBuilder {
/// Sends a request with this input using the given client.
pub async fn send_with(
self,
client: &crate::Client,
) -> ::std::result::Result<
crate::operation::get_static_map::GetStaticMapOutput,
::aws_smithy_runtime_api::client::result::SdkError<
crate::operation::get_static_map::GetStaticMapError,
::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
>,
> {
let mut fluent_builder = client.get_static_map();
fluent_builder.inner = self;
fluent_builder.send().await
}
}
/// Fluent builder constructing a request to `GetStaticMap`.
///
/// <p>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>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct GetStaticMapFluentBuilder {
handle: ::std::sync::Arc<crate::client::Handle>,
inner: crate::operation::get_static_map::builders::GetStaticMapInputBuilder,
config_override: ::std::option::Option<crate::config::Builder>,
}
impl
crate::client::customize::internal::CustomizableSend<
crate::operation::get_static_map::GetStaticMapOutput,
crate::operation::get_static_map::GetStaticMapError,
> for GetStaticMapFluentBuilder
{
fn send(
self,
config_override: crate::config::Builder,
) -> crate::client::customize::internal::BoxFuture<
crate::client::customize::internal::SendResult<
crate::operation::get_static_map::GetStaticMapOutput,
crate::operation::get_static_map::GetStaticMapError,
>,
> {
::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
}
}
impl GetStaticMapFluentBuilder {
/// Creates a new `GetStaticMapFluentBuilder`.
pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
Self {
handle,
inner: ::std::default::Default::default(),
config_override: ::std::option::Option::None,
}
}
/// Access the GetStaticMap as a reference.
pub fn as_input(&self) -> &crate::operation::get_static_map::builders::GetStaticMapInputBuilder {
&self.inner
}
/// Sends the request and returns the response.
///
/// If an error occurs, an `SdkError` will be returned with additional details that
/// can be matched against.
///
/// By default, any retryable failures will be retried twice. Retry behavior
/// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
/// set when configuring the client.
pub async fn send(
self,
) -> ::std::result::Result<
crate::operation::get_static_map::GetStaticMapOutput,
::aws_smithy_runtime_api::client::result::SdkError<
crate::operation::get_static_map::GetStaticMapError,
::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
>,
> {
let input = self
.inner
.build()
.map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
let runtime_plugins = crate::operation::get_static_map::GetStaticMap::operation_runtime_plugins(
self.handle.runtime_plugins.clone(),
&self.handle.conf,
self.config_override,
);
crate::operation::get_static_map::GetStaticMap::orchestrate(&runtime_plugins, input).await
}
/// Consumes this builder, creating a customizable operation that can be modified before being sent.
pub fn customize(
self,
) -> crate::client::customize::CustomizableOperation<
crate::operation::get_static_map::GetStaticMapOutput,
crate::operation::get_static_map::GetStaticMapError,
Self,
> {
crate::client::customize::CustomizableOperation::new(self)
}
pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
self.set_config_override(::std::option::Option::Some(config_override.into()));
self
}
pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
self.config_override = config_override;
self
}
/// <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>
/// <p>Example: -123.17075,49.26959,-123.08125,49.31429</p>
pub fn bounding_box(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.bounding_box(input.into());
self
}
/// <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>
/// <p>Example: -123.17075,49.26959,-123.08125,49.31429</p>
pub fn set_bounding_box(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_bounding_box(input);
self
}
/// <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>
/// <p>Example: -123.17075,49.26959,-123.08125,49.31429</p>
pub fn get_bounding_box(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_bounding_box()
}
/// <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>
/// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
/// </note>
/// <p>Example: 97.170451,78.039098,99.045536,27.176178</p>
pub fn bounded_positions(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.bounded_positions(input.into());
self
}
/// <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>
/// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
/// </note>
/// <p>Example: 97.170451,78.039098,99.045536,27.176178</p>
pub fn set_bounded_positions(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_bounded_positions(input);
self
}
/// <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>
/// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
/// </note>
/// <p>Example: 97.170451,78.039098,99.045536,27.176178</p>
pub fn get_bounded_positions(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_bounded_positions()
}
/// <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>
/// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
/// </note>
/// <p>Example: 49.295,-123.108</p>
pub fn center(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.center(input.into());
self
}
/// <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>
/// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
/// </note>
/// <p>Example: 49.295,-123.108</p>
pub fn set_center(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_center(input);
self
}
/// <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>
/// <p>Cannot be used with <code>Zoom</code> and or <code>Radius</code></p>
/// </note>
/// <p>Example: 49.295,-123.108</p>
pub fn get_center(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_center()
}
/// <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>
/// <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>
/// <p>Currently it supports the following geometry types: point, line and polygon. It does not support multiPoint , multiLine and multiPolgyon.</p>
/// </note>
pub fn compact_overlay(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.compact_overlay(input.into());
self
}
/// <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>
/// <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>
/// <p>Currently it supports the following geometry types: point, line and polygon. It does not support multiPoint , multiLine and multiPolgyon.</p>
/// </note>
pub fn set_compact_overlay(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_compact_overlay(input);
self
}
/// <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>
/// <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>
/// <p>Currently it supports the following geometry types: point, line and polygon. It does not support multiPoint , multiLine and multiPolgyon.</p>
/// </note>
pub fn get_compact_overlay(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_compact_overlay()
}
/// <p>Takes in a string to draw geometries on the image. The input is a valid GeoJSON collection object.</p>
/// <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>
pub fn geo_json_overlay(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.geo_json_overlay(input.into());
self
}
/// <p>Takes in a string to draw geometries on the image. The input is a valid GeoJSON collection object.</p>
/// <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>
pub fn set_geo_json_overlay(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_geo_json_overlay(input);
self
}
/// <p>Takes in a string to draw geometries on the image. The input is a valid GeoJSON collection object.</p>
/// <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>
pub fn get_geo_json_overlay(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_geo_json_overlay()
}
/// <p>Specifies the height of the map image.</p>
pub fn height(mut self, input: i32) -> Self {
self.inner = self.inner.height(input);
self
}
/// <p>Specifies the height of the map image.</p>
pub fn set_height(mut self, input: ::std::option::Option<i32>) -> Self {
self.inner = self.inner.set_height(input);
self
}
/// <p>Specifies the height of the map image.</p>
pub fn get_height(&self) -> &::std::option::Option<i32> {
self.inner.get_height()
}
/// <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>
pub fn key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.key(input.into());
self
}
/// <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>
pub fn set_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_key(input);
self
}
/// <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>
pub fn get_key(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_key()
}
/// <p>Applies additional space (in pixels) around overlay feature to prevent them from being cut or obscured.</p><note>
/// <p>Value for max and min is determined by:</p>
/// <p>Min: <code>1</code></p>
/// <p>Max: <code>min(height, width)/4</code></p>
/// </note>
/// <p>Example: <code>100</code></p>
pub fn padding(mut self, input: i32) -> Self {
self.inner = self.inner.padding(input);
self
}
/// <p>Applies additional space (in pixels) around overlay feature to prevent them from being cut or obscured.</p><note>
/// <p>Value for max and min is determined by:</p>
/// <p>Min: <code>1</code></p>
/// <p>Max: <code>min(height, width)/4</code></p>
/// </note>
/// <p>Example: <code>100</code></p>
pub fn set_padding(mut self, input: ::std::option::Option<i32>) -> Self {
self.inner = self.inner.set_padding(input);
self
}
/// <p>Applies additional space (in pixels) around overlay feature to prevent them from being cut or obscured.</p><note>
/// <p>Value for max and min is determined by:</p>
/// <p>Min: <code>1</code></p>
/// <p>Max: <code>min(height, width)/4</code></p>
/// </note>
/// <p>Example: <code>100</code></p>
pub fn get_padding(&self) -> &::std::option::Option<i32> {
self.inner.get_padding()
}
/// <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>>= 1</code>.</p>
/// <p>Example: <code>1500</code></p><note>
/// <p>Cannot be used with <code>Zoom</code>.</p>
/// </note>
/// <p><b>Unit</b>: <code>Meters</code></p>
/// <p></p>
pub fn radius(mut self, input: i64) -> Self {
self.inner = self.inner.radius(input);
self
}
/// <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>>= 1</code>.</p>
/// <p>Example: <code>1500</code></p><note>
/// <p>Cannot be used with <code>Zoom</code>.</p>
/// </note>
/// <p><b>Unit</b>: <code>Meters</code></p>
/// <p></p>
pub fn set_radius(mut self, input: ::std::option::Option<i64>) -> Self {
self.inner = self.inner.set_radius(input);
self
}
/// <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>>= 1</code>.</p>
/// <p>Example: <code>1500</code></p><note>
/// <p>Cannot be used with <code>Zoom</code>.</p>
/// </note>
/// <p><b>Unit</b>: <code>Meters</code></p>
/// <p></p>
pub fn get_radius(&self) -> &::std::option::Option<i64> {
self.inner.get_radius()
}
/// <p>The map scaling parameter to size the image, icons, and labels. It follows the pattern of <code>^map(@2x)?$</code>.</p>
/// <p>Example: <code>map, map@2x</code></p>
pub fn file_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.file_name(input.into());
self
}
/// <p>The map scaling parameter to size the image, icons, and labels. It follows the pattern of <code>^map(@2x)?$</code>.</p>
/// <p>Example: <code>map, map@2x</code></p>
pub fn set_file_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_file_name(input);
self
}
/// <p>The map scaling parameter to size the image, icons, and labels. It follows the pattern of <code>^map(@2x)?$</code>.</p>
/// <p>Example: <code>map, map@2x</code></p>
pub fn get_file_name(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_file_name()
}
/// <p>Displays a scale on the bottom right of the map image with the unit specified in the input.</p>
/// <p>Example: <code>KilometersMiles, Miles, Kilometers, MilesKilometers</code></p>
pub fn scale_bar_unit(mut self, input: crate::types::ScaleBarUnit) -> Self {
self.inner = self.inner.scale_bar_unit(input);
self
}
/// <p>Displays a scale on the bottom right of the map image with the unit specified in the input.</p>
/// <p>Example: <code>KilometersMiles, Miles, Kilometers, MilesKilometers</code></p>
pub fn set_scale_bar_unit(mut self, input: ::std::option::Option<crate::types::ScaleBarUnit>) -> Self {
self.inner = self.inner.set_scale_bar_unit(input);
self
}
/// <p>Displays a scale on the bottom right of the map image with the unit specified in the input.</p>
/// <p>Example: <code>KilometersMiles, Miles, Kilometers, MilesKilometers</code></p>
pub fn get_scale_bar_unit(&self) -> &::std::option::Option<crate::types::ScaleBarUnit> {
self.inner.get_scale_bar_unit()
}
/// <p>Style specifies the desired map style for the <code>Style</code> APIs.</p>
pub fn style(mut self, input: crate::types::StaticMapStyle) -> Self {
self.inner = self.inner.style(input);
self
}
/// <p>Style specifies the desired map style for the <code>Style</code> APIs.</p>
pub fn set_style(mut self, input: ::std::option::Option<crate::types::StaticMapStyle>) -> Self {
self.inner = self.inner.set_style(input);
self
}
/// <p>Style specifies the desired map style for the <code>Style</code> APIs.</p>
pub fn get_style(&self) -> &::std::option::Option<crate::types::StaticMapStyle> {
self.inner.get_style()
}
/// <p>Specifies the width of the map image.</p>
pub fn width(mut self, input: i32) -> Self {
self.inner = self.inner.width(input);
self
}
/// <p>Specifies the width of the map image.</p>
pub fn set_width(mut self, input: ::std::option::Option<i32>) -> Self {
self.inner = self.inner.set_width(input);
self
}
/// <p>Specifies the width of the map image.</p>
pub fn get_width(&self) -> &::std::option::Option<i32> {
self.inner.get_width()
}
/// <p>Specifies the zoom level of the map image.</p><note>
/// <p>Cannot be used with <code>Radius</code>.</p>
/// </note>
pub fn zoom(mut self, input: f32) -> Self {
self.inner = self.inner.zoom(input);
self
}
/// <p>Specifies the zoom level of the map image.</p><note>
/// <p>Cannot be used with <code>Radius</code>.</p>
/// </note>
pub fn set_zoom(mut self, input: ::std::option::Option<f32>) -> Self {
self.inner = self.inner.set_zoom(input);
self
}
/// <p>Specifies the zoom level of the map image.</p><note>
/// <p>Cannot be used with <code>Radius</code>.</p>
/// </note>
pub fn get_zoom(&self) -> &::std::option::Option<f32> {
self.inner.get_zoom()
}
}