aws-sdk-lexmodelsv2 1.4.0 → 1.8.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dbd5c99d5bfb133ba82cd3ef06fcf3b460659d217b4977a4f22dfb86f0df8ab5
4
- data.tar.gz: 7c10d9d7a366ca1cd919883e8ccb38c1edbedf38bf5b416173e98377c7e52fd5
3
+ metadata.gz: d399d4f519727ff4965db993826b8c2dbdc77800e2e0e2489532700989b72537
4
+ data.tar.gz: 943672b68540284c061cf5f5708de88ef52da705f10134afbef39b4a8c42032e
5
5
  SHA512:
6
- metadata.gz: c99eb903424dff1e76991a0aba3fdda20c3a2d3eb7303e4742f20962733c7f9357f38e833c3ec9f62b49a741a9dc9f5222137ccd07886cec20926f8246d0898c
7
- data.tar.gz: dc30dd61ddd22cc274dbb59a4b7631e5d7982769d7a0a17246a69c4a3e01afba5b8e3ea9e7d159f2d75193cead2cc7409f1596669d812a122b1c3e20b15914de
6
+ metadata.gz: fae6dafd25b9672a6e00594216adf7ff0c85ff63bd3e1291e770defab96f4b4486602961dcb0d3c1b65cd6ae6f6ff5d45b8313b6f8f6243a808a8f228f85478f
7
+ data.tar.gz: df0093c49cf7abadc67924ee60840658b121b0d95f59d08268c9f5469ca3e71ca412c64ea878446099d09c3ded5c11f711229fac21503b404e911e95c04a3ea3
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.8.0 (2021-07-30)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.7.0 (2021-07-28)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.6.0 (2021-07-27)
15
+ ------------------
16
+
17
+ * Feature - Add waiters that automatically poll for resource status for asynchronous operations, such as building a bot
18
+
19
+ 1.5.0 (2021-06-15)
20
+ ------------------
21
+
22
+ * Feature - This release adds support for Multi Valued slots in Amazon Lex V2 APIs for model building
23
+
4
24
  1.4.0 (2021-05-20)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.4.0
1
+ 1.8.0
@@ -15,6 +15,7 @@ require_relative 'aws-sdk-lexmodelsv2/types'
15
15
  require_relative 'aws-sdk-lexmodelsv2/client_api'
16
16
  require_relative 'aws-sdk-lexmodelsv2/client'
17
17
  require_relative 'aws-sdk-lexmodelsv2/errors'
18
+ require_relative 'aws-sdk-lexmodelsv2/waiters'
18
19
  require_relative 'aws-sdk-lexmodelsv2/resource'
19
20
  require_relative 'aws-sdk-lexmodelsv2/customizations'
20
21
 
@@ -48,6 +49,6 @@ require_relative 'aws-sdk-lexmodelsv2/customizations'
48
49
  # @!group service
49
50
  module Aws::LexModelsV2
50
51
 
51
- GEM_VERSION = '1.4.0'
52
+ GEM_VERSION = '1.8.0'
52
53
 
53
54
  end
@@ -1354,8 +1354,8 @@ module Aws::LexModelsV2
1354
1354
  # resource policy exists, the statement is added to the current resource
1355
1355
  # policy. If a policy doesn't exist, a new policy is created.
1356
1356
  #
1357
- # You can create a resource policy statement that allows cross-account
1358
- # access.
1357
+ # You can't create a resource policy statement that allows
1358
+ # cross-account access.
1359
1359
  #
1360
1360
  # @option params [required, String] :resource_arn
1361
1361
  # The Amazon Resource Name (ARN) of the bot or bot alias that the
@@ -1501,6 +1501,15 @@ module Aws::LexModelsV2
1501
1501
  # @option params [required, String] :intent_id
1502
1502
  # The identifier of the intent that contains the slot.
1503
1503
  #
1504
+ # @option params [Types::MultipleValuesSetting] :multiple_values_setting
1505
+ # Indicates whether the slot returns multiple values in one response.
1506
+ # Multi-value slots are only available in the en-US locale. If you set
1507
+ # this value to `true` in any other locale, Amazon Lex throws a
1508
+ # `ValidationException`.
1509
+ #
1510
+ # If the `multipleValuesSetting` is not set, the default value is
1511
+ # `false`.
1512
+ #
1504
1513
  # @return [Types::CreateSlotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1505
1514
  #
1506
1515
  # * {Types::CreateSlotResponse#slot_id #slot_id} => String
@@ -1514,6 +1523,7 @@ module Aws::LexModelsV2
1514
1523
  # * {Types::CreateSlotResponse#locale_id #locale_id} => String
1515
1524
  # * {Types::CreateSlotResponse#intent_id #intent_id} => String
1516
1525
  # * {Types::CreateSlotResponse#creation_date_time #creation_date_time} => Time
1526
+ # * {Types::CreateSlotResponse#multiple_values_setting #multiple_values_setting} => Types::MultipleValuesSetting
1517
1527
  #
1518
1528
  # @example Request syntax with placeholder values
1519
1529
  #
@@ -1760,6 +1770,9 @@ module Aws::LexModelsV2
1760
1770
  # bot_version: "DraftBotVersion", # required
1761
1771
  # locale_id: "LocaleId", # required
1762
1772
  # intent_id: "Id", # required
1773
+ # multiple_values_setting: {
1774
+ # allow_multiple_values: false,
1775
+ # },
1763
1776
  # })
1764
1777
  #
1765
1778
  # @example Response structure
@@ -1866,6 +1879,7 @@ module Aws::LexModelsV2
1866
1879
  # resp.locale_id #=> String
1867
1880
  # resp.intent_id #=> String
1868
1881
  # resp.creation_date_time #=> Time
1882
+ # resp.multiple_values_setting.allow_multiple_values #=> Boolean
1869
1883
  #
1870
1884
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/CreateSlot AWS API Documentation
1871
1885
  #
@@ -2527,6 +2541,11 @@ module Aws::LexModelsV2
2527
2541
  # resp.creation_date_time #=> Time
2528
2542
  # resp.last_updated_date_time #=> Time
2529
2543
  #
2544
+ #
2545
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2546
+ #
2547
+ # * bot_available
2548
+ #
2530
2549
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeBot AWS API Documentation
2531
2550
  #
2532
2551
  # @overload describe_bot(params = {})
@@ -2595,6 +2614,11 @@ module Aws::LexModelsV2
2595
2614
  # resp.creation_date_time #=> Time
