aws-sdk-braket 1.15.0 → 1.29.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 +72 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-braket/client.rb +90 -4
- data/lib/aws-sdk-braket/client_api.rb +39 -0
- data/lib/aws-sdk-braket/endpoint_parameters.rb +66 -0
- data/lib/aws-sdk-braket/endpoint_provider.rb +54 -0
- data/lib/aws-sdk-braket/endpoints.rb +198 -0
- data/lib/aws-sdk-braket/plugins/endpoints.rb +94 -0
- data/lib/aws-sdk-braket/types.rb +115 -296
- data/lib/aws-sdk-braket.rb +5 -1
- metadata +8 -4
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: aae7c149ecbd55918a40ada9c860c47dabf0a8ea9391e0023fa79d455cf230c2
         | 
| 4 | 
            +
              data.tar.gz: e07dde972f8fcf7bf63e508d4fca69f5832fe89cdee2564c6def64aa3838947c
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 8324ebec479f0f4bab5e62db7138f354c31c087d991eb342285ea2d6fb40daeb249afd5b89da0df75165ea7b4a079351b6689bf32c1cc1a46fbaaa5edb28f4d9
         | 
| 7 | 
            +
              data.tar.gz: 384bfa52943ca611375562875bb1319502eddc60f8fb903f84e22693012eec1b4069238eca846ff5a1dfba8165130620270515345c6fef4a0540bdbd03bb65f0
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,6 +1,78 @@ | |
| 1 1 | 
             
            Unreleased Changes
         | 
| 2 2 | 
             
            ------------------
         | 
| 3 3 |  | 
| 4 | 
            +
            1.29.0 (2023-09-27)
         | 
| 5 | 
            +
            ------------------
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            1.28.0 (2023-09-22)
         | 
| 10 | 
            +
            ------------------
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            * Feature - This release adds support to view the device queue depth (the number of queued quantum tasks and hybrid jobs on a device) and queue position for a quantum task and hybrid job.
         | 
| 13 | 
            +
             | 
| 14 | 
            +
            1.27.0 (2023-09-19)
         | 
| 15 | 
            +
            ------------------
         | 
| 16 | 
            +
             | 
| 17 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            1.26.0 (2023-07-11)
         | 
| 20 | 
            +
            ------------------
         | 
| 21 | 
            +
             | 
| 22 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 23 | 
            +
             | 
| 24 | 
            +
            1.25.0 (2023-07-06)
         | 
| 25 | 
            +
            ------------------
         | 
| 26 | 
            +
             | 
| 27 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 28 | 
            +
             | 
| 29 | 
            +
            1.24.0 (2023-06-28)
         | 
| 30 | 
            +
            ------------------
         | 
| 31 | 
            +
             | 
| 32 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 33 | 
            +
             | 
| 34 | 
            +
            1.23.0 (2023-06-15)
         | 
| 35 | 
            +
            ------------------
         | 
| 36 | 
            +
             | 
| 37 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 38 | 
            +
             | 
| 39 | 
            +
            1.22.0 (2023-05-31)
         | 
| 40 | 
            +
            ------------------
         | 
| 41 | 
            +
             | 
| 42 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 43 | 
            +
             | 
| 44 | 
            +
            1.21.0 (2023-01-18)
         | 
| 45 | 
            +
            ------------------
         | 
| 46 | 
            +
             | 
| 47 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 48 | 
            +
             | 
| 49 | 
            +
            * Issue - Replace runtime endpoint resolution approach with generated ruby code.
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            1.20.0 (2022-10-25)
         | 
| 52 | 
            +
            ------------------
         | 
| 53 | 
            +
             | 
| 54 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 55 | 
            +
             | 
| 56 | 
            +
            1.19.0 (2022-04-28)
         | 
| 57 | 
            +
            ------------------
         | 
| 58 | 
            +
             | 
| 59 | 
            +
            * Feature - This release enables Braket Hybrid Jobs with Embedded Simulators to have multiple instances.
         | 
| 60 | 
            +
             | 
| 61 | 
            +
            1.18.0 (2022-02-24)
         | 
| 62 | 
            +
            ------------------
         | 
| 63 | 
            +
             | 
| 64 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 65 | 
            +
             | 
| 66 | 
            +
            1.17.0 (2022-02-03)
         | 
| 67 | 
            +
            ------------------
         | 
| 68 | 
            +
             | 
| 69 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 70 | 
            +
             | 
| 71 | 
            +
            1.16.0 (2021-12-21)
         | 
| 72 | 
            +
            ------------------
         | 
| 73 | 
            +
             | 
| 74 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 75 | 
            +
             | 
| 4 76 | 
             
            1.15.0 (2021-11-30)
         | 
| 5 77 | 
             
            ------------------
         | 
| 6 78 |  | 
    
        data/VERSION
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            1. | 
| 1 | 
            +
            1.29.0
         | 
| @@ -27,7 +27,11 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb' | |
| 27 27 | 
             
            require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
         | 
| 28 28 | 
             
            require 'aws-sdk-core/plugins/transfer_encoding.rb'
         | 
| 29 29 | 
             
            require 'aws-sdk-core/plugins/http_checksum.rb'
         | 
| 30 | 
            -
            require 'aws-sdk-core/plugins/ | 
| 30 | 
            +
            require 'aws-sdk-core/plugins/checksum_algorithm.rb'
         | 
| 31 | 
            +
            require 'aws-sdk-core/plugins/request_compression.rb'
         | 
| 32 | 
            +
            require 'aws-sdk-core/plugins/defaults_mode.rb'
         | 
| 33 | 
            +
            require 'aws-sdk-core/plugins/recursion_detection.rb'
         | 
| 34 | 
            +
            require 'aws-sdk-core/plugins/sign.rb'
         | 
| 31 35 | 
             
            require 'aws-sdk-core/plugins/protocols/rest_json.rb'
         | 
| 32 36 |  | 
| 33 37 | 
             
            Aws::Plugins::GlobalConfiguration.add_identifier(:braket)
         | 
| @@ -73,8 +77,13 @@ module Aws::Braket | |
| 73 77 | 
             
                add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
         | 
| 74 78 | 
             
                add_plugin(Aws::Plugins::TransferEncoding)
         | 
