// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateRouteCalculator`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`calculator_name(impl Into<String>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::calculator_name) / [`set_calculator_name(Option<String>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::set_calculator_name):<br>required: **true**<br><p>The name of the route calculator resource.</p> <p>Requirements:</p> <ul> <li> <p>Can use alphanumeric characters (A–Z, a–z, 0–9) , hyphens (-), periods (.), and underscores (_).</p></li> <li> <p>Must be a unique Route calculator resource name.</p></li> <li> <p>No spaces allowed. For example, <code>ExampleRouteCalculator</code>.</p></li> </ul><br>
/// - [`data_source(impl Into<String>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::data_source) / [`set_data_source(Option<String>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::set_data_source):<br>required: **true**<br><p>Specifies the data provider of traffic and road network data.</p><note> <p>This field is case-sensitive. Enter the valid values as shown. For example, entering <code>HERE</code> returns an error.</p> </note> <p>Valid values include:</p> <ul> <li> <p><code>Esri</code> – For additional information about <a href="https://docs.aws.amazon.com/location/latest/developerguide/esri.html">Esri</a>'s coverage in your region of interest, see <a href="https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm">Esri details on street networks and traffic coverage</a>.</p> <p>Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km.</p></li> <li> <p><code>Grab</code> – Grab provides routing functionality for Southeast Asia. For additional information about <a href="https://docs.aws.amazon.com/location/latest/developerguide/grab.html">GrabMaps</a>' coverage, see <a href="https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area">GrabMaps countries and areas covered</a>.</p></li> <li> <p><code>Here</code> – For additional information about <a href="https://docs.aws.amazon.com/location/latest/developerguide/HERE.html">HERE Technologies</a>' coverage in your region of interest, see <a href="https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html">HERE car routing coverage</a> and <a href="https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html">HERE truck routing coverage</a>.</p></li> </ul> <p>For additional information , see <a href="https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html">Data providers</a> on the <i>Amazon Location Service Developer Guide</i>.</p><br>
/// - [`pricing_plan(PricingPlan)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::pricing_plan) / [`set_pricing_plan(Option<PricingPlan>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::set_pricing_plan):<br>required: **false**<br><p>No longer used. If included, the only allowed value is <code>RequestBasedUsage</code>.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::set_description):<br>required: **false**<br><p>The optional description for the route calculator resource.</p><br>
/// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::set_tags):<br>required: **false**<br><p>Applies one or more tags to the route calculator resource. A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them.</p> <ul> <li> <p>For example: { <code>"tag1" : "value1"</code>, <code>"tag2" : "value2"</code>}</p></li> </ul> <p>Format: <code>"key" : "value"</code></p> <p>Restrictions:</p> <ul> <li> <p>Maximum 50 tags per resource</p></li> <li> <p>Each resource tag must be unique with a maximum of one value.</p></li> <li> <p>Maximum key length: 128 Unicode characters in UTF-8</p></li> <li> <p>Maximum value length: 256 Unicode characters in UTF-8</p></li> <li> <p>Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @.</p></li> <li> <p>Cannot use "aws:" as a prefix for a key.</p></li> </ul><br>
/// - On success, responds with [`CreateRouteCalculatorOutput`](crate::operation::create_route_calculator::CreateRouteCalculatorOutput) with field(s):
/// - [`calculator_name(String)`](crate::operation::create_route_calculator::CreateRouteCalculatorOutput::calculator_name): <p>The name of the route calculator resource.</p> <ul> <li> <p>For example, <code>ExampleRouteCalculator</code>.</p></li> </ul>
/// - [`calculator_arn(String)`](crate::operation::create_route_calculator::CreateRouteCalculatorOutput::calculator_arn): <p>The Amazon Resource Name (ARN) for the route calculator resource. Use the ARN when you specify a resource across all Amazon Web Services.</p> <ul> <li> <p>Format example: <code>arn:aws:geo:region:account-id:route-calculator/ExampleCalculator</code></p></li> </ul>
/// - [`create_time(DateTime)`](crate::operation::create_route_calculator::CreateRouteCalculatorOutput::create_time): <p>The timestamp when the route calculator resource was created in <a href="https://www.iso.org/iso-8601-date-and-time-format.html">ISO 8601</a> format: <code>YYYY-MM-DDThh:mm:ss.sssZ</code>.</p> <ul> <li> <p>For example, <code>2020–07-2T12:15:20.000Z+01:00</code></p></li> </ul>
/// - On failure, responds with [`SdkError<CreateRouteCalculatorError>`](crate::operation::create_route_calculator::CreateRouteCalculatorError)
pub fn create_route_calculator(&self) -> crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder {
crate::operation::create_route_calculator::builders::CreateRouteCalculatorFluentBuilder::new(self.handle.clone())
}
}