2596
2615
  # resp.last_updated_date_time #=> Time
2597
2616
  #
2617
+ #
2618
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2619
+ #
2620
+ # * bot_alias_available
2621
+ #
2598
2622
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeBotAlias AWS API Documentation
2599
2623
  #
2600
2624
  # @overload describe_bot_alias(params = {})
@@ -2668,6 +2692,13 @@ module Aws::LexModelsV2
2668
2692
  # resp.bot_locale_history_events[0].event #=> String
2669
2693
  # resp.bot_locale_history_events[0].event_date #=> Time
2670
2694
  #
2695
+ #
2696
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2697
+ #
2698
+ # * bot_locale_built
2699
+ # * bot_locale_created
2700
+ # * bot_locale_express_testing_available
2701
+ #
2671
2702
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeBotLocale AWS API Documentation
2672
2703
  #
2673
2704
  # @overload describe_bot_locale(params = {})
@@ -2720,6 +2751,11 @@ module Aws::LexModelsV2
2720
2751
  # resp.failure_reasons[0] #=> String
2721
2752
  # resp.creation_date_time #=> Time
2722
2753
  #
2754
+ #
2755
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2756
+ #
2757
+ # * bot_version_available
2758
+ #
2723
2759
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeBotVersion AWS API Documentation
2724
2760
  #
2725
2761
  # @overload describe_bot_version(params = {})
@@ -2767,6 +2803,11 @@ module Aws::LexModelsV2
2767
2803
  # resp.creation_date_time #=> Time
2768
2804
  # resp.last_updated_date_time #=> Time
2769
2805
  #
2806
+ #
2807
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2808
+ #
2809
+ # * bot_export_completed
2810
+ #
2770
2811
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeExport AWS API Documentation
2771
2812
  #
2772
2813
  # @overload describe_export(params = {})
@@ -2824,6 +2865,11 @@ module Aws::LexModelsV2
2824
2865
  # resp.creation_date_time #=> Time
2825
2866
  # resp.last_updated_date_time #=> Time
2826
2867
  #
2868
+ #
2869
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2870
+ #
2871
+ # * bot_import_completed
2872
+ #
2827
2873
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeImport AWS API Documentation
2828
2874
  #
2829
2875
  # @overload describe_import(params = {})
@@ -3054,6 +3100,7 @@ module Aws::LexModelsV2
3054
3100
  # * {Types::DescribeSlotResponse#intent_id #intent_id} => String
3055
3101
  # * {Types::DescribeSlotResponse#creation_date_time #creation_date_time} => Time
3056
3102
  # * {Types::DescribeSlotResponse#last_updated_date_time #last_updated_date_time} => Time
3103
+ # * {Types::DescribeSlotResponse#multiple_values_setting #multiple_values_setting} => Types::MultipleValuesSetting
3057
3104
  #
3058
3105
  # @example Request syntax with placeholder values
3059
3106
  #
@@ -3170,6 +3217,7 @@ module Aws::LexModelsV2
3170
3217
  # resp.intent_id #=> String
3171
3218
  # resp.creation_date_time #=> Time
3172
3219
  # resp.last_updated_date_time #=> Time
3220
+ # resp.multiple_values_setting.allow_multiple_values #=> Boolean
3173
3221
  #
3174
3222
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeSlot AWS API Documentation
3175
3223
  #
@@ -4592,7 +4640,12 @@ module Aws::LexModelsV2
4592
4640
  req.send_request(options)
4593
4641
  end
4594
4642
 
4595
- # Updates the password used to encrypt an export zip archive.
4643
+ # Updates the password used to protect an export zip archive.
4644
+ #
4645
+ # The password is not required. If you don't supply a password, Amazon
4646
+ # Lex generates a zip file that is not protected by a password. This is
4647
+ # the archive that is available at the pre-signed S3 URL provided by the
4648
+ # operation.
4596
4649
  #
4597
4650
  # @option params [required, String] :export_id
4598
4651
  # The unique identifier Amazon Lex assigned to the export.
@@ -5131,6 +5184,15 @@ module Aws::LexModelsV2
5131
5184
  # @option params [required, String] :intent_id
5132
5185
  # The identifier of the intent that contains the slot.
5133
5186
  #
5187
+ # @option params [Types::MultipleValuesSetting] :multiple_values_setting
5188
+ # Determines whether the slot accepts multiple values in one response.
5189
+ # Multiple value slots are only available in the en-US locale. If you
5190
+ # set this value to `true` in any other locale, Amazon Lex throws a
5191
+ # `ValidationException`.
5192
+ #
5193
+ # If the `multipleValuesSetting` is not set, the default value is
5194
+ # `false`.
5195
+ #
5134
5196
  # @return [Types::UpdateSlotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5135
5197
  #
5136
5198
  # * {Types::UpdateSlotResponse#slot_id #slot_id} => String
@@ -5145,6 +5207,7 @@ module Aws::LexModelsV2
5145
5207
  # * {Types::UpdateSlotResponse#intent_id #intent_id} => String
5146
5208
  # * {Types::UpdateSlotResponse#creation_date_time #creation_date_time} => Time
5147
5209
  # * {Types::UpdateSlotResponse#last_updated_date_time #last_updated_date_time} => Time
5210
+ # * {Types::UpdateSlotResponse#multiple_values_setting #multiple_values_setting} => Types::MultipleValuesSetting
5148
5211
  #
5149
5212
  # @example Request syntax with placeholder values
5150
5213
  #
@@ -5392,6 +5455,9 @@ module Aws::LexModelsV2
5392
5455
  # bot_version: "DraftBotVersion", # required
5393
5456
  # locale_id: "LocaleId", # required
5394
5457
  # intent_id: "Id", # required
5458
+ # multiple_values_setting: {
5459
+ # allow_multiple_values: false,
5460
+ # },
5395
5461
  # })
5396
5462
  #
5397
5463
  # @example Response structure
@@ -5499,6 +5565,7 @@ module Aws::LexModelsV2
5499
5565
  # resp.intent_id #=> String
5500
5566
  # resp.creation_date_time #=> Time
5501
5567
  # resp.last_updated_date_time #=> Time
5568
+ # resp.multiple_values_setting.allow_multiple_values #=> Boolean
5502
5569
  #
5503
5570
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlot AWS API Documentation
5504
5571
  #
@@ -5631,14 +5698,141 @@ module Aws::LexModelsV2
5631
5698
  params: params,
5632
5699
  config: config)