| 75 79 | 
             
                add_plugin(Aws::Plugins::HttpChecksum)
         | 
| 76 | 
            -
                add_plugin(Aws::Plugins:: | 
| 80 | 
            +
                add_plugin(Aws::Plugins::ChecksumAlgorithm)
         | 
| 81 | 
            +
                add_plugin(Aws::Plugins::RequestCompression)
         | 
| 82 | 
            +
                add_plugin(Aws::Plugins::DefaultsMode)
         | 
| 83 | 
            +
                add_plugin(Aws::Plugins::RecursionDetection)
         | 
| 84 | 
            +
                add_plugin(Aws::Plugins::Sign)
         | 
| 77 85 | 
             
                add_plugin(Aws::Plugins::Protocols::RestJson)
         | 
| 86 | 
            +
                add_plugin(Aws::Braket::Plugins::Endpoints)
         | 
| 78 87 |  | 
| 79 88 | 
             
                # @overload initialize(options)
         | 
| 80 89 | 
             
                #   @param [Hash] options
         | 
| @@ -175,10 +184,18 @@ module Aws::Braket | |
| 175 184 | 
             
                #     Used only in `standard` and adaptive retry modes. Specifies whether to apply
         | 
| 176 185 | 
             
                #     a clock skew correction and retry requests with skewed client clocks.
         | 
| 177 186 | 
             
                #
         | 
| 187 | 
            +
                #   @option options [String] :defaults_mode ("legacy")
         | 
| 188 | 
            +
                #     See {Aws::DefaultsModeConfiguration} for a list of the
         | 
| 189 | 
            +
                #     accepted modes and the configuration defaults that are included.
         | 
| 190 | 
            +
                #
         | 
| 178 191 | 
             
                #   @option options [Boolean] :disable_host_prefix_injection (false)
         | 
| 179 192 | 
             
                #     Set to true to disable SDK automatically adding host prefix
         | 
| 180 193 | 
             
                #     to default service endpoint when available.
         | 
| 181 194 | 
             
                #
         | 
| 195 | 
            +
                #   @option options [Boolean] :disable_request_compression (false)
         | 
| 196 | 
            +
                #     When set to 'true' the request body will not be compressed
         | 
| 197 | 
            +
                #     for supported operations.
         | 
| 198 | 
            +
                #
         | 
| 182 199 | 
             
                #   @option options [String] :endpoint
         | 
| 183 200 | 
             
                #     The client endpoint is normally constructed from the `:region`
         | 
| 184 201 | 
             
                #     option. You should only configure an `:endpoint` when connecting
         | 
| @@ -199,6 +216,10 @@ module Aws::Braket | |
| 199 216 | 
             
                #   @option options [Boolean] :endpoint_discovery (false)
         | 
| 200 217 | 
             
                #     When set to `true`, endpoint discovery will be enabled for operations when available.
         | 
| 201 218 | 
             
                #
         | 
| 219 | 
            +
                #   @option options [Boolean] :ignore_configured_endpoint_urls
         | 
| 220 | 
            +
                #     Setting to true disables use of endpoint URLs provided via environment
         | 
| 221 | 
            +
                #     variables and the shared configuration file.
         | 
| 222 | 
            +
                #
         | 
| 202 223 | 
             
                #   @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
         | 
| 203 224 | 
             
                #     The log formatter.
         | 
| 204 225 | 
             
                #
         | 
| @@ -219,6 +240,11 @@ module Aws::Braket | |
| 219 240 | 
             
                #     Used when loading credentials from the shared credentials file
         | 
| 220 241 | 
             
                #     at HOME/.aws/credentials.  When not specified, 'default' is used.
         | 
| 221 242 | 
             
                #
         | 
| 243 | 
            +
                #   @option options [Integer] :request_min_compression_size_bytes (10240)
         | 
| 244 | 
            +
                #     The minimum size in bytes that triggers compression for request
         | 
| 245 | 
            +
                #     bodies. The value must be non-negative integer value between 0
         | 
| 246 | 
            +
                #     and 10485780 bytes inclusive.
         | 
| 247 | 
            +
                #
         | 
| 222 248 | 
             
                #   @option options [Proc] :retry_backoff
         | 
| 223 249 | 
             
                #     A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
         | 
| 224 250 | 
             
                #     This option is only used in the `legacy` retry mode.
         | 
| @@ -264,6 +290,11 @@ module Aws::Braket | |
| 264 290 | 
             
                #       in the future.
         | 
| 265 291 | 
             
                #
         | 
| 266 292 | 
             
                #
         | 
| 293 | 
            +
                #   @option options [String] :sdk_ua_app_id
         | 
| 294 | 
            +
                #     A unique and opaque application ID that is appended to the
         | 
| 295 | 
            +
                #     User-Agent header as app/<sdk_ua_app_id>. It should have a
         | 
| 296 | 
            +
                #     maximum length of 50.
         | 
| 297 | 
            +
                #
         | 
| 267 298 | 
             
                #   @option options [String] :secret_access_key
         | 
| 268 299 | 
             
                #
         | 
| 269 300 | 
             
                #   @option options [String] :session_token
         | 
| @@ -277,6 +308,19 @@ module Aws::Braket | |
| 277 308 | 
             
                #     ** Please note ** When response stubbing is enabled, no HTTP
         | 
| 278 309 | 
             
                #     requests are made, and retries are disabled.
         | 
| 279 310 | 
             
                #
         | 
| 311 | 
            +
                #   @option options [Aws::TokenProvider] :token_provider
         | 
| 312 | 
            +
                #     A Bearer Token Provider. This can be an instance of any one of the
         | 
| 313 | 
            +
                #     following classes:
         | 
| 314 | 
            +
                #
         | 
| 315 | 
            +
                #     * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
         | 
| 316 | 
            +
                #       tokens.
         | 
| 317 | 
            +
                #
         | 
| 318 | 
            +
                #     * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
         | 
| 319 | 
            +
                #       access token generated from `aws login`.
         | 
| 320 | 
            +
                #
         | 
| 321 | 
            +
                #     When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
         | 
| 322 | 
            +
                #     will be used to search for tokens configured for your profile in shared configuration files.
         | 
| 323 | 
            +
                #
         | 
| 280 324 | 
             
                #   @option options [Boolean] :use_dualstack_endpoint
         | 
| 281 325 | 
             
                #     When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
         | 
| 282 326 | 
             
                #     will be used if available.
         | 
| @@ -290,6 +334,9 @@ module Aws::Braket | |
| 290 334 | 
             
                #     When `true`, request parameters are validated before
         | 
| 291 335 | 
             
                #     sending the request.
         | 
| 292 336 | 
             
                #
         | 
| 337 | 
            +
                #   @option options [Aws::Braket::EndpointProvider] :endpoint_provider
         | 
| 338 | 
            +
                #     The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Braket::EndpointParameters`
         | 
| 339 | 
            +
                #
         | 
| 293 340 | 
             
                #   @option options [URI::HTTP,String] :http_proxy A proxy to send
         | 
| 294 341 | 
             
                #     requests through.  Formatted like 'http://proxy.com:123'.
         | 
| 295 342 | 
             
                #
         | 
| @@ -297,7 +344,7 @@ module Aws::Braket | |
| 297 344 | 
             
                #     seconds to wait when opening a HTTP session before raising a
         | 
| 298 345 | 
             
                #     `Timeout::Error`.
         | 
| 299 346 | 
             
                #
         | 
| 300 | 
            -
                #   @option options [ | 
| 347 | 
            +
                #   @option options [Float] :http_read_timeout (60) The default
         | 
| 301 348 | 
             
                #     number of seconds to wait for response data.  This value can
         | 
| 302 349 | 
             
                #     safely be set per-request on the session.
         | 
| 303 350 | 
             
                #
         | 
| @@ -313,6 +360,9 @@ module Aws::Braket | |
| 313 360 | 
             
                #     disables this behaviour.  This value can safely be set per
         | 
| 314 361 | 
             
                #     request on the session.
         | 
| 315 362 | 
             
                #
         | 
| 363 | 
            +
                #   @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
         | 
| 364 | 
            +
                #     in seconds.
         | 
| 365 | 
            +
                #
         | 
| 316 366 | 
             
                #   @option options [Boolean] :http_wire_trace (false) When `true`,
         | 
| 317 367 | 
             
                #     HTTP debug output will be sent to the `:logger`.
         | 
| 318 368 | 
             
                #
         | 
| @@ -500,6 +550,7 @@ module Aws::Braket | |
| 500 550 | 
             
                #       },
         | 
| 501 551 | 
             
                #     ],
         | 
| 502 552 | 
             
                #     instance_config: { # required
         | 
| 553 | 
            +
                #       instance_count: 1,
         | 
| 503 554 | 
             
                #       instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge
         | 
| 504 555 | 
             
                #       volume_size_in_gb: 1, # required
         | 
| 505 556 | 
             
                #     },
         | 
| @@ -607,6 +658,18 @@ module Aws::Braket | |
| 607 658 |  | 
| 608 659 | 
             
                # Retrieves the devices available in Amazon Braket.
         | 
| 609 660 | 
             
                #
         | 
| 661 | 
            +
                # <note markdown="1"> For backwards compatibility with older versions of BraketSchemas,
         | 
| 662 | 
            +
                # OpenQASM information is omitted from GetDevice API calls. To get this
         | 
| 663 | 
            +
                # information the user-agent needs to present a recent version of the
         | 
| 664 | 
            +
                # BraketSchemas (1.8.0 or later). The Braket SDK automatically reports
         | 
| 665 | 
            +
                # this for you. If you do not see OpenQASM results in the GetDevice
         | 
| 666 | 
            +
                # response when using a Braket SDK, you may need to set
         | 
| 667 | 
            +
                # AWS\_EXECUTION\_ENV environment variable to configure user-agent. See
         | 
| 668 | 
            +
                # the code examples provided below for how to do this for the AWS CLI,
         | 
| 669 | 
            +
                # Boto3, and the Go, Java, and JavaScript/TypeScript SDKs.
         | 
| 670 | 
            +
                #
         | 
| 671 | 
            +
                #  </note>
         | 
| 672 | 
            +
                #
         | 
| 610 673 | 
             
                # @option params [required, String] :device_arn
         | 
| 611 674 | 
             
                #   The ARN of the device to retrieve.
         | 
| 612 675 | 
             
                #
         | 
| @@ -615,6 +678,7 @@ module Aws::Braket | |
| 615 678 | 
             
                #   * {Types::GetDeviceResponse#device_arn #device_arn} => String
         | 
| 616 679 | 
             
                #   * {Types::GetDeviceResponse#device_capabilities #device_capabilities} => String
         | 
| 617 680 | 
             
                #   * {Types::GetDeviceResponse#device_name #device_name} => String
         | 
| 681 | 
            +
                #   * {Types::GetDeviceResponse#device_queue_info #device_queue_info} => Array<Types::DeviceQueueInfo>
         | 
| 618 682 | 
             
                #   * {Types::GetDeviceResponse#device_status #device_status} => String
         | 
| 619 683 | 
             
                #   * {Types::GetDeviceResponse#device_type #device_type} => String
         | 
| 620 684 | 
             
                #   * {Types::GetDeviceResponse#provider_name #provider_name} => String
         | 
| @@ -630,6 +694,10 @@ module Aws::Braket | |
| 630 694 | 
             
                #   resp.device_arn #=> String
         | 
| 631 695 | 
             
                #   resp.device_capabilities #=> String
         | 
| 632 696 | 
             
                #   resp.device_name #=> String
         | 
| 697 | 
            +
                #   resp.device_queue_info #=> Array
         | 
| 698 | 
            +
                #   resp.device_queue_info[0].queue #=> String, one of "QUANTUM_TASKS_QUEUE", "JOBS_QUEUE"
         | 
| 699 | 
            +
                #   resp.device_queue_info[0].queue_priority #=> String, one of "Normal", "Priority"
         | 
| 700 | 
            +
                #   resp.device_queue_info[0].queue_size #=> String
         | 
| 633 701 | 
             
                #   resp.device_status #=> String, one of "ONLINE", "OFFLINE", "RETIRED"
         | 
| 634 702 | 
             
                #   resp.device_type #=> String, one of "QPU", "SIMULATOR"
         | 
| 635 703 | 
             
                #   resp.provider_name #=> String
         | 
| @@ -645,6 +713,9 @@ module Aws::Braket | |
| 645 713 |  | 
| 646 714 | 
             
                # Retrieves the specified Amazon Braket job.
         | 
| 647 715 | 
             
                #
         | 
| 716 | 
            +
                # @option params [Array<String>] :additional_attribute_names
         | 
| 717 | 
            +
                #   A list of attributes to return information for.
         | 
| 718 | 
            +
                #
         | 
| 648 719 | 
             
                # @option params [required, String] :job_arn
         | 
| 649 720 | 
             
                #   The ARN of the job to retrieve.
         | 
| 650 721 | 
             
                #
         | 
| @@ -664,6 +735,7 @@ module Aws::Braket | |
| 664 735 | 
             
                #   * {Types::GetJobResponse#job_arn #job_arn} => String
         | 
| 665 736 | 
             
                #   * {Types::GetJobResponse#job_name #job_name} => String
         | 
| 666 737 | 
             
                #   * {Types::GetJobResponse#output_data_config #output_data_config} => Types::JobOutputDataConfig
         | 
| 738 | 
            +
                #   * {Types::GetJobResponse#queue_info #queue_info} => Types::HybridJobQueueInfo
         | 
| 667 739 | 
             
                #   * {Types::GetJobResponse#role_arn #role_arn} => String
         | 
| 668 740 | 
             
                #   * {Types::GetJobResponse#started_at #started_at} => Time
         | 
| 669 741 | 
             
                #   * {Types::GetJobResponse#status #status} => String
         | 
| @@ -673,6 +745,7 @@ module Aws::Braket | |
| 673 745 | 
             
                # @example Request syntax with placeholder values
         | 
| 674 746 | 
             
                #
         | 
| 675 747 | 
             
                #   resp = client.get_job({
         | 
| 748 | 
            +
                #     additional_attribute_names: ["QueueInfo"], # accepts QueueInfo
         | 
| 676 749 | 
             
                #     job_arn: "JobArn", # required
         | 
| 677 750 | 
             
                #   })
         | 
| 678 751 | 
             
                #
         | 
| @@ -699,12 +772,16 @@ module Aws::Braket | |
| 699 772 | 
             
                #   resp.input_data_config[0].channel_name #=> String
         | 
| 700 773 | 
             
                #   resp.input_data_config[0].content_type #=> String
         | 
| 701 774 | 
             
                #   resp.input_data_config[0].data_source.s3_data_source.s3_uri #=> String
         | 
| 775 | 
            +
                #   resp.instance_config.instance_count #=> Integer
         | 
| 702 776 | 
             
                #   resp.instance_config.instance_type #=> String, one of "ml.m4.xlarge", "ml.m4.2xlarge", "ml.m4.4xlarge", "ml.m4.10xlarge", "ml.m4.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.12xlarge", "ml.m5.24xlarge", "ml.c4.xlarge", "ml.c4.2xlarge", "ml.c4.4xlarge", "ml.c4.8xlarge", "ml.p2.xlarge", "ml.p2.8xlarge", "ml.p2.16xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.p3dn.24xlarge", "ml.p4d.24xlarge", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.18xlarge", "ml.c5n.xlarge", "ml.c5n.2xlarge", "ml.c5n.4xlarge", "ml.c5n.9xlarge", "ml.c5n.18xlarge"
         | 
| 703 777 | 
             
                #   resp.instance_config.volume_size_in_gb #=> Integer
         | 
| 704 778 | 
             
                #   resp.job_arn #=> String
         | 
| 705 779 | 
             
                #   resp.job_name #=> String
         | 
| 706 780 | 
             
                #   resp.output_data_config.kms_key_id #=> String
         | 
| 707 781 | 
             
                #   resp.output_data_config.s3_path #=> String
         | 
| 782 | 
            +
                #   resp.queue_info.message #=> String
         | 
| 783 | 
            +
                #   resp.queue_info.position #=> String
         | 
| 784 | 
            +
                #   resp.queue_info.queue #=> String, one of "QUANTUM_TASKS_QUEUE", "JOBS_QUEUE"
         | 
| 708 785 | 
             
                #   resp.role_arn #=> String
         | 
| 709 786 | 
             
                #   resp.started_at #=> Time
         | 
| 710 787 | 
             
                #   resp.status #=> String, one of "QUEUED", "RUNNING", "COMPLETED", "FAILED", "CANCELLING", "CANCELLED"
         | 
| @@ -723,6 +800,9 @@ module Aws::Braket | |
| 723 800 |  | 
| 724 801 | 
             
                # Retrieves the specified quantum task.
         | 
| 725 802 | 
             
                #
         | 
| 803 | 
            +
                # @option params [Array<String>] :additional_attribute_names
         | 
| 804 | 
            +
                #   A list of attributes to return information for.
         | 
| 805 | 
            +
                #
         | 
| 726 806 | 
             
                # @option params [required, String] :quantum_task_arn
         | 
| 727 807 | 
             
                #   the ARN of the task to retrieve.
         | 
| 728 808 | 
             
                #
         | 
| @@ -737,6 +817,7 @@ module Aws::Braket | |
| 737 817 | 
             
                #   * {Types::GetQuantumTaskResponse#output_s3_bucket #output_s3_bucket} => String
         | 
| 738 818 | 
             
                #   * {Types::GetQuantumTaskResponse#output_s3_directory #output_s3_directory} => String
         | 
| 739 819 | 
             
                #   * {Types::GetQuantumTaskResponse#quantum_task_arn #quantum_task_arn} => String
         | 
| 820 | 
            +
                #   * {Types::GetQuantumTaskResponse#queue_info #queue_info} => Types::QuantumTaskQueueInfo
         | 
| 740 821 | 
             
                #   * {Types::GetQuantumTaskResponse#shots #shots} => Integer
         | 
| 741 822 | 
             
                #   * {Types::GetQuantumTaskResponse#status #status} => String
         | 
| 742 823 | 
             
                #   * {Types::GetQuantumTaskResponse#tags #tags} => Hash<String,String>
         | 
| @@ -744,6 +825,7 @@ module Aws::Braket | |
| 744 825 | 
             
                # @example Request syntax with placeholder values
         | 
| 745 826 | 
             
                #
         | 
| 746 827 | 
             
                #   resp = client.get_quantum_task({
         | 
| 828 | 
            +
                #     additional_attribute_names: ["QueueInfo"], # accepts QueueInfo
         | 
| 747 829 | 
             
                #     quantum_task_arn: "QuantumTaskArn", # required
         | 
| 748 830 | 
             
                #   })
         | 
| 749 831 | 
             
                #
         | 
| @@ -758,6 +840,10 @@ module Aws::Braket | |
| 758 840 | 
             
                #   resp.output_s3_bucket #=> String
         | 
| 759 841 | 
             
                #   resp.output_s3_directory #=> String
         | 
| 760 842 | 
             
                #   resp.quantum_task_arn #=> String
         | 
| 843 | 
            +
                #   resp.queue_info.message #=> String
         | 
| 844 | 
            +
                #   resp.queue_info.position #=> String
         | 
| 845 | 
            +
                #   resp.queue_info.queue #=> String, one of "QUANTUM_TASKS_QUEUE", "JOBS_QUEUE"
         | 
| 846 | 
            +
                #   resp.queue_info.queue_priority #=> String, one of "Normal", "Priority"
         | 
| 761 847 | 
             
                #   resp.shots #=> Integer
         | 
| 762 848 | 
             
                #   resp.status #=> String, one of "CREATED", "QUEUED", "RUNNING", "COMPLETED", "FAILED", "CANCELLING", "CANCELLED"
         | 
| 763 849 | 
             
                #   resp.tags #=> Hash
         | 
| @@ -1038,7 +1124,7 @@ module Aws::Braket | |
| 1038 1124 | 
             
                    params: params,
         | 
| 1039 1125 | 
             
                    config: config)
         | 
