aws-sdk-iot 1.97.0 → 1.99.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/CHANGELOG.md +13 -1
 - data/VERSION +1 -1
 - data/lib/aws-sdk-iot/client.rb +87 -6
 - data/lib/aws-sdk-iot/client_api.rb +35 -0
 - data/lib/aws-sdk-iot/endpoint_parameters.rb +3 -0
 - data/lib/aws-sdk-iot/endpoint_provider.rb +35 -95
 - data/lib/aws-sdk-iot/types.rb +197 -5438
 - data/lib/aws-sdk-iot.rb +1 -1
 - metadata +2 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 44067f3125ce33aa321e981987eb97ba919ed1638c0367144f9ad24fab9b386a
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 3721a84965df24762a2dddd1406200ea405fd068572de94f243a470c99043121
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: d865713df153f2ce1e3460832f77dadcb50a105f6e4113435c4a1b7082fb2d81d4d9a371e2b8e3bc182908d28d9b3b4a88b74b95f9c98adbf0b7913c4b197902
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 5de11a6806de24d3fe4cf550c190336a1de7a51125aa5a7cd1336961451bcef71dc43e578432b5058c227ab1d4bf04c4c4f49d84d6d2b1cc2046ef3674d0be69
         
     | 
    
        data/CHANGELOG.md
    CHANGED
    
    | 
         @@ -1,6 +1,18 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            Unreleased Changes
         
     | 
| 
       2 
2 
     | 
    
         
             
            ------------------
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
      
 4 
     | 
    
         
            +
            1.99.0 (2023-01-18)
         
     | 
| 
      
 5 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            * Issue - Replace runtime endpoint resolution approach with generated ruby code.
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
            1.98.0 (2022-11-28)
         
     | 
| 
      
 12 
     | 
    
         
            +
            ------------------
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            * Feature - Job scheduling enables the scheduled rollout of a Job with start and end times and a customizable end behavior when end time is reached. This is available for continuous and snapshot jobs. Added support for MQTT5 properties to AWS IoT TopicRule Republish Action.
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
       4 
16 
     | 
    
         
             
            1.97.0 (2022-11-11)
         
     | 
| 
       5 
17 
     | 
    
         
             
            ------------------
         
     | 
| 
       6 
18 
     | 
    
         | 
| 
         @@ -550,4 +562,4 @@ Unreleased Changes 
     | 
|
| 
       550 
562 
     | 
    
         
             
            1.0.0.rc1 (2016-12-05)
         
     | 
| 
       551 
563 
     | 
    
         
             
            ------------------
         
     | 
| 
       552 
564 
     | 
    
         | 
| 
       553 
     | 
    
         
            -
            * Feature - Initial preview release of the `aws-sdk-iot` gem.
         
     | 
| 
      
 565 
     | 
    
         
            +
            * Feature - Initial preview release of the `aws-sdk-iot` gem.
         
     | 
    
        data/VERSION
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            1. 
     | 
| 
      
 1 
     | 
    
         
            +
            1.99.0
         
     | 
    
        data/lib/aws-sdk-iot/client.rb
    CHANGED
    
    | 
         @@ -666,8 +666,8 @@ module Aws::IoT 
     | 
|
| 
       666 
666 
     | 
    
         
             
                end
         
     | 
| 
       667 
667 
     | 
    
         | 
| 
       668 
668 
     | 
    
         
             
                # Attaches the specified principal to the specified thing. A principal
         
     | 
| 
       669 
     | 
    
         
            -
                # can be X.509 certificates,  
     | 
| 
       670 
     | 
    
         
            -
                #  
     | 
| 
      
 669 
     | 
    
         
            +
                # can be X.509 certificates, Amazon Cognito identities or federated
         
     | 
| 
      
 670 
     | 
    
         
            +
                # identities.
         
     | 
| 
       671 
671 
     | 
    
         
             
                #
         
     | 
| 
       672 
672 
     | 
    
         
             
                # Requires permission to access the [AttachThingPrincipal][1] action.
         
     | 
| 
       673 
673 
     | 
    
         
             
                #
         
     | 
| 
         @@ -1793,6 +1793,11 @@ module Aws::IoT 
     | 
|
| 
       1793 
1793 
     | 
    
         
             
                #
         
     | 
| 
       1794 
1794 
     | 
    
         
             
                #    </note>
         
     | 
| 
       1795 
1795 
     | 
    
         
             
                #
         
     | 
| 
      
 1796 
     | 
    
         
            +
                # @option params [Types::SchedulingConfig] :scheduling_config
         
     | 
| 
      
 1797 
     | 
    
         
            +
                #   The configuration that allows you to schedule a job for a future date
         
     | 
| 
      
 1798 
     | 
    
         
            +
                #   and time in addition to specifying the end behavior for each job
         
     | 
| 
      
 1799 
     | 
    
         
            +
                #   execution.
         
     | 
| 
      
 1800 
     | 
    
         
            +
                #
         
     | 
| 
       1796 
1801 
     | 
    
         
             
                # @return [Types::CreateJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         
     | 
| 
       1797 
1802 
     | 
    
         
             
                #
         
     | 
| 
       1798 
1803 
     | 
    
         
             
                #   * {Types::CreateJobResponse#job_arn #job_arn} => String
         
     | 
| 
         @@ -1855,6 +1860,11 @@ module Aws::IoT 
     | 
|
| 
       1855 
1860 
     | 
    
         
             
                #     document_parameters: {
         
     | 
| 
       1856 
1861 
     | 
    
         
             
                #       "ParameterKey" => "ParameterValue",
         
     | 
| 
       1857 
1862 
     | 
    
         
             
                #     },
         
     | 
| 
      
 1863 
     | 
    
         
            +
                #     scheduling_config: {
         
     | 
| 
      
 1864 
     | 
    
         
            +
                #       start_time: "StringDateTime",
         
     | 
| 
      
 1865 
     | 
    
         
            +
                #       end_time: "StringDateTime",
         
     | 
| 
      
 1866 
     | 
    
         
            +
                #       end_behavior: "STOP_ROLLOUT", # accepts STOP_ROLLOUT, CANCEL, FORCE_CANCEL
         
     | 
| 
      
 1867 
     | 
    
         
            +
                #     },
         
     | 
| 
       1858 
1868 
     | 
    
         
             
                #   })
         
     | 
| 
       1859 
1869 
     | 
    
         
             
                #
         
     | 
| 
       1860 
1870 
     | 
    
         
             
                # @example Response structure
         
     | 
| 
         @@ -3213,6 +3223,19 @@ module Aws::IoT 
     | 
|
| 
       3213 
3223 
     | 
    
         
             
                #             role_arn: "AwsArn", # required
         
     | 
| 
       3214 
3224 
     | 
    
         
             
                #             topic: "TopicPattern", # required
         
     | 
| 
       3215 
3225 
     | 
    
         
             
                #             qos: 1,
         
     | 
| 
      
 3226 
     | 
    
         
            +
                #             headers: {
         
     | 
| 
      
 3227 
     | 
    
         
            +
                #               payload_format_indicator: "PayloadFormatIndicator",
         
     | 
