aws-sdk-appconfigdata 1.0.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.
@@ -0,0 +1,470 @@
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 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/signature_v4.rb'
31
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
+
33
+ Aws::Plugins::GlobalConfiguration.add_identifier(:appconfigdata)
34
+
35
+ module Aws::AppConfigData
36
+ # An API client for AppConfigData. To construct a client, you need to configure a `:region` and `:credentials`.
37
+ #
38
+ # client = Aws::AppConfigData::Client.new(
39
+ # region: region_name,
40
+ # credentials: credentials,
41
+ # # ...
42
+ # )
43
+ #
44
+ # For details on configuring region and credentials see
45
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
46
+ #
47
+ # See {#initialize} for a full list of supported configuration options.
48
+ class Client < Seahorse::Client::Base
49
+
50
+ include Aws::ClientStubs
51
+
52
+ @identifier = :appconfigdata
53
+
54
+ set_api(ClientApi::API)
55
+
56
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
57
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
58
+ add_plugin(Aws::Plugins::Logging)
59
+ add_plugin(Aws::Plugins::ParamConverter)
60
+ add_plugin(Aws::Plugins::ParamValidator)
61
+ add_plugin(Aws::Plugins::UserAgent)
62
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
63
+ add_plugin(Aws::Plugins::RetryErrors)
64
+ add_plugin(Aws::Plugins::GlobalConfiguration)
65
+ add_plugin(Aws::Plugins::RegionalEndpoint)
66
+ add_plugin(Aws::Plugins::EndpointDiscovery)
67
+ add_plugin(Aws::Plugins::EndpointPattern)
68
+ add_plugin(Aws::Plugins::ResponsePaging)
69
+ add_plugin(Aws::Plugins::StubResponses)
70
+ add_plugin(Aws::Plugins::IdempotencyToken)
71
+ add_plugin(Aws::Plugins::JsonvalueConverter)
72
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
73
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
+ add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
76
+ add_plugin(Aws::Plugins::SignatureV4)
77
+ add_plugin(Aws::Plugins::Protocols::RestJson)
78
+
79
+ # @overload initialize(options)
80
+ # @param [Hash] options
81
+ # @option options [required, Aws::CredentialProvider] :credentials
82
+ # Your AWS credentials. This can be an instance of any one of the
83
+ # following classes:
84
+ #
85
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
+ # credentials.
87
+ #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
102
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
103
+ # from an EC2 IMDS on an EC2 instance.
104
+ #
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
107
+ #
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
110
+ #
111
+ # When `:credentials` are not configured directly, the following
112
+ # locations will be searched for credentials:
113
+ #
114
+ # * `Aws.config[:credentials]`
115
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
116
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
117
+ # * `~/.aws/credentials`
118
+ # * `~/.aws/config`
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
123
+ #
124
+ # @option options [required, String] :region
125
+ # The AWS region to connect to. The configured `:region` is
126
+ # used to determine the service `:endpoint`. When not passed,
127
+ # a default `:region` is searched for in the following locations:
128
+ #
129
+ # * `Aws.config[:region]`
130
+ # * `ENV['AWS_REGION']`
131
+ # * `ENV['AMAZON_REGION']`
132
+ # * `ENV['AWS_DEFAULT_REGION']`
133
+ # * `~/.aws/credentials`
134
+ # * `~/.aws/config`
135
+ #
136
+ # @option options [String] :access_key_id
137
+ #
138
+ # @option options [Boolean] :active_endpoint_cache (false)
139
+ # When set to `true`, a thread polling for endpoints will be running in
140
+ # the background every 60 secs (default). Defaults to `false`.
141
+ #
142
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
143
+ # Used only in `adaptive` retry mode. When true, the request will sleep
144
+ # until there is sufficent client side capacity to retry the request.
145
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
146
+ # not retry instead of sleeping.
147
+ #
148
+ # @option options [Boolean] :client_side_monitoring (false)
149
+ # When `true`, client-side metrics will be collected for all API requests from
150
+ # this client.
151
+ #
152
+ # @option options [String] :client_side_monitoring_client_id ("")
153
+ # Allows you to provide an identifier for this client which will be attached to
154
+ # all generated client side metrics. Defaults to an empty string.
155
+ #
156
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
157
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
158
+ # side monitoring agent is running on, where client metrics will be published via UDP.
159
+ #
160
+ # @option options [Integer] :client_side_monitoring_port (31000)
161
+ # Required for publishing client metrics. The port that the client side monitoring
162
+ # agent is running on, where client metrics will be published via UDP.
163
+ #
164
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
165
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
166
+ # will use the Client Side Monitoring Agent Publisher.
167
+ #
168
+ # @option options [Boolean] :convert_params (true)
169
+ # When `true`, an attempt is made to coerce request parameters into
170
+ # the required types.
171
+ #
172
+ # @option options [Boolean] :correct_clock_skew (true)
173
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
+ # a clock skew correction and retry requests with skewed client clocks.
175
+ #
176
+ # @option options [Boolean] :disable_host_prefix_injection (false)
177
+ # Set to true to disable SDK automatically adding host prefix
178
+ # to default service endpoint when available.
179
+ #
180
+ # @option options [String] :endpoint
181
+ # The client endpoint is normally constructed from the `:region`
182
+ # option. You should only configure an `:endpoint` when connecting
183
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
184
+ #
185
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
186
+ # Used for the maximum size limit of the LRU cache storing endpoints data
187
+ # for endpoint discovery enabled operations. Defaults to 1000.
188
+ #
189
+ # @option options [Integer] :endpoint_cache_max_threads (10)
190
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
191
+ #
192
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
193
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
194
+ # Use this option to config the time interval in seconds for making
195
+ # requests fetching endpoints information. Defaults to 60 sec.
196
+ #
197
+ # @option options [Boolean] :endpoint_discovery (false)
198
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
199
+ #
200
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
201
+ # The log formatter.
202
+ #
203
+ # @option options [Symbol] :log_level (:info)
204
+ # The log level to send messages to the `:logger` at.
205
+ #
206
+ # @option options [Logger] :logger
207
+ # The Logger instance to send log messages to. If this option
208
+ # is not set, logging will be disabled.
209
+ #
210
+ # @option options [Integer] :max_attempts (3)
211
+ # An integer representing the maximum number attempts that will be made for
212
+ # a single request, including the initial attempt. For example,
213
+ # setting this value to 5 will result in a request being retried up to
214
+ # 4 times. Used in `standard` and `adaptive` retry modes.
215
+ #
216
+ # @option options [String] :profile ("default")
217
+ # Used when loading credentials from the shared credentials file
218
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
219
+ #
220
+ # @option options [Proc] :retry_backoff
221
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
222
+ # This option is only used in the `legacy` retry mode.
223
+ #
224
+ # @option options [Float] :retry_base_delay (0.3)
225
+ # The base delay in seconds used by the default backoff function. This option
226
+ # is only used in the `legacy` retry mode.
227
+ #
228
+ # @option options [Symbol] :retry_jitter (:none)
229
+ # A delay randomiser function used by the default backoff function.
230
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
231
+ # otherwise a Proc that takes and returns a number. This option is only used
232
+ # in the `legacy` retry mode.
233
+ #
234
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
235
+ #
236
+ # @option options [Integer] :retry_limit (3)
237
+ # The maximum number of times to retry failed requests. Only
238
+ # ~ 500 level server errors and certain ~ 400 level client errors
239
+ # are retried. Generally, these are throttling errors, data
240
+ # checksum errors, networking errors, timeout errors, auth errors,
241
+ # endpoint discovery, and errors from expired credentials.
242
+ # This option is only used in the `legacy` retry mode.
243
+ #
244
+ # @option options [Integer] :retry_max_delay (0)
245
+ # The maximum number of seconds to delay between retries (0 for no limit)
246
+ # used by the default backoff function. This option is only used in the
247
+ # `legacy` retry mode.
248
+ #
249
+ # @option options [String] :retry_mode ("legacy")
250
+ # Specifies which retry algorithm to use. Values are:
251
+ #
252
+ # * `legacy` - The pre-existing retry behavior. This is default value if
253
+ # no retry mode is provided.
254
+ #
255
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
256
+ # This includes support for retry quotas, which limit the number of
257
+ # unsuccessful retries a client can make.
258
+ #
259
+ # * `adaptive` - An experimental retry mode that includes all the
260
+ # functionality of `standard` mode along with automatic client side
261
+ # throttling. This is a provisional mode that may change behavior
262
+ # in the future.
263
+ #
264
+ #
265
+ # @option options [String] :secret_access_key
266
+ #
267
+ # @option options [String] :session_token
268
+ #
269
+ # @option options [Boolean] :stub_responses (false)
270
+ # Causes the client to return stubbed responses. By default
271
+ # fake responses are generated and returned. You can specify
272
+ # the response data to return or errors to raise by calling
273
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
274
+ #
275
+ # ** Please note ** When response stubbing is enabled, no HTTP
276
+ # requests are made, and retries are disabled.
277
+ #
278
+ # @option options [Boolean] :use_dualstack_endpoint
279
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
280
+ # will be used if available.
281
+ #
282
+ # @option options [Boolean] :use_fips_endpoint
283
+ # When set to `true`, fips compatible endpoints will be used if available.
284
+ # When a `fips` region is used, the region is normalized and this config
285
+ # is set to `true`.
286
+ #
287
+ # @option options [Boolean] :validate_params (true)
288
+ # When `true`, request parameters are validated before
289
+ # sending the request.
290
+ #
291
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
292
+ # requests through. Formatted like 'http://proxy.com:123'.
293
+ #
294
+ # @option options [Float] :http_open_timeout (15) The number of
295
+ # seconds to wait when opening a HTTP session before raising a
296
+ # `Timeout::Error`.
297
+ #
298
+ # @option options [Integer] :http_read_timeout (60) The default
299
+ # number of seconds to wait for response data. This value can
300
+ # safely be set per-request on the session.
301
+ #
302
+ # @option options [Float] :http_idle_timeout (5) The number of
303
+ # seconds a connection is allowed to sit idle before it is
304
+ # considered stale. Stale connections are closed and removed
305
+ # from the pool before making a request.
306
+ #
307
+ # @option options [Float] :http_continue_timeout (1) The number of
308
+ # seconds to wait for a 100-continue response before sending the
309
+ # request body. This option has no effect unless the request has
310
+ # "Expect" header set to "100-continue". Defaults to `nil` which
311
+ # disables this behaviour. This value can safely be set per
312
+ # request on the session.
313
+ #
314
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
315
+ # HTTP debug output will be sent to the `:logger`.
316
+ #
317
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
318
+ # SSL peer certificates are verified when establishing a
319
+ # connection.
320
+ #
321
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
322
+ # certificate authority bundle file that should be used when
323
+ # verifying peer certificates. If you do not pass
324
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
325
+ # will be used if available.
326
+ #
327
+ # @option options [String] :ssl_ca_directory Full path of the
328
+ # directory that contains the unbundled SSL certificate
329
+ # authority files for verifying peer certificates. If you do
330
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
331
+ # system default will be used if available.
332
+ #
333
+ def initialize(*args)
334
+ super
335
+ end
336
+
337
+ # @!group API Operations
338
+
339
+ # Retrieves the latest deployed configuration. This API may return empty
340
+ # Configuration data if the client already has the latest version. See
341
+ # StartConfigurationSession to obtain an InitialConfigurationToken to
342
+ # call this API.
343
+ #
344
+ # Each call to GetLatestConfiguration returns a new ConfigurationToken
345
+ # (NextPollConfigurationToken in the response). This new token MUST be
346
+ # provided to the next call to GetLatestConfiguration when polling for
347
+ # configuration updates.
348
+ #
349
+ # To avoid excess charges, we recommend that you include the
350
+ # `ClientConfigurationVersion` value with every call to
351
+ # `GetConfiguration`. This value must be saved on your client.
352
+ # Subsequent calls to `GetConfiguration` must pass this value by using
353
+ # the `ClientConfigurationVersion` parameter.
354
+ #
355
+ # @option params [required, String] :configuration_token
356
+ # Token describing the current state of the configuration session. To
357
+ # obtain a token, first call the StartConfigurationSession API. Note
358
+ # that every call to GetLatestConfiguration will return a new
359
+ # ConfigurationToken (NextPollConfigurationToken in the response) and
360
+ # MUST be provided to subsequent GetLatestConfiguration API calls.
361
+ #
362
+ # @return [Types::GetLatestConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
363
+ #
364
+ # * {Types::GetLatestConfigurationResponse#configuration #configuration} => String
365
+ # * {Types::GetLatestConfigurationResponse#content_type #content_type} => String
366
+ # * {Types::GetLatestConfigurationResponse#next_poll_configuration_token #next_poll_configuration_token} => String
367
+ # * {Types::GetLatestConfigurationResponse#next_poll_interval_in_seconds #next_poll_interval_in_seconds} => Integer
368
+ #
369
+ # @example Request syntax with placeholder values
370
+ #
371
+ # resp = client.get_latest_configuration({
372
+ # configuration_token: "Token", # required
373
+ # })
374
+ #
375
+ # @example Response structure
376
+ #
377
+ # resp.configuration #=> String
378
+ # resp.content_type #=> String
379
+ # resp.next_poll_configuration_token #=> String
380
+ # resp.next_poll_interval_in_seconds #=> Integer
381
+ #
382
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appconfigdata-2021-11-11/GetLatestConfiguration AWS API Documentation
383
+ #
384
+ # @overload get_latest_configuration(params = {})
385
+ # @param [Hash] params ({})
386
+ def get_latest_configuration(params = {}, options = {})
387
+ req = build_request(:get_latest_configuration, params)
388
+ req.send_request(options)
389
+ end
390
+
391
+ # Starts a configuration session used to retrieve a deployed
392
+ # configuration. See the GetLatestConfiguration API for more details.
393
+ #
394
+ # @option params [required, String] :application_identifier
395
+ # The application ID or the application name.
396
+ #
397
+ # @option params [required, String] :configuration_profile_identifier
398
+ # The configuration profile ID or the configuration profile name.
399
+ #
400
+ # @option params [required, String] :environment_identifier
401
+ # The environment ID or the environment name.
402
+ #
403
+ # @option params [Integer] :required_minimum_poll_interval_in_seconds
404
+ # The interval at which your client will poll for configuration. If
405
+ # provided, the service will throw a BadRequestException if the client
406
+ # polls before the specified poll interval. By default, client poll
407
+ # intervals are not enforced.
408
+ #
409
+ # @return [Types::StartConfigurationSessionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
410
+ #
411
+ # * {Types::StartConfigurationSessionResponse#initial_configuration_token #initial_configuration_token} => String
412
+ #
413
+ # @example Request syntax with placeholder values
414
+ #
415
+ # resp = client.start_configuration_session({
416
+ # application_identifier: "Identifier", # required
417
+ # configuration_profile_identifier: "Identifier", # required
418
+ # environment_identifier: "Identifier", # required
419
+ # required_minimum_poll_interval_in_seconds: 1,
420
+ # })
421
+ #
422
+ # @example Response structure
423
+ #
424
+ # resp.initial_configuration_token #=> String
425
+ #
426
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appconfigdata-2021-11-11/StartConfigurationSession AWS API Documentation
427
+ #
428
+ # @overload start_configuration_session(params = {})
429
+ # @param [Hash] params ({})
430
+ def start_configuration_session(params = {}, options = {})
431
+ req = build_request(:start_configuration_session, params)
432
+ req.send_request(options)
433
+ end
434
+
435
+ # @!endgroup
436
+
437
+ # @param params ({})
438
+ # @api private
439
+ def build_request(operation_name, params = {})
440
+ handlers = @handlers.for(operation_name)
441
+ context = Seahorse::Client::RequestContext.new(
442
+ operation_name: operation_name,
443
+ operation: config.api.operation(operation_name),
444
+ client: self,
445
+ params: params,
446
+ config: config)
447
+ context[:gem_name] = 'aws-sdk-appconfigdata'
448
+ context[:gem_version] = '1.0.0'
449
+ Seahorse::Client::Request.new(handlers, context)
450
+ end
451
+
452
+ # @api private
453
+ # @deprecated
454
+ def waiter_names
455
+ []
456
+ end
457
+
458
+ class << self
459
+
460
+ # @api private
461
+ attr_reader :identifier
462
+
463
+ # @api private
464
+ def errors_module
465
+ Errors
466
+ end
467
+
468
+ end
469
+ end
470
+ end
@@ -0,0 +1,133 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::AppConfigData
11
+ # @api private
12
+ module ClientApi
13
+
14
+ include Seahorse::Model
15
+
16
+ BadRequestDetails = Shapes::UnionShape.new(name: 'BadRequestDetails')
17
+ BadRequestException = Shapes::StructureShape.new(name: 'BadRequestException')
18
+ BadRequestReason = Shapes::StringShape.new(name: 'BadRequestReason')
19
+ GetLatestConfigurationRequest = Shapes::StructureShape.new(name: 'GetLatestConfigurationRequest')
20
+ GetLatestConfigurationResponse = Shapes::StructureShape.new(name: 'GetLatestConfigurationResponse')
21
+ Identifier = Shapes::StringShape.new(name: 'Identifier')
22
+ Integer = Shapes::IntegerShape.new(name: 'Integer')
23
+ InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
24
+ InvalidParameterDetail = Shapes::StructureShape.new(name: 'InvalidParameterDetail')
25
+ InvalidParameterMap = Shapes::MapShape.new(name: 'InvalidParameterMap')
26
+ InvalidParameterProblem = Shapes::StringShape.new(name: 'InvalidParameterProblem')
27
+ OptionalPollSeconds = Shapes::IntegerShape.new(name: 'OptionalPollSeconds')
28
+ ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
29
+ ResourceType = Shapes::StringShape.new(name: 'ResourceType')
30
+ StartConfigurationSessionRequest = Shapes::StructureShape.new(name: 'StartConfigurationSessionRequest')
31
+ StartConfigurationSessionResponse = Shapes::StructureShape.new(name: 'StartConfigurationSessionResponse')
32
+ String = Shapes::StringShape.new(name: 'String')
33
+ StringMap = Shapes::MapShape.new(name: 'StringMap')
34
+ SyntheticGetLatestConfigurationResponseBlob = Shapes::BlobShape.new(name: 'SyntheticGetLatestConfigurationResponseBlob')
35
+ ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
36
+ Token = Shapes::StringShape.new(name: 'Token')
37
+
38
+ BadRequestDetails.add_member(:invalid_parameters, Shapes::ShapeRef.new(shape: InvalidParameterMap, location_name: "InvalidParameters"))
39
+ BadRequestDetails.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
40
+ BadRequestDetails.add_member_subclass(:invalid_parameters, Types::BadRequestDetails::InvalidParameters)
41
+ BadRequestDetails.add_member_subclass(:unknown, Types::BadRequestDetails::Unknown)
42
+ BadRequestDetails.struct_class = Types::BadRequestDetails
43
+
44
+ BadRequestException.add_member(:details, Shapes::ShapeRef.new(shape: BadRequestDetails, location_name: "Details"))
45
+ BadRequestException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
46
+ BadRequestException.add_member(:reason, Shapes::ShapeRef.new(shape: BadRequestReason, location_name: "Reason"))
47
+ BadRequestException.struct_class = Types::BadRequestException
48
+
49
+ GetLatestConfigurationRequest.add_member(:configuration_token, Shapes::ShapeRef.new(shape: Token, required: true, location: "querystring", location_name: "configuration_token"))
50
+ GetLatestConfigurationRequest.struct_class = Types::GetLatestConfigurationRequest
51
+
52
+ GetLatestConfigurationResponse.add_member(:configuration, Shapes::ShapeRef.new(shape: SyntheticGetLatestConfigurationResponseBlob, location_name: "Configuration"))
53
+ GetLatestConfigurationResponse.add_member(:content_type, Shapes::ShapeRef.new(shape: String, location: "header", location_name: "Content-Type"))
54
+ GetLatestConfigurationResponse.add_member(:next_poll_configuration_token, Shapes::ShapeRef.new(shape: Token, location: "header", location_name: "Next-Poll-Configuration-Token"))
55
+ GetLatestConfigurationResponse.add_member(:next_poll_interval_in_seconds, Shapes::ShapeRef.new(shape: Integer, location: "header", location_name: "Next-Poll-Interval-In-Seconds"))
56
+ GetLatestConfigurationResponse.struct_class = Types::GetLatestConfigurationResponse
57
+ GetLatestConfigurationResponse[:payload] = :configuration
58
+ GetLatestConfigurationResponse[:payload_member] = GetLatestConfigurationResponse.member(:configuration)
59
+
60
+ InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
61
+ InternalServerException.struct_class = Types::InternalServerException
62
+
63
+ InvalidParameterDetail.add_member(:problem, Shapes::ShapeRef.new(shape: InvalidParameterProblem, location_name: "Problem"))
64
+ InvalidParameterDetail.struct_class = Types::InvalidParameterDetail
65
+
66
+ InvalidParameterMap.key = Shapes::ShapeRef.new(shape: String)
67
+ InvalidParameterMap.value = Shapes::ShapeRef.new(shape: InvalidParameterDetail)
68
+
69
+ ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
70
+ ResourceNotFoundException.add_member(:referenced_by, Shapes::ShapeRef.new(shape: StringMap, location_name: "ReferencedBy"))
71
+ ResourceNotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "ResourceType"))
72
+ ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
73
+
74
+ StartConfigurationSessionRequest.add_member(:application_identifier, Shapes::ShapeRef.new(shape: Identifier, required: true, location_name: "ApplicationIdentifier"))
75
+ StartConfigurationSessionRequest.add_member(:configuration_profile_identifier, Shapes::ShapeRef.new(shape: Identifier, required: true, location_name: "ConfigurationProfileIdentifier"))
76
+ StartConfigurationSessionRequest.add_member(:environment_identifier, Shapes::ShapeRef.new(shape: Identifier, required: true, location_name: "EnvironmentIdentifier"))
77
+ StartConfigurationSessionRequest.add_member(:required_minimum_poll_interval_in_seconds, Shapes::ShapeRef.new(shape: OptionalPollSeconds, location_name: "RequiredMinimumPollIntervalInSeconds"))
78
+ StartConfigurationSessionRequest.struct_class = Types::StartConfigurationSessionRequest
79
+
80
+ StartConfigurationSessionResponse.add_member(:initial_configuration_token, Shapes::ShapeRef.new(shape: Token, location_name: "InitialConfigurationToken"))
81
+ StartConfigurationSessionResponse.struct_class = Types::StartConfigurationSessionResponse
82
+
83
+ StringMap.key = Shapes::ShapeRef.new(shape: String)
84
+ StringMap.value = Shapes::ShapeRef.new(shape: String)
85
+
86
+ ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
87
+ ThrottlingException.struct_class = Types::ThrottlingException
88
+
89
+
90
+ # @api private
91
+ API = Seahorse::Model::Api.new.tap do |api|
92
+
93
+ api.version = "2021-11-11"
94
+
95
+ api.metadata = {
96
+ "apiVersion" => "2021-11-11",
97
+ "endpointPrefix" => "appconfigdata",
98
+ "jsonVersion" => "1.0",
99
+ "protocol" => "rest-json",
100
+ "serviceFullName" => "AWS AppConfig Data",
101
+ "serviceId" => "AppConfigData",
102
+ "signatureVersion" => "v4",
103
+ "signingName" => "appconfig",
104
+ "uid" => "appconfigdata-2021-11-11",
105
+ }
106
+
107
+ api.add_operation(:get_latest_configuration, Seahorse::Model::Operation.new.tap do |o|
108
+ o.name = "GetLatestConfiguration"
109
+ o.http_method = "GET"
110
+ o.http_request_uri = "/configuration"
111
+ o.input = Shapes::ShapeRef.new(shape: GetLatestConfigurationRequest)
112
+ o.output = Shapes::ShapeRef.new(shape: GetLatestConfigurationResponse)
113
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
114
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
115
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
116
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
117
+ end)
118
+
119
+ api.add_operation(:start_configuration_session, Seahorse::Model::Operation.new.tap do |o|
120
+ o.name = "StartConfigurationSession"
121
+ o.http_method = "POST"
122
+ o.http_request_uri = "/configurationsessions"
123
+ o.input = Shapes::ShapeRef.new(shape: StartConfigurationSessionRequest)
124
+ o.output = Shapes::ShapeRef.new(shape: StartConfigurationSessionResponse)
125
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
126
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
127
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
128
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
129
+ end)
130
+ end
131
+
132
+ end
133
+ end
File without changes