1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateGeofenceCollection`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`collection_name(impl Into<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::collection_name) / [`set_collection_name(Option<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::set_collection_name):<br>required: **true**<br><p>A custom name for the geofence collection.</p> <p>Requirements:</p> <ul>  <li>   <p>Contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_).</p></li>  <li>   <p>Must be a unique geofence collection name.</p></li>  <li>   <p>No spaces allowed. For example, <code>ExampleGeofenceCollection</code>.</p></li> </ul><br>
    ///   - [`pricing_plan(PricingPlan)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::pricing_plan) / [`set_pricing_plan(Option<PricingPlan>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::set_pricing_plan):<br>required: **false**<br><p>No longer used. If included, the only allowed value is <code>RequestBasedUsage</code>.</p><br>
    ///   - [`pricing_plan_data_source(impl Into<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::pricing_plan_data_source) / [`set_pricing_plan_data_source(Option<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::set_pricing_plan_data_source):<br>required: **false**<br><p>This parameter is no longer used.</p><br>
    ///   - [`description(impl Into<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::set_description):<br>required: **false**<br><p>An optional description for the geofence collection.</p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::set_tags):<br>required: **false**<br><p>Applies one or more tags to the geofence collection. A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them.</p> <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>
    ///   - [`kms_key_id(impl Into<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::kms_key_id) / [`set_kms_key_id(Option<String>)`](crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::set_kms_key_id):<br>required: **false**<br><p>A key identifier for an <a href="https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html">Amazon Web Services KMS customer managed key</a>. Enter a key ID, key ARN, alias name, or alias ARN.</p><br>
    /// - On success, responds with [`CreateGeofenceCollectionOutput`](crate::operation::create_geofence_collection::CreateGeofenceCollectionOutput) with field(s):
    ///   - [`collection_name(String)`](crate::operation::create_geofence_collection::CreateGeofenceCollectionOutput::collection_name): <p>The name for the geofence collection.</p>
    ///   - [`collection_arn(String)`](crate::operation::create_geofence_collection::CreateGeofenceCollectionOutput::collection_arn): <p>The Amazon Resource Name (ARN) for the geofence collection resource. Used when you need to specify a resource across all Amazon Web Services.</p> <ul>  <li>   <p>Format example: <code>arn:aws:geo:region:account-id:geofence-collection/ExampleGeofenceCollection</code></p></li> </ul>
    ///   - [`create_time(DateTime)`](crate::operation::create_geofence_collection::CreateGeofenceCollectionOutput::create_time): <p>The timestamp for when the geofence collection 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>
    /// - On failure, responds with [`SdkError<CreateGeofenceCollectionError>`](crate::operation::create_geofence_collection::CreateGeofenceCollectionError)
    pub fn create_geofence_collection(&self) -> crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder {
        crate::operation::create_geofence_collection::builders::CreateGeofenceCollectionFluentBuilder::new(self.handle.clone())
    }
}