| 
      
 3228 
     | 
    
         
            +
                #               content_type: "ContentType",
         
     | 
| 
      
 3229 
     | 
    
         
            +
                #               response_topic: "ResponseTopic",
         
     | 
| 
      
 3230 
     | 
    
         
            +
                #               correlation_data: "CorrelationData",
         
     | 
| 
      
 3231 
     | 
    
         
            +
                #               message_expiry: "MessageExpiry",
         
     | 
| 
      
 3232 
     | 
    
         
            +
                #               user_properties: [
         
     | 
| 
      
 3233 
     | 
    
         
            +
                #                 {
         
     | 
| 
      
 3234 
     | 
    
         
            +
                #                   key: "UserPropertyKey", # required
         
     | 
| 
      
 3235 
     | 
    
         
            +
                #                   value: "UserPropertyValue", # required
         
     | 
| 
      
 3236 
     | 
    
         
            +
                #                 },
         
     | 
| 
      
 3237 
     | 
    
         
            +
                #               ],
         
     | 
| 
      
 3238 
     | 
    
         
            +
                #             },
         
     | 
| 
       3216 
3239 
     | 
    
         
             
                #           },
         
     | 
| 
       3217 
3240 
     | 
    
         
             
                #           s3: {
         
     | 
| 
       3218 
3241 
     | 
    
         
             
                #             role_arn: "AwsArn", # required
         
     | 
| 
         @@ -3402,6 +3425,19 @@ module Aws::IoT 
     | 
|
| 
       3402 
3425 
     | 
    
         
             
                #           role_arn: "AwsArn", # required
         
     | 
| 
       3403 
3426 
     | 
    
         
             
                #           topic: "TopicPattern", # required
         
     | 
| 
       3404 
3427 
     | 
    
         
             
                #           qos: 1,
         
     | 
| 
      
 3428 
     | 
    
         
            +
                #           headers: {
         
     | 
| 
      
 3429 
     | 
    
         
            +
                #             payload_format_indicator: "PayloadFormatIndicator",
         
     | 
| 
      
 3430 
     | 
    
         
            +
                #             content_type: "ContentType",
         
     | 
| 
      
 3431 
     | 
    
         
            +
                #             response_topic: "ResponseTopic",
         
     | 
| 
      
 3432 
     | 
    
         
            +
                #             correlation_data: "CorrelationData",
         
     | 
| 
      
 3433 
     | 
    
         
            +
                #             message_expiry: "MessageExpiry",
         
     | 
| 
      
 3434 
     | 
    
         
            +
                #             user_properties: [
         
     | 
| 
      
 3435 
     | 
    
         
            +
                #               {
         
     | 
| 
      
 3436 
     | 
    
         
            +
                #                 key: "UserPropertyKey", # required
         
     | 
| 
      
 3437 
     | 
    
         
            +
                #                 value: "UserPropertyValue", # required
         
     | 
| 
      
 3438 
     | 
    
         
            +
                #               },
         
     | 
| 
      
 3439 
     | 
    
         
            +
                #             ],
         
     | 
| 
      
 3440 
     | 
    
         
            +
                #           },
         
     | 
| 
       3405 
3441 
     | 
    
         
             
                #         },
         
     | 
| 
       3406 
3442 
     | 
    
         
             
                #         s3: {
         
     | 
| 
       3407 
3443 
     | 
    
         
             
                #           role_arn: "AwsArn", # required
         
     | 
| 
         @@ -5590,7 +5626,7 @@ module Aws::IoT 
     | 
|
| 
       5590 
5626 
     | 
    
         
             
                #   resp.job.job_arn #=> String
         
     | 
| 
       5591 
5627 
     | 
    
         
             
                #   resp.job.job_id #=> String
         
     | 
| 
       5592 
5628 
     | 
    
         
             
                #   resp.job.target_selection #=> String, one of "CONTINUOUS", "SNAPSHOT"
         
     | 
| 
       5593 
     | 
    
         
            -
                #   resp.job.status #=> String, one of "IN_PROGRESS", "CANCELED", "COMPLETED", "DELETION_IN_PROGRESS"
         
     | 
| 
      
 5629 
     | 
    
         
            +
                #   resp.job.status #=> String, one of "IN_PROGRESS", "CANCELED", "COMPLETED", "DELETION_IN_PROGRESS", "SCHEDULED"
         
     | 
| 
       5594 
5630 
     | 
    
         
             
                #   resp.job.force_canceled #=> Boolean
         
     | 
| 
       5595 
5631 
     | 
    
         
             
                #   resp.job.reason_code #=> String
         
     | 
| 
       5596 
5632 
     | 
    
         
             
                #   resp.job.comment #=> String
         
     | 
| 
         @@ -5631,6 +5667,9 @@ module Aws::IoT 
     | 
|
| 
       5631 
5667 
     | 
    
         
             
                #   resp.job.document_parameters #=> Hash
         
     | 
| 
       5632 
5668 
     | 
    
         
             
                #   resp.job.document_parameters["ParameterKey"] #=> String
         
     | 
| 
       5633 
5669 
     | 
    
         
             
                #   resp.job.is_concurrent #=> Boolean
         
     | 
| 
      
 5670 
     | 
    
         
            +
                #   resp.job.scheduling_config.start_time #=> String
         
     | 
| 
      
 5671 
     | 
    
         
            +
                #   resp.job.scheduling_config.end_time #=> String
         
     | 
| 
      
 5672 
     | 
    
         
            +
                #   resp.job.scheduling_config.end_behavior #=> String, one of "STOP_ROLLOUT", "CANCEL", "FORCE_CANCEL"
         
     | 
| 
       5634 
5673 
     | 
    
         
             
                #
         
     | 
| 
       5635 
5674 
     | 
    
         
             
                # @overload describe_job(params = {})
         
     | 
| 
       5636 
5675 
     | 
    
         
             
                # @param [Hash] params ({})
         
     | 
| 
         @@ -7225,6 +7264,14 @@ module Aws::IoT 
     | 
|
| 
       7225 
7264 
     | 
    
         
             
                #   resp.rule.actions[0].republish.role_arn #=> String
         
     | 
| 
       7226 
7265 
     | 
    
         
             
                #   resp.rule.actions[0].republish.topic #=> String
         
     | 
| 
       7227 
7266 
     | 
    
         
             
                #   resp.rule.actions[0].republish.qos #=> Integer
         
     | 
| 
      
 7267 
     | 
    
         
            +
                #   resp.rule.actions[0].republish.headers.payload_format_indicator #=> String
         
     | 
| 
      
 7268 
     | 
    
         
            +
                #   resp.rule.actions[0].republish.headers.content_type #=> String
         
     | 
| 
      
 7269 
     | 
    
         
            +
                #   resp.rule.actions[0].republish.headers.response_topic #=> String
         
     | 
| 
      
 7270 
     | 
    
         
            +
                #   resp.rule.actions[0].republish.headers.correlation_data #=> String
         
     | 
| 
      
 7271 
     | 
    
         
            +
                #   resp.rule.actions[0].republish.headers.message_expiry #=> String
         
     | 