| 1040 1126 | 
             
                  context[:gem_name] = 'aws-sdk-braket'
         | 
| 1041 | 
            -
                  context[:gem_version] = '1. | 
| 1127 | 
            +
                  context[:gem_version] = '1.29.0'
         | 
| 1042 1128 | 
             
                  Seahorse::Client::Request.new(handlers, context)
         | 
| 1043 1129 | 
             
                end
         | 
| 1044 1130 |  | 
| @@ -37,6 +37,8 @@ module Aws::Braket | |
| 37 37 | 
             
                DeviceArn = Shapes::StringShape.new(name: 'DeviceArn')
         | 
| 38 38 | 
             
                DeviceConfig = Shapes::StructureShape.new(name: 'DeviceConfig')
         | 
| 39 39 | 
             
                DeviceOfflineException = Shapes::StructureShape.new(name: 'DeviceOfflineException')
         | 
| 40 | 
            +
                DeviceQueueInfo = Shapes::StructureShape.new(name: 'DeviceQueueInfo')
         | 
| 41 | 
            +
                DeviceQueueInfoList = Shapes::ListShape.new(name: 'DeviceQueueInfoList')
         | 
| 40 42 | 
             
                DeviceRetiredException = Shapes::StructureShape.new(name: 'DeviceRetiredException')
         | 