5633
5700
  context[:gem_name] = 'aws-sdk-lexmodelsv2'
5634
- context[:gem_version] = '1.4.0'
5701
+ context[:gem_version] = '1.8.0'
5635
5702
  Seahorse::Client::Request.new(handlers, context)
5636
5703
  end
5637
5704
 
5705
+ # Polls an API operation until a resource enters a desired state.
5706
+ #
5707
+ # ## Basic Usage
5708
+ #
5709
+ # A waiter will call an API operation until:
5710
+ #
5711
+ # * It is successful
5712
+ # * It enters a terminal state
5713
+ # * It makes the maximum number of attempts
5714
+ #
5715
+ # In between attempts, the waiter will sleep.
5716
+ #
5717
+ # # polls in a loop, sleeping between attempts
5718
+ # client.wait_until(waiter_name, params)
5719
+ #
5720
+ # ## Configuration
5721
+ #
5722
+ # You can configure the maximum number of polling attempts, and the
5723
+ # delay (in seconds) between each polling attempt. You can pass
5724
+ # configuration as the final arguments hash.
5725
+ #
5726
+ # # poll for ~25 seconds
5727
+ # client.wait_until(waiter_name, params, {
5728
+ # max_attempts: 5,
5729
+ # delay: 5,
5730
+ # })
5731
+ #
5732
+ # ## Callbacks
5733
+ #
5734
+ # You can be notified before each polling attempt and before each
5735
+ # delay. If you throw `:success` or `:failure` from these callbacks,
5736
+ # it will terminate the waiter.
5737
+ #
5738
+ # started_at = Time.now
5739
+ # client.wait_until(waiter_name, params, {
5740
+ #
5741
+ # # disable max attempts
5742
+ # max_attempts: nil,
5743
+ #
5744
+ # # poll for 1 hour, instead of a number of attempts
5745
+ # before_wait: -> (attempts, response) do
5746
+ # throw :failure if Time.now - started_at > 3600
5747
+ # end
5748
+ # })
5749
+ #
5750
+ # ## Handling Errors
5751
+ #
5752
+ # When a waiter is unsuccessful, it will raise an error.
5753
+ # All of the failure errors extend from
5754
+ # {Aws::Waiters::Errors::WaiterFailed}.
5755
+ #
5756
+ # begin
5757
+ # client.wait_until(...)
5758
+ # rescue Aws::Waiters::Errors::WaiterFailed
5759
+ # # resource did not enter the desired state in time
5760
+ # end
5761
+ #
5762
+ # ## Valid Waiters
5763
+ #
5764
+ # The following table lists the valid waiter names, the operations they call,
5765
+ # and the default `:delay` and `:max_attempts` values.
5766
+ #
5767
+ # | waiter_name | params | :delay | :max_attempts |
5768
+ # | ------------------------------------ | ----------------------------- | -------- | ------------- |
5769
+ # | bot_alias_available | {Client#describe_bot_alias} | 10 | 35 |
5770
+ # | bot_available | {Client#describe_bot} | 10 | 35 |
5771
+ # | bot_export_completed | {Client#describe_export} | 10 | 35 |
5772
+ # | bot_import_completed | {Client#describe_import} | 10 | 35 |
5773
+ # | bot_locale_built | {Client#describe_bot_locale} | 10 | 35 |
5774
+ # | bot_locale_created | {Client#describe_bot_locale} | 10 | 35 |
5775
+ # | bot_locale_express_testing_available | {Client#describe_bot_locale} | 10 | 35 |
5776
+ # | bot_version_available | {Client#describe_bot_version} | 10 | 35 |
5777
+ #
5778
+ # @raise [Errors::FailureStateError] Raised when the waiter terminates
5779
+ # because the waiter has entered a state that it will not transition
5780
+ # out of, preventing success.
5781
+ #
5782
+ # @raise [Errors::TooManyAttemptsError] Raised when the configured
5783
+ # maximum number of attempts have been made, and the waiter is not
5784
+ # yet successful.
5785
+ #
5786
+ # @raise [Errors::UnexpectedError] Raised when an error is encounted
5787
+ # while polling for a resource that is not expected.
5788
+ #
5789
+ # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
5790
+ # for an unknown state.
5791
+ #
5792
+ # @return [Boolean] Returns `true` if the waiter was successful.
5793
+ # @param [Symbol] waiter_name
5794
+ # @param [Hash] params ({})
5795
+ # @param [Hash] options ({})
5796
+ # @option options [Integer] :max_attempts
5797
+ # @option options [Integer] :delay
5798
+ # @option options [Proc] :before_attempt
5799
+ # @option options [Proc] :before_wait
5800
+ def wait_until(waiter_name, params = {}, options = {})
5801
+ w = waiter(waiter_name, options)
5802
+ yield(w.waiter) if block_given? # deprecated
5803
+ w.wait(params)
5804
+ end
5805
+
5638
5806
  # @api private
5639
5807
  # @deprecated
5640
5808
  def waiter_names
5641
- []
5809
+ waiters.keys
5810
+ end
5811
+
5812
+ private
5813
+
5814
+ # @param [Symbol] waiter_name
5815
+ # @param [Hash] options ({})
5816
+ def waiter(waiter_name, options = {})
5817
+ waiter_class = waiters[waiter_name]
5818
+ if waiter_class
5819
+ waiter_class.new(options.merge(client: self))
5820
+ else
5821
+ raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
5822
+ end
5823
+ end
5824
+
5825
+ def waiters
5826
+ {
5827
+ bot_alias_available: Waiters::BotAliasAvailable,
5828
+ bot_available: Waiters::BotAvailable,
5829
+ bot_export_completed: Waiters::BotExportCompleted,
5830
+ bot_import_completed: Waiters::BotImportCompleted,
5831
+ bot_locale_built: Waiters::BotLocaleBuilt,
5832
+ bot_locale_created: Waiters::BotLocaleCreated,
5833
+ bot_locale_express_testing_available: Waiters::BotLocaleExpressTestingAvailable,
5834
+ bot_version_available: Waiters::BotVersionAvailable
5835
+ }
5642
5836
  end
5643
5837
 
5644
5838
  class << self
@@ -243,6 +243,7 @@ module Aws::LexModelsV2
243
243
  MessageGroup = Shapes::StructureShape.new(name: 'MessageGroup')
244
244
  MessageGroupsList = Shapes::ListShape.new(name: 'MessageGroupsList')