| 
      
 7272 
     | 
    
         
            +
                #   resp.rule.actions[0].republish.headers.user_properties #=> Array
         
     | 
| 
      
 7273 
     | 
    
         
            +
                #   resp.rule.actions[0].republish.headers.user_properties[0].key #=> String
         
     | 
| 
      
 7274 
     | 
    
         
            +
                #   resp.rule.actions[0].republish.headers.user_properties[0].value #=> String
         
     | 
| 
       7228 
7275 
     | 
    
         
             
                #   resp.rule.actions[0].s3.role_arn #=> String
         
     | 
| 
       7229 
7276 
     | 
    
         
             
                #   resp.rule.actions[0].s3.bucket_name #=> String
         
     | 
| 
       7230 
7277 
     | 
    
         
             
                #   resp.rule.actions[0].s3.key #=> String
         
     | 
| 
         @@ -7338,6 +7385,14 @@ module Aws::IoT 
     | 
|
| 
       7338 
7385 
     | 
    
         
             
                #   resp.rule.error_action.republish.role_arn #=> String
         
     | 
| 
       7339 
7386 
     | 
    
         
             
                #   resp.rule.error_action.republish.topic #=> String
         
     | 
| 
       7340 
7387 
     | 
    
         
             
                #   resp.rule.error_action.republish.qos #=> Integer
         
     | 
| 
      
 7388 
     | 
    
         
            +
                #   resp.rule.error_action.republish.headers.payload_format_indicator #=> String
         
     | 
| 
      
 7389 
     | 
    
         
            +
                #   resp.rule.error_action.republish.headers.content_type #=> String
         
     | 
| 
      
 7390 
     | 
    
         
            +
                #   resp.rule.error_action.republish.headers.response_topic #=> String
         
     | 
| 
      
 7391 
     | 
    
         
            +
                #   resp.rule.error_action.republish.headers.correlation_data #=> String
         
     | 
| 
      
 7392 
     | 
    
         
            +
                #   resp.rule.error_action.republish.headers.message_expiry #=> String
         
     | 
| 
      
 7393 
     | 
    
         
            +
                #   resp.rule.error_action.republish.headers.user_properties #=> Array
         
     | 
| 
      
 7394 
     | 
    
         
            +
                #   resp.rule.error_action.republish.headers.user_properties[0].key #=> String
         
     | 
| 
      
 7395 
     | 
    
         
            +
                #   resp.rule.error_action.republish.headers.user_properties[0].value #=> String
         
     | 
| 
       7341 
7396 
     | 
    
         
             
                #   resp.rule.error_action.s3.role_arn #=> String
         
     | 
| 
       7342 
7397 
     | 
    
         
             
                #   resp.rule.error_action.s3.bucket_name #=> String
         
     | 
| 
       7343 
7398 
     | 
    
         
             
                #   resp.rule.error_action.s3.key #=> String
         
     | 
| 
         @@ -8964,7 +9019,7 @@ module Aws::IoT 
     | 
|
| 
       8964 
9019 
     | 
    
         
             
                # @example Request syntax with placeholder values
         
     | 
| 
       8965 
9020 
     | 
    
         
             
                #
         
     | 
| 
       8966 
9021 
     | 
    
         
             
                #   resp = client.list_jobs({
         
     | 
| 
       8967 
     | 
    
         
            -
                #     status: "IN_PROGRESS", # accepts IN_PROGRESS, CANCELED, COMPLETED, DELETION_IN_PROGRESS
         
     | 
| 
      
 9022 
     | 
    
         
            +
                #     status: "IN_PROGRESS", # accepts IN_PROGRESS, CANCELED, COMPLETED, DELETION_IN_PROGRESS, SCHEDULED
         
     | 
| 
       8968 
9023 
     | 
    
         
             
                #     target_selection: "CONTINUOUS", # accepts CONTINUOUS, SNAPSHOT
         
     | 
| 
       8969 
9024 
     | 
    
         
             
                #     max_results: 1,
         
     | 
| 
       8970 
9025 
     | 
    
         
             
                #     next_token: "NextToken",
         
     | 
| 
         @@ -8980,7 +9035,7 @@ module Aws::IoT 
     | 
|
| 
       8980 
9035 
     | 
    
         
             
                #   resp.jobs[0].job_id #=> String
         
     | 
| 
       8981 
9036 
     | 
    
         
             
                #   resp.jobs[0].thing_group_id #=> String
         
     | 
| 
       8982 
9037 
     | 
    
         
             
                #   resp.jobs[0].target_selection #=> String, one of "CONTINUOUS", "SNAPSHOT"
         
     | 
| 
       8983 
     | 
    
         
            -
                #   resp.jobs[0].status #=> String, one of "IN_PROGRESS", "CANCELED", "COMPLETED", "DELETION_IN_PROGRESS"
         
     | 
| 
      
 9038 
     | 
    
         
            +
                #   resp.jobs[0].status #=> String, one of "IN_PROGRESS", "CANCELED", "COMPLETED", "DELETION_IN_PROGRESS", "SCHEDULED"
         
     | 
| 
       8984 
9039 
     | 
    
         
             
                #   resp.jobs[0].created_at #=> Time
         
     | 
| 
       8985 
9040 
     | 
    
         
             
                #   resp.jobs[0].last_updated_at #=> Time
         
     | 
| 
       8986 
9041 
     | 
    
         
             
                #   resp.jobs[0].completed_at #=> Time
         
     | 
| 
         @@ -11306,6 +11361,19 @@ module Aws::IoT 
     | 
|
| 
       11306 
11361 
     | 
    
         
             
                #             role_arn: "AwsArn", # required
         
     | 
| 
       11307 
11362 
     | 
    
         
             
                #             topic: "TopicPattern", # required
         
     | 
| 
       11308 
11363 
     | 
    
         
             
                #             qos: 1,
         
     | 
| 
      
 11364 
     | 
    
         
            +
                #             headers: {
         
     | 
| 
      
 11365 
     | 
    
         
            +
                #               payload_format_indicator: "PayloadFormatIndicator",
         
     | 
| 
      
 11366 
     | 
    
         
            +
                #               content_type: "ContentType",
         
     | 
| 
      
 11367 
     | 
    
         
            +
                #               response_topic: "ResponseTopic",
         
     | 
| 
      
 11368 
     | 
    
         
            +
                #               correlation_data: "CorrelationData",
         
     | 
| 
      
 11369 
     | 
    
         
            +
                #               message_expiry: "MessageExpiry",
         
     | 
| 
      
 11370 
     | 
    
         
            +
                #               user_properties: [
         
     | 
| 
      
 11371 
     | 
    
         
            +
                #                 {
         
     | 
| 
      
 11372 
     | 
    
         
            +
                #                   key: "UserPropertyKey", # required
         
     | 
| 
      
 11373 
     | 
    
         
            +
                #                   value: "UserPropertyValue", # required
         
     | 
| 
      
 11374 
     | 
    
         
            +
                #                 },
         
     | 
| 
      
 11375 
     | 
    
         
            +
                #               ],
         
     | 
| 
      
 11376 
     | 
    
         
            +
                #             },
         
     | 
| 
       11309 