| 41 43 | 
             
                DeviceStatus = Shapes::StringShape.new(name: 'DeviceStatus')
         | 
| 42 44 | 
             
                DeviceSummary = Shapes::StructureShape.new(name: 'DeviceSummary')
         | 
| @@ -49,12 +51,16 @@ module Aws::Braket | |
| 49 51 | 
             
                GetJobResponseJobNameString = Shapes::StringShape.new(name: 'GetJobResponseJobNameString')
         | 
| 50 52 | 
             
                GetQuantumTaskRequest = Shapes::StructureShape.new(name: 'GetQuantumTaskRequest')
         | 
| 51 53 | 
             
                GetQuantumTaskResponse = Shapes::StructureShape.new(name: 'GetQuantumTaskResponse')
         | 
| 54 | 
            +
                HybridJobAdditionalAttributeName = Shapes::StringShape.new(name: 'HybridJobAdditionalAttributeName')
         | 
| 55 | 
            +
                HybridJobAdditionalAttributeNamesList = Shapes::ListShape.new(name: 'HybridJobAdditionalAttributeNamesList')
         | 
| 56 | 
            +
                HybridJobQueueInfo = Shapes::StructureShape.new(name: 'HybridJobQueueInfo')
         | 
| 52 57 | 
             
                HyperParameters = Shapes::MapShape.new(name: 'HyperParameters')
         | 