245
245
  MessageVariationsList = Shapes::ListShape.new(name: 'MessageVariationsList')
246
+ MultipleValuesSetting = Shapes::StructureShape.new(name: 'MultipleValuesSetting')
246
247
  Name = Shapes::StringShape.new(name: 'Name')
247
248
  NextToken = Shapes::StringShape.new(name: 'NextToken')
248
249
  NumericalBotVersion = Shapes::StringShape.new(name: 'NumericalBotVersion')
@@ -691,6 +692,7 @@ module Aws::LexModelsV2
691
692
  CreateSlotRequest.add_member(:bot_version, Shapes::ShapeRef.new(shape: DraftBotVersion, required: true, location: "uri", location_name: "botVersion"))
692
693
  CreateSlotRequest.add_member(:locale_id, Shapes::ShapeRef.new(shape: LocaleId, required: true, location: "uri", location_name: "localeId"))
693
694
  CreateSlotRequest.add_member(:intent_id, Shapes::ShapeRef.new(shape: Id, required: true, location: "uri", location_name: "intentId"))
695
+ CreateSlotRequest.add_member(:multiple_values_setting, Shapes::ShapeRef.new(shape: MultipleValuesSetting, location_name: "multipleValuesSetting"))
694
696
  CreateSlotRequest.struct_class = Types::CreateSlotRequest
695
697
 
696
698
  CreateSlotResponse.add_member(:slot_id, Shapes::ShapeRef.new(shape: Id, location_name: "slotId"))
@@ -704,6 +706,7 @@ module Aws::LexModelsV2
704
706
  CreateSlotResponse.add_member(:locale_id, Shapes::ShapeRef.new(shape: LocaleId, location_name: "localeId"))
705
707
  CreateSlotResponse.add_member(:intent_id, Shapes::ShapeRef.new(shape: Id, location_name: "intentId"))
706
708
  CreateSlotResponse.add_member(:creation_date_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDateTime"))
709
+ CreateSlotResponse.add_member(:multiple_values_setting, Shapes::ShapeRef.new(shape: MultipleValuesSetting, location_name: "multipleValuesSetting"))
707
710
  CreateSlotResponse.struct_class = Types::CreateSlotResponse
708
711
 
709
712
  CreateSlotTypeRequest.add_member(:slot_type_name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "slotTypeName"))
@@ -980,6 +983,7 @@ module Aws::LexModelsV2
980
983
  DescribeSlotResponse.add_member(:intent_id, Shapes::ShapeRef.new(shape: Id, location_name: "intentId"))