11377 
     | 
    
         
             
                #           },
         
     | 
| 
       11310 
11378 
     | 
    
         
             
                #           s3: {
         
     | 
| 
       11311 
11379 
     | 
    
         
             
                #             role_arn: "AwsArn", # required
         
     | 
| 
         @@ -11495,6 +11563,19 @@ module Aws::IoT 
     | 
|
| 
       11495 
11563 
     | 
    
         
             
                #           role_arn: "AwsArn", # required
         
     | 
| 
       11496 
11564 
     | 
    
         
             
                #           topic: "TopicPattern", # required
         
     | 
| 
       11497 
11565 
     | 
    
         
             
                #           qos: 1,
         
     | 
| 
      
 11566 
     | 
    
         
            +
                #           headers: {
         
     | 
| 
      
 11567 
     | 
    
         
            +
                #             payload_format_indicator: "PayloadFormatIndicator",
         
     | 
| 
      
 11568 
     | 
    
         
            +
                #             content_type: "ContentType",
         
     | 
| 
      
 11569 
     | 
    
         
            +
                #             response_topic: "ResponseTopic",
         
     | 
| 
      
 11570 
     | 
    
         
            +
                #             correlation_data: "CorrelationData",
         
     | 
| 
      
 11571 
     | 
    
         
            +
                #             message_expiry: "MessageExpiry",
         
     | 
| 
      
 11572 
     | 
    
         
            +
                #             user_properties: [
         
     | 
| 
      
 11573 
     | 
    
         
            +
                #               {
         
     | 
| 
      
 11574 
     | 
    
         
            +
                #                 key: "UserPropertyKey", # required
         
     | 
| 
      
 11575 
     | 
    
         
            +
                #                 value: "UserPropertyValue", # required
         
     | 
| 
      
 11576 
     | 
    
         
            +
                #               },
         
     | 
| 
      
 11577 
     | 
    
         
            +
                #             ],
         
     | 
| 
      
 11578 
     | 
    
         
            +
                #           },
         
     | 
| 
       11498 
11579 
     | 
    
         
             
                #         },
         
     | 
| 
       11499 
11580 
     | 
    
         
             
                #         s3: {
         
     | 
| 
       11500 
11581 
     | 
    
         
             
                #           role_arn: "AwsArn", # required
         
     | 
| 
         @@ -13980,7 +14061,7 @@ module Aws::IoT 
     | 
|
| 
       13980 
14061 
     | 
    
         
             
                    params: params,
         
     | 
| 
       13981 
14062 
     | 
    
         
             
                    config: config)
         
     | 
| 
       13982 
14063 
     | 
    
         
             
                  context[:gem_name] = 'aws-sdk-iot'
         
     | 
| 
       13983 
     | 
    
         
            -
                  context[:gem_version] = '1. 
     | 
| 
      
 14064 
     | 
    
         
            +
                  context[:gem_version] = '1.99.0'
         
     | 
| 
       13984 
14065 
     | 
    
         
             
                  Seahorse::Client::Request.new(handlers, context)
         
     | 
| 
       13985 
14066 
     | 
    
         
             
                end
         
     | 
| 
       13986 
14067 
     | 
    
         | 
| 
         @@ -232,6 +232,8 @@ module Aws::IoT 
     | 
|
| 
       232 
232 
     | 
    
         
             
                ConnectivityTimestamp = Shapes::IntegerShape.new(name: 'ConnectivityTimestamp')
         
     | 
| 
       233 
233 
     | 
    
         
             
                ConsecutiveDatapointsToAlarm = Shapes::IntegerShape.new(name: 'ConsecutiveDatapointsToAlarm')
         
     | 
| 
       234 
234 
     | 
    
         
             
                ConsecutiveDatapointsToClear = Shapes::IntegerShape.new(name: 'ConsecutiveDatapointsToClear')
         
     | 
| 
      
 235 
     | 
    
         
            +
                ContentType = Shapes::StringShape.new(name: 'ContentType')
         
     | 
| 
      
 236 
     | 
    
         
            +
                CorrelationData = Shapes::StringShape.new(name: 'CorrelationData')
         
     | 
| 
       235 
237 
     | 
    
         
             
                Count = Shapes::IntegerShape.new(name: 'Count')
         
     | 
| 
       236 
238 
     | 
    
         
             
                CreateAuditSuppressionRequest = Shapes::StructureShape.new(name: 'CreateAuditSuppressionRequest')
         
     | 
| 
       237 
239 
     | 
    
         
             
                CreateAuditSuppressionResponse = Shapes::StructureShape.new(name: 'CreateAuditSuppressionResponse')
         
     | 
| 
         @@ -625,6 +627,7 @@ module Aws::IoT 
     | 
|
| 
       625 
627 
     | 
    
         
             
                JobDescription = Shapes::StringShape.new(name: 'JobDescription')
         
     | 
| 
       626 
628 
     | 
    
         
             
                JobDocument = Shapes::StringShape.new(name: 'JobDocument')
         
     | 
| 
       627 
629 
     | 
    
         
             
                JobDocumentSource = Shapes::StringShape.new(name: 'JobDocumentSource')
         
     | 
| 
      
 630 
     | 
    
         
            +
                JobEndBehavior = Shapes::StringShape.new(name: 'JobEndBehavior')
         
     | 
| 
       628 
631 
     | 
    
         
             
                JobExecution = Shapes::StructureShape.new(name: 'JobExecution')
         
     | 
| 
       629 
632 
     | 
    
         
             
                JobExecutionFailureType = Shapes::StringShape.new(name: 'JobExecutionFailureType')
         
     | 
| 
       630 
633 
     | 
    
         
             
                JobExecutionStatus = Shapes::StringShape.new(name: 'JobExecutionStatus')
         
     | 
| 
         @@ -797,6 +800,7 @@ module Aws::IoT 
     | 
|
| 
       797 
800 
     | 
    
         
             
                Maximum = Shapes::FloatShape.new(name: 'Maximum')
         
     | 
| 
       798 
801 
     | 
    
         
             
                MaximumPerMinute = Shapes::IntegerShape.new(name: 'MaximumPerMinute')
         
     | 
| 
       799 
802 
     | 
    
         
             
                Message = Shapes::StringShape.new(name: 'Message')
         
     | 
| 
      
 803 
     | 
    
         
            +
                MessageExpiry = Shapes::StringShape.new(name: 'MessageExpiry')
         
     | 
| 
       800 
804 
     | 
    
         
             
                MessageFormat = Shapes::StringShape.new(name: 'MessageFormat')
         
     | 
| 
       801 
805 
     | 
    
         
             
                MessageId = Shapes::StringShape.new(name: 'MessageId')
         
     | 
| 
       802 
806 
     | 
    
         
             
                MetricDatum = Shapes::StructureShape.new(name: 'MetricDatum')
         
     | 
| 
         @@ -824,6 +828,7 @@ module Aws::IoT 
     | 
|
| 
       824 
828 
     | 
    
         
             
                ModelStatus = Shapes::StringShape.new(name: 'ModelStatus')
         
     | 
| 
       825 
