aws-sdk-lexmodelsv2 1.4.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
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