| 53 58 | 
             
                HyperParametersValueString = Shapes::StringShape.new(name: 'HyperParametersValueString')
         | 
| 54 59 | 
             
                InputConfigList = Shapes::ListShape.new(name: 'InputConfigList')
         | 
| 55 60 | 
             
                InputFileConfig = Shapes::StructureShape.new(name: 'InputFileConfig')
         | 
| 56 61 | 
             
                InputFileConfigChannelNameString = Shapes::StringShape.new(name: 'InputFileConfigChannelNameString')
         | 
| 57 62 | 
             
                InstanceConfig = Shapes::StructureShape.new(name: 'InstanceConfig')
         | 
| 63 | 
            +
                InstanceConfigInstanceCountInteger = Shapes::IntegerShape.new(name: 'InstanceConfigInstanceCountInteger')
         | 
| 58 64 | 
             
                InstanceConfigVolumeSizeInGbInteger = Shapes::IntegerShape.new(name: 'InstanceConfigVolumeSizeInGbInteger')
         | 
| 59 65 | 
             
                InstanceType = Shapes::StringShape.new(name: 'InstanceType')
         | 
| 60 66 | 
             
                Integer = Shapes::IntegerShape.new(name: 'Integer')
         | 
| @@ -76,10 +82,15 @@ module Aws::Braket | |
| 76 82 | 
             
                ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
         | 
| 77 83 | 
             
                ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
         | 
| 78 84 | 
             
                Long = Shapes::IntegerShape.new(name: 'Long')
         | 