829 
     | 
    
         
             
                MqttClientId = Shapes::StringShape.new(name: 'MqttClientId')
         
     | 
| 
       826 
830 
     | 
    
         
             
                MqttContext = Shapes::StructureShape.new(name: 'MqttContext')
         
     | 
| 
      
 831 
     | 
    
         
            +
                MqttHeaders = Shapes::StructureShape.new(name: 'MqttHeaders')
         
     | 
| 
       827 
832 
     | 
    
         
             
                MqttPassword = Shapes::BlobShape.new(name: 'MqttPassword')
         
     | 
| 
       828 
833 
     | 
    
         
             
                MqttUsername = Shapes::StringShape.new(name: 'MqttUsername')
         
     | 
| 
       829 
834 
     | 
    
         
             
                NamedShadowIndexingMode = Shapes::StringShape.new(name: 'NamedShadowIndexingMode')
         
     | 
| 
         @@ -864,6 +869,7 @@ module Aws::IoT 
     | 
|
| 
       864 
869 
     | 
    
         
             
                Parameters = Shapes::MapShape.new(name: 'Parameters')
         
     | 
| 
       865 
870 
     | 
    
         
             
                PartitionKey = Shapes::StringShape.new(name: 'PartitionKey')
         
     | 
| 
       866 
871 
     | 
    
         
             
                PayloadField = Shapes::StringShape.new(name: 'PayloadField')
         
     | 
| 
      
 872 
     | 
    
         
            +
                PayloadFormatIndicator = Shapes::StringShape.new(name: 'PayloadFormatIndicator')
         
     | 
| 
       867 
873 
     | 
    
         
             
                PayloadVersion = Shapes::StringShape.new(name: 'PayloadVersion')
         
     | 
| 
       868 
874 
     | 
    
         
             
                Percent = Shapes::FloatShape.new(name: 'Percent')
         
     | 
| 
       869 
875 
     | 
    
         
             
                PercentList = Shapes::ListShape.new(name: 'PercentList')
         
     | 
| 
         @@ -971,6 +977,7 @@ module Aws::IoT 
     | 
|
| 
       971 
977 
     | 
    
         
             
                ResourceRegistrationFailureException = Shapes::StructureShape.new(name: 'ResourceRegistrationFailureException')
         
     | 
| 
       972 
978 
     | 
    
         
             
                ResourceType = Shapes::StringShape.new(name: 'ResourceType')
         
     | 
| 
       973 
979 
     | 
    
         
             
                Resources = Shapes::ListShape.new(name: 'Resources')
         
     | 
| 
      
 980 
     | 
    
         
            +
                ResponseTopic = Shapes::StringShape.new(name: 'ResponseTopic')
         
     | 
| 
       974 
981 
     | 
    
         
             
                RetryAttempt = Shapes::IntegerShape.new(name: 'RetryAttempt')
         
     | 
| 
       975 
982 
     | 
    
         
             
                RetryCriteria = Shapes::StructureShape.new(name: 'RetryCriteria')
         
     | 
| 
       976 
983 
     | 
    
         
             
                RetryCriteriaList = Shapes::ListShape.new(name: 'RetryCriteriaList')
         
     | 
| 
         @@ -999,6 +1006,7 @@ module Aws::IoT 
     | 
|
| 
       999 
1006 
     | 
    
         
             
                ScheduledAuditMetadata = Shapes::StructureShape.new(name: 'ScheduledAuditMetadata')
         
     | 
| 
       1000 
1007 
     | 
    
         
             
                ScheduledAuditMetadataList = Shapes::ListShape.new(name: 'ScheduledAuditMetadataList')
         
     | 
| 
       1001 
1008 
     | 
    
         
             
                ScheduledAuditName = Shapes::StringShape.new(name: 'ScheduledAuditName')
         
     | 
| 
      
 1009 
     | 
    
         
            +
                SchedulingConfig = Shapes::StructureShape.new(name: 'SchedulingConfig')
         
     | 
| 
       1002 
1010 
     | 
    
         
             
                SearchIndexRequest = Shapes::StructureShape.new(name: 'SearchIndexRequest')
         
     | 
| 
       1003 
1011 
     | 
    
         
             
                SearchIndexResponse = Shapes::StructureShape.new(name: 'SearchIndexResponse')
         
     | 
| 
       1004 
1012 
     | 
    
         
             
                SearchableAttributes = Shapes::ListShape.new(name: 'SearchableAttributes')
         
     | 
| 
         @@ -1078,6 +1086,7 @@ module Aws::IoT 
     | 
|
| 
       1078 
1086 
     | 
    
         
             
                StreamVersion = Shapes::IntegerShape.new(name: 'StreamVersion')
         
     | 
| 
       1079 
1087 
     | 
    
         
             
                StreamsSummary = Shapes::ListShape.new(name: 'StreamsSummary')
         
     | 
| 
       1080 
1088 
     | 
    
         
             
                String = Shapes::StringShape.new(name: 'String')
         
     | 
| 
      
 1089 
     | 
    
         
            +
                StringDateTime = Shapes::StringShape.new(name: 'StringDateTime')
         
     | 
| 
       1081 
1090 
     | 
    
         
             
                StringList = Shapes::ListShape.new(name: 'StringList')
         
     | 
| 
       1082 
1091 
     | 
    
         
             
                StringMap = Shapes::MapShape.new(name: 'StringMap')
         
     | 
| 
       1083 
1092 
     | 
    
         
             
                SubnetId = Shapes::StringShape.new(name: 'SubnetId')
         
     | 
| 
         @@ -1246,6 +1255,10 @@ module Aws::IoT 
     | 
|
| 
       1246 
1255 
     | 
    
         
             
                UpdateTopicRuleDestinationResponse = Shapes::StructureShape.new(name: 'UpdateTopicRuleDestinationResponse')
         
     | 
| 
       1247 
1256 
     | 
    
         
             
                Url = Shapes::StringShape.new(name: 'Url')
         
     | 
| 
       1248 
1257 
     | 
    
         
             
                UseBase64 = Shapes::BooleanShape.new(name: 'UseBase64')
         
     | 
| 
      
 1258 
     | 
    
         
            +
                UserProperties = Shapes::ListShape.new(name: 'UserProperties')
         
     | 
| 
      
 1259 
     | 
    
         
            +
                UserProperty = Shapes::StructureShape.new(name: 'UserProperty')
         
     | 
| 
      
 1260 
     | 
    
         
            +
                UserPropertyKey = Shapes::StringShape.new(name: 'UserPropertyKey')
         
     | 
| 
      
 1261 
     | 
    
         
            +
                UserPropertyValue = Shapes::StringShape.new(name: 'UserPropertyValue')
         
     | 
| 
       1249 
1262 
     | 
    
         
             
                Valid = Shapes::BooleanShape.new(name: 'Valid')
         
     | 
| 
       1250 
1263 
     | 
    
         
             
                ValidateSecurityProfileBehaviorsRequest = Shapes::StructureShape.new(name: 'ValidateSecurityProfileBehaviorsRequest')
         
     | 
| 
       1251 