981
984
  DescribeSlotResponse.add_member(:creation_date_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDateTime"))
982
985
  DescribeSlotResponse.add_member(:last_updated_date_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastUpdatedDateTime"))
986
+ DescribeSlotResponse.add_member(:multiple_values_setting, Shapes::ShapeRef.new(shape: MultipleValuesSetting, location_name: "multipleValuesSetting"))
983
987
  DescribeSlotResponse.struct_class = Types::DescribeSlotResponse
984
988
 
985
989
  DescribeSlotTypeRequest.add_member(:slot_type_id, Shapes::ShapeRef.new(shape: Id, required: true, location: "uri", location_name: "slotTypeId"))
@@ -1279,6 +1283,9 @@ module Aws::LexModelsV2
1279
1283
 
1280
1284
  MessageVariationsList.member = Shapes::ShapeRef.new(shape: Message)
1281
1285
 
1286
+ MultipleValuesSetting.add_member(:allow_multiple_values, Shapes::ShapeRef.new(shape: Boolean, location_name: "allowMultipleValues"))
1287
+ MultipleValuesSetting.struct_class = Types::MultipleValuesSetting
1288
+
1282
1289
  ObfuscationSetting.add_member(:obfuscation_setting_type, Shapes::ShapeRef.new(shape: ObfuscationSettingType, required: true, location_name: "obfuscationSettingType"))
1283
1290
  ObfuscationSetting.struct_class = Types::ObfuscationSetting
1284
1291
 
@@ -1596,6 +1603,7 @@ module Aws::LexModelsV2
1596
1603
  UpdateSlotRequest.add_member(:bot_version, Shapes::ShapeRef.new(shape: DraftBotVersion, required: true, location: "uri", location_name: "botVersion"))
1597
1604
  UpdateSlotRequest.add_member(:locale_id, Shapes::ShapeRef.new(shape: LocaleId, required: true, location: "uri", location_name: "localeId"))
1598
1605
  UpdateSlotRequest.add_member(:intent_id, Shapes::ShapeRef.new(shape: Id, required: true, location: "uri", location_name: "intentId"))
1606
+ UpdateSlotRequest.add_member(:multiple_values_setting, Shapes::ShapeRef.new(shape: MultipleValuesSetting, location_name: "multipleValuesSetting"))
1599
1607
  UpdateSlotRequest.struct_class = Types::UpdateSlotRequest
1600
1608
 
1601
1609
  UpdateSlotResponse.add_member(:slot_id, Shapes::ShapeRef.new(shape: Id, location_name: "slotId"))
@@ -1610,6 +1618,7 @@ module Aws::LexModelsV2
1610
1618
  UpdateSlotResponse.add_member(:intent_id, Shapes::ShapeRef.new(shape: Id, location_name: "intentId"))
1611
1619
  UpdateSlotResponse.add_member(:creation_date_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDateTime"))
1612
1620
  UpdateSlotResponse.add_member(:last_updated_date_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastUpdatedDateTime"))
1621
+ UpdateSlotResponse.add_member(:multiple_values_setting, Shapes::ShapeRef.new(shape: MultipleValuesSetting, location_name: "multipleValuesSetting"))
1613
1622
  UpdateSlotResponse.struct_class = Types::UpdateSlotResponse
1614
1623
 
1615
1624
  UpdateSlotTypeRequest.add_member(:slot_type_id, Shapes::ShapeRef.new(shape: Id, required: true, location: "uri", location_name: "slotTypeId"))
@@ -2505,6 +2505,9 @@ module Aws::LexModelsV2
2505
2505
  # bot_version: "DraftBotVersion", # required
2506
2506
  # locale_id: "LocaleId", # required
2507
2507
  # intent_id: "Id", # required
2508
+ # multiple_values_setting: {
2509
+ # allow_multiple_values: false,
2510
+ # },
2508
2511
  # }
2509
2512
  #
2510
2513
  # @!attribute [rw] slot_name
@@ -2561,6 +2564,16 @@ module Aws::LexModelsV2
2561
2564
  # The identifier of the intent that contains the slot.
2562
2565
  # @return [String]
2563
2566
  #
2567
+ # @!attribute [rw] multiple_values_setting
2568
+ # Indicates whether the slot returns multiple values in one response.
2569
+ # Multi-value slots are only available in the en-US locale. If you set
2570
+ # this value to `true` in any other locale, Amazon Lex throws a
2571
+ # `ValidationException`.
2572
+ #
2573
+ # If the `multipleValuesSetting` is not set, the default value is
2574
+ # `false`.
2575
+ # @return [Types::MultipleValuesSetting]
2576
+ #
2564
2577
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/CreateSlotRequest AWS API Documentation
2565
2578
  #
2566
2579
  class CreateSlotRequest < Struct.new(
@@ -2572,7 +2585,8 @@ module Aws::LexModelsV2
2572
2585
  :bot_id,
2573
2586
  :bot_version,
2574
2587
  :locale_id,
2575
- :intent_id)
2588
+ :intent_id,
2589
+ :multiple_values_setting)
2576
2590
  SENSITIVE = []
2577
2591
  include Aws::Structure
2578
2592
  end
@@ -2623,6 +2637,10 @@ module Aws::LexModelsV2
2623
2637
  # The timestamp of the date and time that the slot was created.
2624
2638
  # @return [Time]
2625
2639
  #
2640
+ # @!attribute [rw] multiple_values_setting
2641
+ # Indicates whether the slot returns multiple values in one response.
2642
+ # @return [Types::MultipleValuesSetting]
2643
+ #
2626
2644
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/CreateSlotResponse AWS API Documentation
2627
2645
  #
2628
2646
  class CreateSlotResponse < Struct.new(
@@ -2636,7 +2654,8 @@ module Aws::LexModelsV2
2636
2654
  :bot_version,
2637
2655
  :locale_id,
2638
2656
  :intent_id,
2639
- :creation_date_time)
2657
+ :creation_date_time,
2658
+ :multiple_values_setting)
2640
2659
  SENSITIVE = []
2641
2660
  include Aws::Structure
2642
2661
  end
@@ -4288,6 +4307,14 @@ module Aws::LexModelsV2
4288
4307
  # A timestamp of the date and time that the slot was last updated.
4289
4308
  # @return [Time]
4290
4309
  #
4310
+ # @!attribute [rw] multiple_values_setting
4311
+ # Indicates whether the slot accepts multiple values in a single
4312
+ # utterance.
4313
+ #
4314
+ # If the `multipleValuesSetting` is not set, the default value is
4315
+ # `false`.
4316
+ # @return [Types::MultipleValuesSetting]
4317
+ #
4291
4318
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/DescribeSlotResponse AWS API Documentation
4292
4319
  #
4293
4320
  class DescribeSlotResponse < Struct.new(
@@ -4302,7 +4329,8 @@ module Aws::LexModelsV2
4302
4329
  :locale_id,
4303
4330
  :intent_id,
4304
4331
  :creation_date_time,
4305
- :last_updated_date_time)
4332
+ :last_updated_date_time,
4333
+ :multiple_values_setting)
4306
4334
  SENSITIVE = []
4307
4335
  include Aws::Structure
4308
4336
  end
@@ -6464,6 +6492,36 @@ module Aws::LexModelsV2
6464
6492
  include Aws::Structure
6465
6493
  end
6466
6494
 
6495
+ # Indicates whether a slot can return multiple values.
6496
+ #
6497
+ # @note When making an API call, you may pass MultipleValuesSetting
6498
+ # data as a hash:
6499
+ #
6500
+ # {
6501
+ # allow_multiple_values: false,
6502
+ # }
6503
+ #
6504
+ # @!attribute [rw] allow_multiple_values
6505
+ # Indicates whether a slot can return multiple values. When `true`,
6506
+ # the slot may return more than one value in a response. When `false`,
6507
+ # the slot returns only a single value.
6508
+ #
6509
+ # Multi-value slots are only available in the en-US locale. If you set
6510
+ # this value to `true` in any other locale, Amazon Lex throws a
6511
+ # `ValidationException`.
6512
+ #
6513
+ # If the `allowMutlipleValues` is not set, the default value is
6514
+ # `false`.
6515
+ # @return [Boolean]
6516
+ #
6517
+ # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/MultipleValuesSetting AWS API Documentation
6518
+ #
6519
+ class MultipleValuesSetting < Struct.new(
6520
+ :allow_multiple_values)
6521
+ SENSITIVE = []
6522
+ include Aws::Structure
6523
+ end
6524
+
6467
6525
  # Determines whether Amazon Lex obscures slot values in conversation
6468
6526
  # logs.
6469
6527
  #
@@ -9124,6 +9182,9 @@ module Aws::LexModelsV2
9124
9182
  # bot_version: "DraftBotVersion", # required
9125
9183
  # locale_id: "LocaleId", # required
9126
9184
  # intent_id: "Id", # required
9185
+ # multiple_values_setting: {
9186
+ # allow_multiple_values: false,
9187
+ # },
9127
9188
  # }
9128
9189
  #
9129
9190
  # @!attribute [rw] slot_id
@@ -9176,6 +9237,16 @@ module Aws::LexModelsV2
9176
9237
  # The identifier of the intent that contains the slot.
9177
9238
  # @return [String]
9178
9239
  #
9240
+ # @!attribute [rw] multiple_values_setting
9241
+ # Determines whether the slot accepts multiple values in one response.
9242
+ # Multiple value slots are only available in the en-US locale. If you
9243
+ # set this value to `true` in any other locale, Amazon Lex throws a
9244
+ # `ValidationException`.
9245
+ #
9246
+ # If the `multipleValuesSetting` is not set, the default value is
9247
+ # `false`.
9248
+ # @return [Types::MultipleValuesSetting]
9249
+ #
9179
9250
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlotRequest AWS API Documentation
9180
9251
  #
9181
9252
  class UpdateSlotRequest < Struct.new(
@@ -9188,7 +9259,8 @@ module Aws::LexModelsV2
9188
9259
  :bot_id,
9189
9260
  :bot_version,
9190
9261
  :locale_id,
9191
- :intent_id)
9262
+ :intent_id,
9263
+ :multiple_values_setting)
9192
9264
  SENSITIVE = []
9193
9265
  include Aws::Structure
9194
9266
  end
@@ -9245,6 +9317,10 @@ module Aws::LexModelsV2
9245
9317
  # The timestamp of the date and time that the slot was last updated.