| 85 | 
            +
                QuantumTaskAdditionalAttributeName = Shapes::StringShape.new(name: 'QuantumTaskAdditionalAttributeName')
         | 
| 86 | 
            +
                QuantumTaskAdditionalAttributeNamesList = Shapes::ListShape.new(name: 'QuantumTaskAdditionalAttributeNamesList')
         | 
| 79 87 | 
             
                QuantumTaskArn = Shapes::StringShape.new(name: 'QuantumTaskArn')
         | 
| 88 | 
            +
                QuantumTaskQueueInfo = Shapes::StructureShape.new(name: 'QuantumTaskQueueInfo')
         | 
| 80 89 | 
             
                QuantumTaskStatus = Shapes::StringShape.new(name: 'QuantumTaskStatus')
         | 
| 81 90 | 
             
                QuantumTaskSummary = Shapes::StructureShape.new(name: 'QuantumTaskSummary')
         | 
| 82 91 | 
             
                QuantumTaskSummaryList = Shapes::ListShape.new(name: 'QuantumTaskSummaryList')
         | 
| 92 | 
            +
                QueueName = Shapes::StringShape.new(name: 'QueueName')
         | 
| 93 | 
            +
                QueuePriority = Shapes::StringShape.new(name: 'QueuePriority')
         | 
| 83 94 | 
             
                ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
         | 
| 84 95 | 
             
                RoleArn = Shapes::StringShape.new(name: 'RoleArn')
         | 
| 85 96 | 
             
                S3DataSource = Shapes::StructureShape.new(name: 'S3DataSource')
         | 
| @@ -194,6 +205,13 @@ module Aws::Braket | |
| 194 205 | 
             
                DeviceOfflineException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
         | 
| 195 206 | 
             
                DeviceOfflineException.struct_class = Types::DeviceOfflineException
         | 
| 196 207 |  | 
| 208 | 
            +
                DeviceQueueInfo.add_member(:queue, Shapes::ShapeRef.new(shape: QueueName, required: true, location_name: "queue"))
         | 
| 209 | 
            +
                DeviceQueueInfo.add_member(:queue_priority, Shapes::ShapeRef.new(shape: QueuePriority, location_name: "queuePriority"))
         | 
| 210 | 
            +
                DeviceQueueInfo.add_member(:queue_size, Shapes::ShapeRef.new(shape: String, required: true, location_name: "queueSize"))
         | 
| 211 | 
            +
                DeviceQueueInfo.struct_class = Types::DeviceQueueInfo
         | 
| 212 | 
            +
             | 
| 213 | 
            +
                DeviceQueueInfoList.member = Shapes::ShapeRef.new(shape: DeviceQueueInfo)
         | 
| 214 | 
            +
             | 
| 197 215 | 
             
                DeviceRetiredException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
         | 
| 198 216 | 
             
                DeviceRetiredException.struct_class = Types::DeviceRetiredException
         | 
| 199 217 |  | 
| @@ -212,11 +230,13 @@ module Aws::Braket | |
| 212 230 | 
             
                GetDeviceResponse.add_member(:device_arn, Shapes::ShapeRef.new(shape: DeviceArn, required: true, location_name: "deviceArn"))
         | 
| 213 231 | 
             
                GetDeviceResponse.add_member(:device_capabilities, Shapes::ShapeRef.new(shape: JsonValue, required: true, location_name: "deviceCapabilities", metadata: {"jsonvalue"=>true}))
         | 
| 214 232 | 
             
                GetDeviceResponse.add_member(:device_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "deviceName"))
         | 
| 233 | 
            +
                GetDeviceResponse.add_member(:device_queue_info, Shapes::ShapeRef.new(shape: DeviceQueueInfoList, location_name: "deviceQueueInfo"))
         | 
| 215 234 | 
             
                GetDeviceResponse.add_member(:device_status, Shapes::ShapeRef.new(shape: DeviceStatus, required: true, location_name: "deviceStatus"))
         | 
| 216 235 | 
             
                GetDeviceResponse.add_member(:device_type, Shapes::ShapeRef.new(shape: DeviceType, required: true, location_name: "deviceType"))
         | 
| 217 236 | 
             
                GetDeviceResponse.add_member(:provider_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "providerName"))
         | 
| 218 237 | 
             
                GetDeviceResponse.struct_class = Types::GetDeviceResponse
         | 
| 219 238 |  | 
| 239 | 
            +
                GetJobRequest.add_member(:additional_attribute_names, Shapes::ShapeRef.new(shape: HybridJobAdditionalAttributeNamesList, location: "querystring", location_name: "additionalAttributeNames"))
         | 
| 220 240 | 
             
                GetJobRequest.add_member(:job_arn, Shapes::ShapeRef.new(shape: JobArn, required: true, location: "uri", location_name: "jobArn"))
         | 
| 221 241 | 
             
                GetJobRequest.struct_class = Types::GetJobRequest
         | 
| 222 242 |  | 
| @@ -234,6 +254,7 @@ module Aws::Braket | |
| 234 254 | 
             
                GetJobResponse.add_member(:job_arn, Shapes::ShapeRef.new(shape: JobArn, required: true, location_name: "jobArn"))
         | 
| 235 255 | 
             
                GetJobResponse.add_member(:job_name, Shapes::ShapeRef.new(shape: GetJobResponseJobNameString, required: true, location_name: "jobName"))
         | 
| 236 256 | 
             
                GetJobResponse.add_member(:output_data_config, Shapes::ShapeRef.new(shape: JobOutputDataConfig, required: true, location_name: "outputDataConfig"))
         | 
| 257 | 
            +
                GetJobResponse.add_member(:queue_info, Shapes::ShapeRef.new(shape: HybridJobQueueInfo, location_name: "queueInfo"))
         | 
| 237 258 | 
             
                GetJobResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
         | 
| 238 259 | 
             
                GetJobResponse.add_member(:started_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "startedAt"))
         | 
| 239 260 | 
             
                GetJobResponse.add_member(:status, Shapes::ShapeRef.new(shape: JobPrimaryStatus, required: true, location_name: "status"))
         | 
| @@ -241,6 +262,7 @@ module Aws::Braket | |
| 241 262 | 
             
                GetJobResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
         | 