1264 
     | 
    
         
             
                ValidateSecurityProfileBehaviorsResponse = Shapes::StructureShape.new(name: 'ValidateSecurityProfileBehaviorsResponse')
         
     | 
| 
         @@ -1911,6 +1924,7 @@ module Aws::IoT 
     | 
|
| 
       1911 
1924 
     | 
    
         
             
                CreateJobRequest.add_member(:job_template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "jobTemplateArn"))
         
     | 
| 
       1912 
1925 
     | 
    
         
             
                CreateJobRequest.add_member(:job_executions_retry_config, Shapes::ShapeRef.new(shape: JobExecutionsRetryConfig, location_name: "jobExecutionsRetryConfig"))
         
     | 
| 
       1913 
1926 
     | 
    
         
             
                CreateJobRequest.add_member(:document_parameters, Shapes::ShapeRef.new(shape: ParameterMap, location_name: "documentParameters"))
         
     | 
| 
      
 1927 
     | 
    
         
            +
                CreateJobRequest.add_member(:scheduling_config, Shapes::ShapeRef.new(shape: SchedulingConfig, location_name: "schedulingConfig"))
         
     | 
| 
       1914 
1928 
     | 
    
         
             
                CreateJobRequest.struct_class = Types::CreateJobRequest
         
     | 
| 
       1915 
1929 
     | 
    
         | 
| 
       1916 
1930 
     | 
    
         
             
                CreateJobResponse.add_member(:job_arn, Shapes::ShapeRef.new(shape: JobArn, location_name: "jobArn"))
         
     | 
| 
         @@ -3048,6 +3062,7 @@ module Aws::IoT 
     | 
|
| 
       3048 
3062 
     | 
    
         
             
                Job.add_member(:job_executions_retry_config, Shapes::ShapeRef.new(shape: JobExecutionsRetryConfig, location_name: "jobExecutionsRetryConfig"))
         
     | 
| 
       3049 
3063 
     | 
    
         
             
                Job.add_member(:document_parameters, Shapes::ShapeRef.new(shape: ParameterMap, location_name: "documentParameters"))
         
     | 
| 
       3050 
3064 
     | 
    
         
             
                Job.add_member(:is_concurrent, Shapes::ShapeRef.new(shape: BooleanWrapperObject, location_name: "isConcurrent"))
         
     | 
| 
      
 3065 
     | 
    
         
            +
                Job.add_member(:scheduling_config, Shapes::ShapeRef.new(shape: SchedulingConfig, location_name: "schedulingConfig"))
         
     | 
| 
       3051 
3066 
     | 
    
         
             
                Job.struct_class = Types::Job
         
     | 
| 
       3052 
3067 
     | 
    
         | 
| 
       3053 
3068 
     | 
    
         
             
                JobExecution.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
         
     | 
| 
         @@ -3808,6 +3823,14 @@ module Aws::IoT 
     | 
|
| 
       3808 
3823 
     | 
    
         
             
                MqttContext.add_member(:client_id, Shapes::ShapeRef.new(shape: MqttClientId, location_name: "clientId"))
         
     | 
| 
       3809 
3824 
     | 
    
         
             
                MqttContext.struct_class = Types::MqttContext
         
     | 
| 
       3810 
3825 
     | 
    
         | 
| 
      
 3826 
     | 
    
         
            +
                MqttHeaders.add_member(:payload_format_indicator, Shapes::ShapeRef.new(shape: PayloadFormatIndicator, location_name: "payloadFormatIndicator"))
         
     | 
| 
      
 3827 
     | 
    
         
            +
                MqttHeaders.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location_name: "contentType"))
         
     | 
| 
      
 3828 
     | 
    
         
            +
                MqttHeaders.add_member(:response_topic, Shapes::ShapeRef.new(shape: ResponseTopic, location_name: "responseTopic"))
         
     | 
| 
      
 3829 
     | 
    
         
            +
                MqttHeaders.add_member(:correlation_data, Shapes::ShapeRef.new(shape: CorrelationData, location_name: "correlationData"))
         
     | 
| 
      
 3830 
     | 
    
         
            +
                MqttHeaders.add_member(:message_expiry, Shapes::ShapeRef.new(shape: MessageExpiry, location_name: "messageExpiry"))
         
     | 
| 
      
 3831 
     | 
    
         
            +
                MqttHeaders.add_member(:user_properties, Shapes::ShapeRef.new(shape: UserProperties, location_name: "userProperties"))
         
     | 
| 
      
 3832 
     | 
    
         
            +
                MqttHeaders.struct_class = Types::MqttHeaders
         
     | 
| 
      
 3833 
     | 
    
         
            +
             
     | 
| 
       3811 
3834 
     | 
    
         
             
                NamedShadowNamesFilter.member = Shapes::ShapeRef.new(shape: ShadowName)
         
     | 
| 
       3812 
3835 
     | 
    
         | 
| 
       3813 
3836 
     | 
    
         
             
                NonCompliantResource.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "resourceType"))
         
     | 
| 
         @@ -4060,6 +4083,7 @@ module Aws::IoT 
     | 
|
| 
       4060 
4083 
     | 
    
         
             
                RepublishAction.add_member(:role_arn, Shapes::ShapeRef.new(shape: AwsArn, required: true, location_name: "roleArn"))
         
     | 
| 
       4061 
4084 
     | 
    
         
             
                RepublishAction.add_member(:topic, Shapes::ShapeRef.new(shape: TopicPattern, required: true, location_name: "topic"))
         
     | 
| 
       4062 
4085 
     | 
    
         
             
                RepublishAction.add_member(:qos, Shapes::ShapeRef.new(shape: Qos, location_name: "qos"))
         
     | 
| 
      
 4086 
     | 
    
         
            +
                RepublishAction.add_member(:headers, Shapes::ShapeRef.new(shape: MqttHeaders, location_name: "headers"))
         
     | 
| 
       4063 
4087 
     | 
    
         
             
                RepublishAction.struct_class = Types::RepublishAction
         
     | 
| 
       4064 
4088 
     | 
    
         | 
| 
       4065 
4089 
     | 
    
         
             
                ResourceAlreadyExistsException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
         
     | 
| 
         @@ -4137,6 +4161,11 @@ module Aws::IoT 
     | 
|
| 
       4137 
4161 
     | 
    
         | 
| 
       4138 
4162 
     | 
    
         
             
                ScheduledAuditMetadataList.member = Shapes::ShapeRef.new(shape: ScheduledAuditMetadata)
         
     | 
| 
       4139 
4163 
     | 
    
         | 
| 
      
 4164 
     | 
    
         
            +
                SchedulingConfig.add_member(:start_time, Shapes::ShapeRef.new(shape: StringDateTime, location_name: "startTime"))
         
     | 
| 
      
 4165 
     | 
    
         
            +
                SchedulingConfig.add_member(:end_time, Shapes::ShapeRef.new(shape: StringDateTime, location_name: "endTime"))
         
     | 
| 
      
 4166 
     | 
    
         
            +
                SchedulingConfig.add_member(:end_behavior, Shapes::ShapeRef.new(shape: JobEndBehavior, location_name: "endBehavior"))
         
     | 