9246
9318
  # @return [Time]
9247
9319
  #
9320
+ # @!attribute [rw] multiple_values_setting
9321
+ # Indicates whether the slot accepts multiple values in one response.
9322
+ # @return [Types::MultipleValuesSetting]
9323
+ #
9248
9324
  # @see http://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlotResponse AWS API Documentation
9249
9325
  #
9250
9326
  class UpdateSlotResponse < Struct.new(
@@ -9259,7 +9335,8 @@ module Aws::LexModelsV2
9259
9335
  :locale_id,
9260
9336
  :intent_id,
9261
9337
  :creation_date_time,
9262
- :last_updated_date_time)
9338
+ :last_updated_date_time,
9339
+ :multiple_values_setting)
9263
9340
  SENSITIVE = []
9264
9341
  include Aws::Structure
9265
9342
  end
@@ -0,0 +1,532 @@
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
+ require 'aws-sdk-core/waiters'
11
+
12
+ module Aws::LexModelsV2
13
+ # Waiters are utility methods that poll for a particular state to occur
14
+ # on a client. Waiters can fail after a number of attempts at a polling
15
+ # interval defined for the service client.
16
+ #
17
+ # For a list of operations that can be waited for and the
18
+ # client methods called for each operation, see the table below or the
19
+ # {Client#wait_until} field documentation for the {Client}.
20
+ #
21
+ # # Invoking a Waiter
22
+ # To invoke a waiter, call #wait_until on a {Client}. The first parameter
23
+ # is the waiter name, which is specific to the service client and indicates
24
+ # which operation is being waited for. The second parameter is a hash of
25
+ # parameters that are passed to the client method called by the waiter,
26
+ # which varies according to the waiter name.
27
+ #
28
+ # # Wait Failures
29
+ # To catch errors in a waiter, use WaiterFailed,
30
+ # as shown in the following example.
31
+ #
32
+ # rescue rescue Aws::Waiters::Errors::WaiterFailed => error
33
+ # puts "failed waiting for instance running: #{error.message}
34
+ # end
35
+ #
36
+ # # Configuring a Waiter
37
+ # Each waiter has a default polling interval and a maximum number of
38
+ # attempts it will make before returning control to your program.
39
+ # To set these values, use the `max_attempts` and `delay` parameters
40
+ # in your `#wait_until` call.
41
+ # The following example waits for up to 25 seconds, polling every five seconds.
42
+ #
43
+ # client.wait_until(...) do |w|
44
+ # w.max_attempts = 5
45
+ # w.delay = 5
46
+ # end
47
+ #
48
+ # To disable wait failures, set the value of either of these parameters
49
+ # to `nil`.
50
+ #
51
+ # # Extending a Waiter
52
+ # To modify the behavior of waiters, you can register callbacks that are
53
+ # triggered before each polling attempt and before waiting.
54
+ #
55
+ # The following example implements an exponential backoff in a waiter
56
+ # by doubling the amount of time to wait on every attempt.
57
+ #
58
+ # client.wait_until(...) do |w|
59
+ # w.interval = 0 # disable normal sleep
60
+ # w.before_wait do |n, resp|
61
+ # sleep(n ** 2)
62
+ # end
63
+ # end
64
+ #
65
+ # # Available Waiters
66
+ #
67
+ # The following table lists the valid waiter names, the operations they call,
68
+ # and the default `:delay` and `:max_attempts` values.
69
+ #
70
+ # | waiter_name | params | :delay | :max_attempts |
71
+ # | ------------------------------------ | ----------------------------- | -------- | ------------- |
72
+ # | bot_alias_available | {Client#describe_bot_alias} | 10 | 35 |
73
+ # | bot_available | {Client#describe_bot} | 10 | 35 |
74
+ # | bot_export_completed | {Client#describe_export} | 10 | 35 |
75
+ # | bot_import_completed | {Client#describe_import} | 10 | 35 |
76
+ # | bot_locale_built | {Client#describe_bot_locale} | 10 | 35 |
77
+ # | bot_locale_created | {Client#describe_bot_locale} | 10 | 35 |
78
+ # | bot_locale_express_testing_available | {Client#describe_bot_locale} | 10 | 35 |
79
+ # | bot_version_available | {Client#describe_bot_version} | 10 | 35 |
80
+ #
81
+ module Waiters
82
+
83
+ # Wait until a bot alias is available
84
+ class BotAliasAvailable
85
+
86
+ # @param [Hash] options
87
+ # @option options [required, Client] :client
88
+ # @option options [Integer] :max_attempts (35)
89
+ # @option options [Integer] :delay (10)
90
+ # @option options [Proc] :before_attempt
91
+ # @option options [Proc] :before_wait
92
+ def initialize(options)
93
+ @client = options.fetch(:client)
94
+ @waiter = Aws::Waiters::Waiter.new({
95
+ max_attempts: 35,
96
+ delay: 10,
97
+ poller: Aws::Waiters::Poller.new(
98
+ operation_name: :describe_bot_alias,
99
+ acceptors: [
100
+ {
101
+ "expected" => "Available",
102
+ "matcher" => "path",
103
+ "state" => "success",
104
+ "argument" => "bot_alias_status"
105
+ },
106
+ {
107
+ "expected" => "Failed",
108
+ "matcher" => "path",
109
+ "state" => "failure",
110
+ "argument" => "bot_alias_status"
111
+ },
112
+ {
113
+ "expected" => "Deleting",
114
+ "matcher" => "path",
115
+ "state" => "failure",
116
+ "argument" => "bot_alias_status"
117
+ }
118
+ ]
119
+ )
120
+ }.merge(options))
121
+ end
122
+
123
+ # @option (see Client#describe_bot_alias)
124
+ # @return (see Client#describe_bot_alias)
125
+ def wait(params = {})
126
+ @waiter.wait(client: @client, params: params)
127
+ end
128
+
129
+ # @api private
130
+ attr_reader :waiter
131
+
132
+ end
133
+
134
+ # Wait until a bot is available
135
+ class BotAvailable
136
+
137
+ # @param [Hash] options
138
+ # @option options [required, Client] :client
139
+ # @option options [Integer] :max_attempts (35)
140
+ # @option options [Integer] :delay (10)
141
+ # @option options [Proc] :before_attempt
142
+ # @option options [Proc] :before_wait
143
+ def initialize(options)
144
+ @client = options.fetch(:client)
145
+ @waiter = Aws::Waiters::Waiter.new({
146
+ max_attempts: 35,
147
+ delay: 10,
148
+ poller: Aws::Waiters::Poller.new(
149
+ operation_name: :describe_bot,
150
+ acceptors: [
151
+ {
152
+ "expected" => "Available",
153
+ "matcher" => "path",
154
+ "state" => "success",
155
+ "argument" => "bot_status"
156
+ },
157
+ {
158
+ "expected" => "Deleting",
159
+ "matcher" => "path",
160
+ "state" => "failure",
161
+ "argument" => "bot_status"
162
+ },
163
+ {
164
+ "expected" => "Failed",
165
+ "matcher" => "path",
166
+ "state" => "failure",
167
+ "argument" => "bot_status"
168
+ },
169
+ {
170
+ "expected" => "Inactive",
171
+ "matcher" => "path",
172
+ "state" => "failure",
173
+ "argument" => "bot_status"
174
+ }
175
+ ]
176
+ )
177
+ }.merge(options))
178
+ end
179
+
180
+ # @option (see Client#describe_bot)
181
+ # @return (see Client#describe_bot)
182
+ def wait(params = {})
183
+ @waiter.wait(client: @client, params: params)
184
+ end
185
+
186
+ # @api private
187
+ attr_reader :waiter
188
+
189
+ end
190
+
191
+ # Wait until a bot has been exported
192
+ class BotExportCompleted
193
+
194
+ # @param [Hash] options
195
+ # @option options [required, Client] :client
196
+ # @option options [Integer] :max_attempts (35)
197
+ # @option options [Integer] :delay (10)
198
+ # @option options [Proc] :before_attempt
199
+ # @option options [Proc] :before_wait
200
+ def initialize(options)
201
+ @client = options.fetch(:client)
202
+ @waiter = Aws::Waiters::Waiter.new({
203
+ max_attempts: 35,
204
+ delay: 10,
205
+ poller: Aws::Waiters::Poller.new(
206
+ operation_name: :describe_export,
207
+ acceptors: [
208
+ {
209
+ "expected" => "Completed",
210
+ "matcher" => "path",
211
+ "state" => "success",
212
+ "argument" => "export_status"
213
+ },
214
+ {
215
+ "expected" => "Deleting",
216
+ "matcher" => "path",
217
+ "state" => "failure",
218
+ "argument" => "export_status"
219
+ },
220
+ {
221
+ "expected" => "Failed",
222
+ "matcher" => "path",
223
+ "state" => "failure",
224
+ "argument" => "export_status"
225
+ }
226
+ ]
227
+ )
228
+ }.merge(options))
229
+ end
230
+
231
+ # @option (see Client#describe_export)
232
+ # @return (see Client#describe_export)
233
+ def wait(params = {})
234
+ @waiter.wait(client: @client, params: params)
235
+ end
236
+
237
+ # @api private
238
+ attr_reader :waiter
239
+
240
+ end
241
+
242
+ # Wait until a bot has been imported
243
+ class BotImportCompleted
244
+
245
+ # @param [Hash] options
246
+ # @option options [required, Client] :client
247
+ # @option options [Integer] :max_attempts (35)
248
+ # @option options [Integer] :delay (10)
249
+ # @option options [Proc] :before_attempt
250
+ # @option options [Proc] :before_wait
251
+ def initialize(options)
252
+ @client = options.fetch(:client)
253
+ @waiter = Aws::Waiters::Waiter.new({
254
+ max_attempts: 35,
255
+ delay: 10,
256
+ poller: Aws::Waiters::Poller.new(
257
+ operation_name: :describe_import,
258
+ acceptors: [
259
+ {
260
+ "expected" => "Completed",
261
+ "matcher" => "path",
262
+ "state" => "success",
263
+ "argument" => "import_status"
264
+ },
265
+ {
266
+ "expected" => "Deleting",
267
+ "matcher" => "path",
268
+ "state" => "failure",
269
+ "argument" => "import_status"
270
+ },
271
+ {
272
+ "expected" => "Failed",
273
+ "matcher" => "path",
274
+ "state" => "failure",
275
+ "argument" => "import_status"
276
+ }
277
+ ]
278
+ )
279
+ }.merge(options))
280
+ end
281
+
282
+ # @option (see Client#describe_import)
283
+ # @return (see Client#describe_import)
284
+ def wait(params = {})
285
+ @waiter.wait(client: @client, params: params)
286
+ end
287
+
288
+ # @api private
289
+ attr_reader :waiter
290
+
291
+ end
292
+
293
+ # Wait until a bot locale is built
294
+ class BotLocaleBuilt
295
+
296
+ # @param [Hash] options
297
+ # @option options [required, Client] :client
298
+ # @option options [Integer] :max_attempts (35)
299
+ # @option options [Integer] :delay (10)
300
+ # @option options [Proc] :before_attempt
301
+ # @option options [Proc] :before_wait
302
+ def initialize(options)
303
+ @client = options.fetch(:client)
304
+ @waiter = Aws::Waiters::Waiter.new({
305
+ max_attempts: 35,
306
+ delay: 10,
307
+ poller: Aws::Waiters::Poller.new(
308
+ operation_name: :describe_bot_locale,
309
+ acceptors: [
310
+ {
311
+ "expected" => "Built",
312
+ "matcher" => "path",
313
+ "state" => "success",
314
+ "argument" => "bot_locale_status"
315
+ },
316
+ {
317
+ "expected" => "Deleting",
318
+ "matcher" => "path",
319
+ "state" => "failure",
320
+ "argument" => "bot_locale_status"
321
+ },
322
+ {
323
+ "expected" => "Failed",
324
+ "matcher" => "path",
325
+ "state" => "failure",
326
+ "argument" => "bot_locale_status"
327
+ },
328
+ {
329
+ "expected" => "NotBuilt",
330
+ "matcher" => "path",
331
+ "state" => "failure",
332
+ "argument" => "bot_locale_status"
333
+ }
334
+ ]
335
+ )
336
+ }.merge(options))
337
+ end
338
+
339
+ # @option (see Client#describe_bot_locale)
340
+ # @return (see Client#describe_bot_locale)
341
+ def wait(params = {})
342
+ @waiter.wait(client: @client, params: params)
343
+ end
344
+
345
+ # @api private
346
+ attr_reader :waiter
347
+
348
+ end
349
+
350
+ # Wait unit a bot locale is created
351
+ class BotLocaleCreated
352
+
353
+ # @param [Hash] options
354
+ # @option options [required, Client] :client
355
+ # @option options [Integer] :max_attempts (35)
356
+ # @option options [Integer] :delay (10)
357
+ # @option options [Proc] :before_attempt
358
+ # @option options [Proc] :before_wait
359
+ def initialize(options)
360
+ @client = options.fetch(:client)
361
+ @waiter = Aws::Waiters::Waiter.new({
362
+ max_attempts: 35,
363
+ delay: 10,
364
+ poller: Aws::Waiters::Poller.new(
365
+ operation_name: :describe_bot_locale,
366
+ acceptors: [
367
+ {
368
+ "expected" => "Built",
369
+ "matcher" => "path",
370
+ "state" => "success",
371
+ "argument" => "bot_locale_status"
372
+ },
373
+ {
374
+ "expected" => "ReadyExpressTesting",
375
+ "matcher" => "path",
376
+ "state" => "success",
377
+ "argument" => "bot_locale_status"
378
+ },
379
+ {
380
+ "expected" => "NotBuilt",
381
+ "matcher" => "path",
382
+ "state" => "success",
383
+ "argument" => "bot_locale_status"
384
+ },
385
+ {
386
+ "expected" => "Deleting",
387
+ "matcher" => "path",
388
+ "state" => "failure",
389
+ "argument" => "bot_locale_status"
390
+ },
391
+ {
392
+ "expected" => "Failed",
393
+ "matcher" => "path",
394
+ "state" => "failure",
395
+ "argument" => "bot_locale_status"
396
+ }
397
+ ]
398
+ )
399
+ }.merge(options))
400
+ end
401
+
402
+ # @option (see Client#describe_bot_locale)
403
+ # @return (see Client#describe_bot_locale)
404
+ def wait(params = {})
405
+ @waiter.wait(client: @client, params: params)
406
+ end
407
+
408
+ # @api private
409
+ attr_reader :waiter
410
+
411
+ end
412
+
413
+ # Wait until a bot locale build is ready for express testing
414
+ class BotLocaleExpressTestingAvailable
415
+
416
+ # @param [Hash] options
417
+ # @option options [required, Client] :client
418
+ # @option options [Integer] :max_attempts (35)
419
+ # @option options [Integer] :delay (10)
420
+ # @option options [Proc] :before_attempt
421
+ # @option options [Proc] :before_wait
422
+ def initialize(options)
423
+ @client = options.fetch(:client)
424
+ @waiter = Aws::Waiters::Waiter.new({
425
+ max_attempts: 35,
426
+ delay: 10,
427
+ poller: Aws::Waiters::Poller.new(
428
+ operation_name: :describe_bot_locale,
429
+ acceptors: [
430
+ {
431
+ "expected" => "Built",
432
+ "matcher" => "path",
433
+ "state" => "success",
434
+ "argument" => "bot_locale_status"
435
+ },
436
+ {
437
+ "expected" => "ReadyExpressTesting",
438
+ "matcher" => "path",
439
+ "state" => "success",
440
+ "argument" => "bot_locale_status"
441
+ },
442
+ {
443
+ "expected" => "Deleting",
444
+ "matcher" => "path",
445
+ "state" => "failure",
446
+ "argument" => "bot_locale_status"
447
+ },
448
+ {
449
+ "expected" => "Failed",
450
+ "matcher" => "path",
451
+ "state" => "failure",
452
+ "argument" => "bot_locale_status"
453
+ },
454
+ {
455
+ "expected" => "NotBuilt",
456
+ "matcher" => "path",
457
+ "state" => "failure",
458
+ "argument" => "bot_locale_status"
459
+ }
460
+ ]
461
+ )
462
+ }.merge(options))
463
+ end
464
+
465
+ # @option (see Client#describe_bot_locale)
466
+ # @return (see Client#describe_bot_locale)
467
+ def wait(params = {})
468
+ @waiter.wait(client: @client, params: params)
469
+ end
470
+
471
+ # @api private
472
+ attr_reader :waiter
473
+
474
+ end
475
+
476
+ # Wait until a bot version is available
477
+ class BotVersionAvailable
478
+
479
+ # @param [Hash] options
480
+ # @option options [required, Client] :client
481
+ # @option options [Integer] :max_attempts (35)
482
+ # @option options [Integer] :delay (10)
483
+ # @option options [Proc] :before_attempt
484
+ # @option options [Proc] :before_wait
485
+ def initialize(options)
486
+ @client = options.fetch(:client)
487
+ @waiter = Aws::Waiters::Waiter.new({
488
+ max_attempts: 35,
489
+ delay: 10,
490
+ poller: Aws::Waiters::Poller.new(
491
+ operation_name: :describe_bot_version,
492
+ acceptors: [
493
+ {
494
+ "expected" => "Available",
495
+ "matcher" => "path",
496
+ "state" => "success",
497
+ "argument" => "bot_status"
498
+ },
499
+ {
500
+ "expected" => "Deleting",
501
+ "matcher" => "path",
502
+ "state" => "failure",
503
+ "argument" => "bot_status"
504
+ },
505
+ {
506
+ "expected" => "Failed",
507
+ "matcher" => "path",
508
+ "state" => "failure",
509
+ "argument" => "bot_status"
510
+ },
511
+ {
512
+ "state" => "retry",
513
+ "matcher" => "status",
514
+ "expected" => 404
515
+ }
516
+ ]
517
+ )
518
+ }.merge(options))
519
+ end
520
+
521
+ # @option (see Client#describe_bot_version)
522
+ # @return (see Client#describe_bot_version)
523
+ def wait(params = {})
524
+ @waiter.wait(client: @client, params: params)
525
+ end
526
+
527
+ # @api private
528
+ attr_reader :waiter
529
+
530
+ end
531
+ end
532
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-lexmodelsv2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-20 00:00:00.000000000 Z
11
+ date: 2021-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.112.0
22
+ version: 3.119.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.112.0
32
+ version: 3.119.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -63,6 +63,7 @@ files:
63
63
  - lib/aws-sdk-lexmodelsv2/plugins/content_type.rb
64
64
  - lib/aws-sdk-lexmodelsv2/resource.rb
65
65
  - lib/aws-sdk-lexmodelsv2/types.rb
66
+ - lib/aws-sdk-lexmodelsv2/waiters.rb
66
67
  homepage: https://github.com/aws/aws-sdk-ruby
67
68
  licenses:
68
69
  - Apache-2.0