| 242 263 | 
             
                GetJobResponse.struct_class = Types::GetJobResponse
         | 
| 243 264 |  | 
| 265 | 
            +
                GetQuantumTaskRequest.add_member(:additional_attribute_names, Shapes::ShapeRef.new(shape: QuantumTaskAdditionalAttributeNamesList, location: "querystring", location_name: "additionalAttributeNames"))
         | 
| 244 266 | 
             
                GetQuantumTaskRequest.add_member(:quantum_task_arn, Shapes::ShapeRef.new(shape: QuantumTaskArn, required: true, location: "uri", location_name: "quantumTaskArn"))
         | 
| 245 267 | 
             
                GetQuantumTaskRequest.struct_class = Types::GetQuantumTaskRequest
         | 
| 246 268 |  | 
| @@ -253,11 +275,19 @@ module Aws::Braket | |
| 253 275 | 
             
                GetQuantumTaskResponse.add_member(:output_s3_bucket, Shapes::ShapeRef.new(shape: String, required: true, location_name: "outputS3Bucket"))
         | 
| 254 276 | 
             
                GetQuantumTaskResponse.add_member(:output_s3_directory, Shapes::ShapeRef.new(shape: String, required: true, location_name: "outputS3Directory"))
         | 
| 255 277 | 
             
                GetQuantumTaskResponse.add_member(:quantum_task_arn, Shapes::ShapeRef.new(shape: QuantumTaskArn, required: true, location_name: "quantumTaskArn"))
         | 
| 278 | 
            +
                GetQuantumTaskResponse.add_member(:queue_info, Shapes::ShapeRef.new(shape: QuantumTaskQueueInfo, location_name: "queueInfo"))
         | 
| 256 279 | 
             
                GetQuantumTaskResponse.add_member(:shots, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "shots"))
         | 
| 257 280 | 
             
                GetQuantumTaskResponse.add_member(:status, Shapes::ShapeRef.new(shape: QuantumTaskStatus, required: true, location_name: "status"))
         | 
| 258 281 | 
             
                GetQuantumTaskResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
         | 
| 259 282 | 
             
                GetQuantumTaskResponse.struct_class = Types::GetQuantumTaskResponse
         | 
| 260 283 |  | 
| 284 | 
            +
                HybridJobAdditionalAttributeNamesList.member = Shapes::ShapeRef.new(shape: HybridJobAdditionalAttributeName)
         | 
| 285 | 
            +
             | 
| 286 | 
            +
                HybridJobQueueInfo.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
         | 
| 287 | 
            +
                HybridJobQueueInfo.add_member(:position, Shapes::ShapeRef.new(shape: String, required: true, location_name: "position"))
         | 
| 288 | 
            +
                HybridJobQueueInfo.add_member(:queue, Shapes::ShapeRef.new(shape: QueueName, required: true, location_name: "queue"))
         | 
| 289 | 
            +
                HybridJobQueueInfo.struct_class = Types::HybridJobQueueInfo
         | 
| 290 | 
            +
             | 
| 261 291 | 
             
                HyperParameters.key = Shapes::ShapeRef.new(shape: String256)
         | 
| 262 292 | 
             
                HyperParameters.value = Shapes::ShapeRef.new(shape: HyperParametersValueString)
         | 
| 263 293 |  | 
| @@ -268,6 +298,7 @@ module Aws::Braket | |
| 268 298 | 
             
                InputFileConfig.add_member(:data_source, Shapes::ShapeRef.new(shape: DataSource, required: true, location_name: "dataSource"))
         | 
| 269 299 | 
             
                InputFileConfig.struct_class = Types::InputFileConfig
         | 
| 270 300 |  | 
| 301 | 
            +
                InstanceConfig.add_member(:instance_count, Shapes::ShapeRef.new(shape: InstanceConfigInstanceCountInteger, location_name: "instanceCount"))
         | 
| 271 302 | 
             
                InstanceConfig.add_member(:instance_type, Shapes::ShapeRef.new(shape: InstanceType, required: true, location_name: "instanceType"))
         | 
| 272 303 | 
             
                InstanceConfig.add_member(:volume_size_in_gb, Shapes::ShapeRef.new(shape: InstanceConfigVolumeSizeInGbInteger, required: true, location_name: "volumeSizeInGb"))
         | 
| 273 304 | 
             
                InstanceConfig.struct_class = Types::InstanceConfig
         | 
| @@ -311,6 +342,14 @@ module Aws::Braket | |
| 311 342 | 
             
                ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
         | 
| 312 343 | 
             
                ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
         | 
| 313 344 |  | 
| 345 | 
            +
                QuantumTaskAdditionalAttributeNamesList.member = Shapes::ShapeRef.new(shape: QuantumTaskAdditionalAttributeName)
         | 
| 346 | 
            +
             | 
| 347 | 
            +
                QuantumTaskQueueInfo.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
         | 
| 348 | 
            +
                QuantumTaskQueueInfo.add_member(:position, Shapes::ShapeRef.new(shape: String, required: true, location_name: "position"))
         | 
| 349 | 
            +
                QuantumTaskQueueInfo.add_member(:queue, Shapes::ShapeRef.new(shape: QueueName, required: true, location_name: "queue"))
         | 
| 350 | 
            +
                QuantumTaskQueueInfo.add_member(:queue_priority, Shapes::ShapeRef.new(shape: QueuePriority, location_name: "queuePriority"))
         | 
| 351 | 
            +
                QuantumTaskQueueInfo.struct_class = Types::QuantumTaskQueueInfo
         | 
| 352 | 
            +
             | 
| 314 353 | 
             
                QuantumTaskSummary.add_member(:created_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, required: true, location_name: "createdAt"))
         | 
| 315 354 | 
             
                QuantumTaskSummary.add_member(:device_arn, Shapes::ShapeRef.new(shape: DeviceArn, required: true, location_name: "deviceArn"))
         | 
| 316 355 | 
             
                QuantumTaskSummary.add_member(:ended_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "endedAt"))
         | 
| @@ -0,0 +1,66 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # WARNING ABOUT GENERATED CODE
         | 
| 4 | 
            +
            #
         | 