| 
      
 4167 
     | 
    
         
            +
                SchedulingConfig.struct_class = Types::SchedulingConfig
         
     | 
| 
      
 4168 
     | 
    
         
            +
             
     | 
| 
       4140 
4169 
     | 
    
         
             
                SearchIndexRequest.add_member(:index_name, Shapes::ShapeRef.new(shape: IndexName, location_name: "indexName"))
         
     | 
| 
       4141 
4170 
     | 
    
         
             
                SearchIndexRequest.add_member(:query_string, Shapes::ShapeRef.new(shape: QueryString, required: true, location_name: "queryString"))
         
     | 
| 
       4142 
4171 
     | 
    
         
             
                SearchIndexRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
         
     | 
| 
         @@ -4828,6 +4857,12 @@ module Aws::IoT 
     | 
|
| 
       4828 
4857 
     | 
    
         | 
| 
       4829 
4858 
     | 
    
         
             
                UpdateTopicRuleDestinationResponse.struct_class = Types::UpdateTopicRuleDestinationResponse
         
     | 
| 
       4830 
4859 
     | 
    
         | 
| 
      
 4860 
     | 
    
         
            +
                UserProperties.member = Shapes::ShapeRef.new(shape: UserProperty)
         
     | 
| 
      
 4861 
     | 
    
         
            +
             
     | 
| 
      
 4862 
     | 
    
         
            +
                UserProperty.add_member(:key, Shapes::ShapeRef.new(shape: UserPropertyKey, required: true, location_name: "key"))
         
     | 
| 
      
 4863 
     | 
    
         
            +
                UserProperty.add_member(:value, Shapes::ShapeRef.new(shape: UserPropertyValue, required: true, location_name: "value"))
         
     | 
| 
      
 4864 
     | 
    
         
            +
                UserProperty.struct_class = Types::UserProperty
         
     | 
| 
      
 4865 
     | 
    
         
            +
             
     | 
| 
       4831 
4866 
     | 
    
         
             
                ValidateSecurityProfileBehaviorsRequest.add_member(:behaviors, Shapes::ShapeRef.new(shape: Behaviors, required: true, location_name: "behaviors"))
         
     | 
| 
       4832 
4867 
     | 
    
         
             
                ValidateSecurityProfileBehaviorsRequest.struct_class = Types::ValidateSecurityProfileBehaviorsRequest
         
     | 
| 
       4833 
4868 
     | 
    
         | 
| 
         @@ -50,6 +50,9 @@ module Aws::IoT 
     | 
|
| 
       50 
50 
     | 
    
         | 
| 
       51 
51 
     | 
    
         
             
                def initialize(options = {})
         
     | 
| 
       52 
52 
     | 
    
         
             
                  self[:region] = options[:region]
         
     | 
| 
      
 53 
     | 
    
         
            +
                  if self[:region].nil?
         
     | 
| 
      
 54 
     | 
    
         
            +
                    raise ArgumentError, "Missing required EndpointParameter: :region"
         
     | 
| 
      
 55 
     | 
    
         
            +
                  end
         
     | 
| 
       53 
56 
     | 
    
         
             
                  self[:use_dual_stack] = options[:use_dual_stack]
         
     | 
| 
       54 
57 
     | 
    
         
             
                  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
         
     | 
| 
       55 
58 
     | 
    
         
             
                  if self[:use_dual_stack].nil?
         
     | 
| 
         @@ -9,103 +9,43 @@ 
     | 
|
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
            module Aws::IoT
         
     | 
| 
       11 
11 
     | 
    
         
             
              class EndpointProvider
         
     | 
| 
       12 
     | 
    
         
            -
                def  
     | 
| 
       13 
     | 
    
         
            -
                   
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
             
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
                       
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
      
 12 
     | 
    
         
            +
                def resolve_endpoint(parameters)
         
     | 
| 
      
 13 
     | 
    
         
            +
                  region = parameters.region
         
     | 
| 
      
 14 
     | 
    
         
            +
                  use_dual_stack = parameters.use_dual_stack
         
     | 
| 
      
 15 
     | 
    
         
            +
                  use_fips = parameters.use_fips
         
     | 
| 
      
 16 
     | 
    
         
            +
                  endpoint = parameters.endpoint
         
     | 
| 
      
 17 
     | 
    
         
            +
                  if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
         
     | 
| 
      
 18 
     | 
    
         
            +
                    if Aws::Endpoints::Matchers.set?(endpoint) && (url = Aws::Endpoints::Matchers.parse_url(endpoint))
         
     | 
| 
      
 19 
     | 
    
         
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
         
     | 
| 
      
 20 
     | 
    
         
            +
                        raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
         
     | 
| 
      
 21 
     | 
    
         
            +
                      end
         
     | 
| 
      
 22 
     | 
    
         
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         
     | 
| 
      
 23 
     | 
    
         
            +
                        raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
         
     | 
| 
      
 24 
     | 
    
         
            +
                      end
         
     | 
| 
      
 25 
     | 
    
         
            +
                      return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
         
     | 
| 
      
 26 
     | 
    
         
            +
                    end
         
     | 
| 
      
 27 
     | 
    
         
            +
                    if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         
     | 
| 
      
 28 
     | 
    
         
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
         
     | 