| 5 | 
            +
            # This file is generated. See the contributing guide for more information:
         | 
| 6 | 
            +
            # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
         | 
| 7 | 
            +
            #
         | 
| 8 | 
            +
            # WARNING ABOUT GENERATED CODE
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            module Aws::Braket
         | 
| 11 | 
            +
              # Endpoint parameters used to influence endpoints per request.
         | 
| 12 | 
            +
              #
         | 
| 13 | 
            +
              # @!attribute region
         | 
| 14 | 
            +
              #   The AWS region used to dispatch the request.
         | 
| 15 | 
            +
              #
         | 
| 16 | 
            +
              #   @return [String]
         | 
| 17 | 
            +
              #
         | 
| 18 | 
            +
              # @!attribute use_dual_stack
         | 
| 19 | 
            +
              #   When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
         | 
| 20 | 
            +
              #
         | 
| 21 | 
            +
              #   @return [Boolean]
         | 
| 22 | 
            +
              #
         | 
| 23 | 
            +
              # @!attribute use_fips
         | 
| 24 | 
            +
              #   When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
         | 
| 25 | 
            +
              #
         | 
| 26 | 
            +
              #   @return [Boolean]
         | 
| 27 | 
            +
              #
         | 
| 28 | 
            +
              # @!attribute endpoint
         | 
| 29 | 
            +
              #   Override the endpoint used to send this request
         | 
| 30 | 
            +
              #
         | 
| 31 | 
            +
              #   @return [String]
         | 
| 32 | 
            +
              #
         | 
| 33 | 
            +
              EndpointParameters = Struct.new(
         | 
| 34 | 
            +
                :region,
         | 
| 35 | 
            +
                :use_dual_stack,
         | 
| 36 | 
            +
                :use_fips,
         | 
| 37 | 
            +
                :endpoint,
         | 
| 38 | 
            +
              ) do
         | 
| 39 | 
            +
                include Aws::Structure
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                # @api private
         | 
| 42 | 
            +
                class << self
         | 
| 43 | 
            +
                  PARAM_MAP = {
         | 
| 44 | 
            +
                    'Region' => :region,
         | 
| 45 | 
            +
                    'UseDualStack' => :use_dual_stack,
         | 
| 46 | 
            +
                    'UseFIPS' => :use_fips,
         | 
| 47 | 
            +
                    'Endpoint' => :endpoint,
         | 
| 48 | 
            +
                  }.freeze
         | 
| 49 | 
            +
                end
         | 
| 50 | 
            +
             | 
| 51 | 
            +
                def initialize(options = {})
         | 
| 52 | 
            +
                  self[:region] = options[:region]
         | 
| 53 | 
            +
                  self[:use_dual_stack] = options[:use_dual_stack]
         | 
| 54 | 
            +
                  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
         | 
| 55 | 
            +
                  if self[:use_dual_stack].nil?
         | 
| 56 | 
            +
                    raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
         | 
| 57 | 
            +
                  end
         | 
| 58 | 
            +
                  self[:use_fips] = options[:use_fips]
         | 
| 59 | 
            +
                  self[:use_fips] = false if self[:use_fips].nil?
         | 
| 60 | 
            +
                  if self[:use_fips].nil?
         | 
| 61 | 
            +
                    raise ArgumentError, "Missing required EndpointParameter: :use_fips"
         | 
| 62 | 
            +
                  end
         | 
| 63 | 
            +
                  self[:endpoint] = options[:endpoint]
         | 
| 64 | 
            +
                end
         | 
| 65 | 
            +
              end
         | 
| 66 | 
            +
            end
         | 
| @@ -0,0 +1,54 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # WARNING ABOUT GENERATED CODE
         | 
| 4 | 
            +
            #
         | 
| 5 | 
            +
            # This file is generated. See the contributing guide for more information:
         | 
| 6 | 
            +
            # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
         | 
| 7 | 
            +
            #
         | 
| 8 | 
            +
            # WARNING ABOUT GENERATED CODE
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            module Aws::Braket
         | 
| 11 | 
            +
              class EndpointProvider
         | 
| 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 Aws::Endpoints::Matchers.set?(endpoint)
         | 
| 18 | 
            +
                    if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
         | 
| 19 | 
            +
                      raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
         | 
| 20 | 
            +
                    end
         | 
| 21 | 
            +
                    if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         | 
| 22 | 
            +
                      raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
         | 
| 23 | 
            +
                    end
         | 
| 24 | 
            +
                    return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
         | 
| 25 | 
            +
                  end
         | 
| 26 | 
            +
                  if Aws::Endpoints::Matchers.set?(region)
         | 
| 27 | 
            +
                    if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
         | 
| 28 | 
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         | 
| 29 | 
            +
                        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"))
         | 
| 30 | 
            +
                          return Aws::Endpoints::Endpoint.new(url: "https://braket-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
         | 
| 31 | 
            +
                        end
         | 
| 32 | 
            +
                        raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
         | 
| 33 | 
            +
                      end
         | 
| 34 | 
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
         | 
| 35 | 
            +
                        if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
         | 
| 36 | 
            +
                          return Aws::Endpoints::Endpoint.new(url: "https://braket-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
         | 
| 37 | 
            +
                        end
         | 
| 38 | 
            +
                        raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
         | 
| 39 | 
            +
                      end
         | 
| 40 | 
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         | 
| 41 | 
            +
                        if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
         | 
| 42 | 
            +
                          return Aws::Endpoints::Endpoint.new(url: "https://braket.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
         | 
| 43 | 
            +
                        end
         | 
| 44 | 
            +
                        raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
         | 
| 45 | 
            +
                      end
         | 
| 46 | 
            +
                      return Aws::Endpoints::Endpoint.new(url: "https://braket.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
         | 
| 47 | 
            +
                    end
         | 
| 48 | 
            +
                  end
         | 
| 49 | 
            +
                  raise ArgumentError, "Invalid Configuration: Missing Region"
         | 
| 50 | 
            +
                  raise ArgumentError, 'No endpoint could be resolved'
         | 
| 51 | 
            +
             | 
| 52 | 
            +
                end
         | 
| 53 | 
            +
              end
         | 
| 54 | 
            +
            end
         |