| 
      
 29 
     | 
    
         
            +
                        return Aws::Endpoints::Endpoint.new(url: "https://iot-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
         
     | 
| 
      
 30 
     | 
    
         
            +
                      end
         
     | 
| 
      
 31 
     | 
    
         
            +
                      raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
         
     | 
| 
      
 32 
     | 
    
         
            +
                    end
         
     | 
| 
      
 33 
     | 
    
         
            +
                    if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
         
     | 
| 
      
 34 
     | 
    
         
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
         
     | 
| 
      
 35 
     | 
    
         
            +
                        return Aws::Endpoints::Endpoint.new(url: "https://iot-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
         
     | 
| 
      
 36 
     | 
    
         
            +
                      end
         
     | 
| 
      
 37 
     | 
    
         
            +
                      raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
         
     | 
| 
      
 38 
     | 
    
         
            +
                    end
         
     | 
| 
      
 39 
     | 
    
         
            +
                    if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         
     | 
| 
      
 40 
     | 
    
         
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
         
     | 
| 
      
 41 
     | 
    
         
            +
                        return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
         
     | 
| 
      
 42 
     | 
    
         
            +
                      end
         
     | 
| 
      
 43 
     | 
    
         
            +
                      raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
         
     | 
| 
      
 44 
     | 
    
         
            +
                    end
         
     | 
| 
      
 45 
     | 
    
         
            +
                    return Aws::Endpoints::Endpoint.new(url: "https://iot.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
         
     | 
| 
       21 
46 
     | 
    
         
             
                  end
         
     | 
| 
       22 
     | 
    
         
            -
                   
     | 
| 
       23 
     | 
    
         
            -
                end
         
     | 
| 
      
 47 
     | 
    
         
            +
                  raise ArgumentError, 'No endpoint could be resolved'
         
     | 
| 
       24 
48 
     | 
    
         | 
| 
       25 
     | 
    
         
            -
                def resolve_endpoint(parameters)
         
     | 
| 
       26 
     | 
    
         
            -
                  @provider.resolve_endpoint(parameters)
         
     | 
| 
       27 
49 
     | 
    
         
             
                end
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
                # @api private
         
     | 
| 
       30 
     | 
    
         
            -
                RULES = <<-JSON
         
     | 
| 
       31 
     | 
    
         
            -
            eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
         
     | 
| 
       32 
     | 
    
         
            -
            bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
         
     | 
| 
       33 
     | 
    
         
            -
            dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
         
     | 
| 
       34 
     | 
    
         
            -
            cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
         
     | 
| 
       35 
     | 
    
         
            -
            dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
         
     | 
| 
       36 
     | 
    
         
            -
            ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
         
     | 
| 
       37 
     | 
    
         
            -
            ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
         
     | 
| 
       38 
     | 
    
         
            -
            ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
         
     | 
| 
       39 
     | 
    
         
            -
            aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
         
     | 
| 
       40 
     | 
    
         
            -
            OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
         
     | 
| 
       41 
     | 
    
         
            -
            UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
         
     | 
| 
       42 
     | 
    
         
            -
            dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
         
     | 
| 
       43 
     | 
    
         
            -
            UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
         
     | 
| 
       44 
     | 
    
         
            -
            dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
         
     | 
| 
       45 
     | 
    
         
            -
            ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
         
     | 
| 
       46 
     | 
    
         
            -
            IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
         
     | 
| 
       47 
     | 
    
         
            -
            aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
         
     | 
| 
       48 
     | 
    
         
            -
            bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
         
     | 
| 
       49 
     | 
    
         
            -
            ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
         
     | 
| 
       50 
     | 
    
         
            -
            Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
         
     | 
| 
       51 
     | 
    
         
            -
            cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
         
     | 
| 
       52 
     | 
    
         
            -
            InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
         
     | 
| 
       53 
     | 
    
         
            -
            aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
         
     | 
| 
       54 
     | 
    
         
            -
            cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
         
     | 
| 
       55 
     | 
    
         
            -
            InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
         
     | 
| 
       56 
     | 
    
         
            -
            W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
         
     | 
| 
       57 
     | 
    
         
            -
            UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
         
     | 
| 
       58 
     | 
    
         
            -
            SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
         
     | 
| 
       59 
     | 
    
         
            -
            eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
         
     | 
| 
       60 
     | 
    
         
            -
            InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
         
     | 
| 
       61 
     | 
    
         
            -
            LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
         
     | 
| 
       62 
     | 
    
         
            -
            ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
         
     | 
| 
       63 
     | 
    
         
            -
            b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
         
     | 
| 
       64 
     | 
    
         
            -
            fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
         
     | 
| 
       65 
     | 
    
         
            -
            RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
         
     | 
| 
       66 
     | 
    
         
            -
            ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
         
     | 
| 
       67 
     | 
    
         
            -
            ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
         
     | 
| 
       68 
     | 
    
         
            -
            ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
         
     | 
| 
       69 
     | 
    
         
            -
            dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
         
     | 
| 
       70 
     | 
    
         
            -
            dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
         
     | 
| 
       71 
     | 
    
         
            -
            Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
         
     | 
| 
       72 
     | 
    
         
            -
            In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
         
     | 
| 
       73 
     | 
    
         
            -
            YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
         
     | 
| 
       74 
     | 
    
         
            -
            YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
         
     | 
| 
       75 
     | 
    
         
            -
            cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
         
     | 
| 
       76 
     | 
    
         
            -
            dCI6eyJ1cmwiOiJodHRwczovL2lvdC1maXBzLntSZWdpb259LntQYXJ0aXRp
         
     | 
| 
       77 
     | 
    
         
            -
            b25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9
         
     | 
| 
       78 
     | 
    
         
            -
            LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRp
         
     | 
| 
       79 
     | 
    
         
            -
            b25zIjpbXSwiZXJyb3IiOiJGSVBTIGFuZCBEdWFsU3RhY2sgYXJlIGVuYWJs
         
     | 
| 
       80 
     | 
    
         
            -
            ZWQsIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IG9uZSBv
         
     | 
| 
       81 
     | 
    
         
            -
            ciBib3RoIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZu
         
     | 
| 
       82 
     | 
    
         
            -
            IjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0
         
     | 
| 
       83 
     | 
    
         
            -
            cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpb
         
     | 
| 
       84 
     | 
    
         
            -
            eyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0
         
     | 
| 
       85 
     | 
    
         
            -
            QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBw
         
     | 
| 
       86 
     | 
    
         
            -
            b3J0c0ZJUFMiXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
         
     | 
| 
       87 
     | 
    
         
            -
            dGlvbnMiOltdLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25z
         
     | 
| 
       88 
     | 
    
         
            -
            IjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9pb3QtZmlwcy57UmVn
         
     | 
| 
       89 
     | 
    
         
            -
            aW9ufS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVz
         
     | 
| 
       90 
     | 
    
         
            -
            Ijp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0seyJj
         
     | 
| 
       91 
     | 
    
         
            -
            b25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGlzIGVuYWJsZWQgYnV0IHRo
         
     | 
| 
       92 
     | 
    
         
            -
            aXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgRklQUyIsInR5cGUiOiJl
         
     | 
| 
       93 
     | 
    
         
            -
            cnJvciJ9XX0seyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
         
     | 
| 
       94 
     | 
    
         
            -
            LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0eXBl
         
     | 
| 
       95 
     | 
    
         
            -
            IjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xl
         
     | 
| 
       96 
     | 
    
         
            -
            YW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3Yi
         
     | 
| 
       97 
     | 
    
         
            -
            Olt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxTdGFj
         
     | 
| 
       98 
     | 
    
         
            -
            ayJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
         
     | 
| 
       99 
     | 
    
         
            -
            W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vaW90LntSZWdpb259LntQ
         
     | 
| 
       100 
     | 
    
         
            -
            YXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRp
         
     | 
| 
       101 
     | 
    
         
            -
            ZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJj
         
     | 
| 
       102 
     | 
    
         
            -
            b25kaXRpb25zIjpbXSwiZXJyb3IiOiJEdWFsU3RhY2sgaXMgZW5hYmxlZCBi
         
     | 
| 
       103 
     | 
    
         
            -
            dXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBEdWFsU3RhY2si
         
     | 
| 
       104 
     | 
    
         
            -
            LCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W10sImVuZHBvaW50
         
     | 
| 
       105 
     | 
    
         
            -
            Ijp7InVybCI6Imh0dHBzOi8vaW90LntSZWdpb259LntQYXJ0aXRpb25SZXN1
         
     | 
| 
       106 
     | 
    
         
            -
            bHQjZG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0s
         
     | 
| 
       107 
     | 
    
         
            -
            InR5cGUiOiJlbmRwb2ludCJ9XX1dfQ==
         
     | 
| 
       108 
     | 
    
         
            -
             
     | 
| 
       109 
     | 
    
         
            -
                JSON
         
     | 
| 
       110 
50 
     | 
    
         
             
              end
         
     | 
| 
       111 
51 
     | 
    
         
             
            end
         
     |