aws-sdk-ram 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,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 86c597bf846d0a2fb14790a685a8a22c4041de8a
4
+ data.tar.gz: ccf0695b68ce94ab21126c6ead3ebed939e12557
5
+ SHA512:
6
+ metadata.gz: 1dea5624bb79b6052407a873543b3d7b1fffba2a4d7bb8c7da60b46ab2bca20af10e7b8571f4dc71233fdc0581e465c33fd6a8b04e4fe7284740337b3a99e02b
7
+ data.tar.gz: 88023d25071cae9df6b6d4805d1814c697d23727d647ffe62d47fe5ed04747531d20da4ac0c8191b8666d27fd1510bb5972b6f22b130e69a7319dfa2e97ec16d
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-ram/types'
12
+ require_relative 'aws-sdk-ram/client_api'
13
+ require_relative 'aws-sdk-ram/client'
14
+ require_relative 'aws-sdk-ram/errors'
15
+ require_relative 'aws-sdk-ram/resource'
16
+ require_relative 'aws-sdk-ram/customizations'
17
+
18
+ # This module provides support for AWS Resource Access Manager. This module is available in the
19
+ # `aws-sdk-ram` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from AWS Resource Access Manager all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::RAM::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::RAM
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
@@ -0,0 +1,1041 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
19
+ require 'aws-sdk-core/plugins/response_paging.rb'
20
+ require 'aws-sdk-core/plugins/stub_responses.rb'
21
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
22
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
23
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
24
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
25
+ require 'aws-sdk-core/plugins/signature_v4.rb'
26
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
27
+
28
+ Aws::Plugins::GlobalConfiguration.add_identifier(:ram)
29
+
30
+ module Aws::RAM
31
+ class Client < Seahorse::Client::Base
32
+
33
+ include Aws::ClientStubs
34
+
35
+ @identifier = :ram
36
+
37
+ set_api(ClientApi::API)
38
+
39
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
40
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
41
+ add_plugin(Aws::Plugins::Logging)
42
+ add_plugin(Aws::Plugins::ParamConverter)
43
+ add_plugin(Aws::Plugins::ParamValidator)
44
+ add_plugin(Aws::Plugins::UserAgent)
45
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
46
+ add_plugin(Aws::Plugins::RetryErrors)
47
+ add_plugin(Aws::Plugins::GlobalConfiguration)
48
+ add_plugin(Aws::Plugins::RegionalEndpoint)
49
+ add_plugin(Aws::Plugins::EndpointDiscovery)
50
+ add_plugin(Aws::Plugins::ResponsePaging)
51
+ add_plugin(Aws::Plugins::StubResponses)
52
+ add_plugin(Aws::Plugins::IdempotencyToken)
53
+ add_plugin(Aws::Plugins::JsonvalueConverter)
54
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
55
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
56
+ add_plugin(Aws::Plugins::SignatureV4)
57
+ add_plugin(Aws::Plugins::Protocols::RestJson)
58
+
59
+ # @overload initialize(options)
60
+ # @param [Hash] options
61
+ # @option options [required, Aws::CredentialProvider] :credentials
62
+ # Your AWS credentials. This can be an instance of any one of the
63
+ # following classes:
64
+ #
65
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
66
+ # credentials.
67
+ #
68
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
69
+ # from an EC2 IMDS on an EC2 instance.
70
+ #
71
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
72
+ # shared file, such as `~/.aws/config`.
73
+ #
74
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
75
+ #
76
+ # When `:credentials` are not configured directly, the following
77
+ # locations will be searched for credentials:
78
+ #
79
+ # * `Aws.config[:credentials]`
80
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
81
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
82
+ # * `~/.aws/credentials`
83
+ # * `~/.aws/config`
84
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
85
+ # very aggressive. Construct and pass an instance of
86
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
87
+ # timeouts.
88
+ #
89
+ # @option options [required, String] :region
90
+ # The AWS region to connect to. The configured `:region` is
91
+ # used to determine the service `:endpoint`. When not passed,
92
+ # a default `:region` is search for in the following locations:
93
+ #
94
+ # * `Aws.config[:region]`
95
+ # * `ENV['AWS_REGION']`
96
+ # * `ENV['AMAZON_REGION']`
97
+ # * `ENV['AWS_DEFAULT_REGION']`
98
+ # * `~/.aws/credentials`
99
+ # * `~/.aws/config`
100
+ #
101
+ # @option options [String] :access_key_id
102
+ #
103
+ # @option options [Boolean] :active_endpoint_cache (false)
104
+ # When set to `true`, a thread polling for endpoints will be running in
105
+ # the background every 60 secs (default). Defaults to `false`.
106
+ #
107
+ # @option options [Boolean] :client_side_monitoring (false)
108
+ # When `true`, client-side metrics will be collected for all API requests from
109
+ # this client.
110
+ #
111
+ # @option options [String] :client_side_monitoring_client_id ("")
112
+ # Allows you to provide an identifier for this client which will be attached to
113
+ # all generated client side metrics. Defaults to an empty string.
114
+ #
115
+ # @option options [Integer] :client_side_monitoring_port (31000)
116
+ # Required for publishing client metrics. The port that the client side monitoring
117
+ # agent is running on, where client metrics will be published via UDP.
118
+ #
119
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
120
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
121
+ # will use the Client Side Monitoring Agent Publisher.
122
+ #
123
+ # @option options [Boolean] :convert_params (true)
124
+ # When `true`, an attempt is made to coerce request parameters into
125
+ # the required types.
126
+ #
127
+ # @option options [String] :endpoint
128
+ # The client endpoint is normally constructed from the `:region`
129
+ # option. You should only configure an `:endpoint` when connecting
130
+ # to test endpoints. This should be avalid HTTP(S) URI.
131
+ #
132
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
133
+ # Used for the maximum size limit of the LRU cache storing endpoints data
134
+ # for endpoint discovery enabled operations. Defaults to 1000.
135
+ #
136
+ # @option options [Integer] :endpoint_cache_max_threads (10)
137
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
138
+ #
139
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
140
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
141
+ # Use this option to config the time interval in seconds for making
142
+ # requests fetching endpoints information. Defaults to 60 sec.
143
+ #
144
+ # @option options [Boolean] :endpoint_discovery (false)
145
+ # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
146
+ #
147
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
148
+ # The log formatter.
149
+ #
150
+ # @option options [Symbol] :log_level (:info)
151
+ # The log level to send messages to the `:logger` at.
152
+ #
153
+ # @option options [Logger] :logger
154
+ # The Logger instance to send log messages to. If this option
155
+ # is not set, logging will be disabled.
156
+ #
157
+ # @option options [String] :profile ("default")
158
+ # Used when loading credentials from the shared credentials file
159
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
160
+ #
161
+ # @option options [Float] :retry_base_delay (0.3)
162
+ # The base delay in seconds used by the default backoff function.
163
+ #
164
+ # @option options [Symbol] :retry_jitter (:none)
165
+ # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
166
+ #
167
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
168
+ #
169
+ # @option options [Integer] :retry_limit (3)
170
+ # The maximum number of times to retry failed requests. Only
171
+ # ~ 500 level server errors and certain ~ 400 level client errors
172
+ # are retried. Generally, these are throttling errors, data
173
+ # checksum errors, networking errors, timeout errors and auth
174
+ # errors from expired credentials.
175
+ #
176
+ # @option options [Integer] :retry_max_delay (0)
177
+ # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
178
+ #
179
+ # @option options [String] :secret_access_key
180
+ #
181
+ # @option options [String] :session_token
182
+ #
183
+ # @option options [Boolean] :stub_responses (false)
184
+ # Causes the client to return stubbed responses. By default
185
+ # fake responses are generated and returned. You can specify
186
+ # the response data to return or errors to raise by calling
187
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
188
+ #
189
+ # ** Please note ** When response stubbing is enabled, no HTTP
190
+ # requests are made, and retries are disabled.
191
+ #
192
+ # @option options [Boolean] :validate_params (true)
193
+ # When `true`, request parameters are validated before
194
+ # sending the request.
195
+ #
196
+ def initialize(*args)
197
+ super
198
+ end
199
+
200
+ # @!group API Operations
201
+
202
+ # Accepts an invitation to a resource share from another AWS account.
203
+ #
204
+ # @option params [required, String] :resource_share_invitation_arn
205
+ # The Amazon Resource Name (ARN) of the invitation.
206
+ #
207
+ # @option params [String] :client_token
208
+ # A unique, case-sensitive identifier that you provide to ensure the
209
+ # idempotency of the request.
210
+ #
211
+ # @return [Types::AcceptResourceShareInvitationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
212
+ #
213
+ # * {Types::AcceptResourceShareInvitationResponse#resource_share_invitation #resource_share_invitation} => Types::ResourceShareInvitation
214
+ # * {Types::AcceptResourceShareInvitationResponse#client_token #client_token} => String
215
+ #
216
+ # @example Request syntax with placeholder values
217
+ #
218
+ # resp = client.accept_resource_share_invitation({
219
+ # resource_share_invitation_arn: "String", # required
220
+ # client_token: "String",
221
+ # })
222
+ #
223
+ # @example Response structure
224
+ #
225
+ # resp.resource_share_invitation.resource_share_invitation_arn #=> String
226
+ # resp.resource_share_invitation.resource_share_name #=> String
227
+ # resp.resource_share_invitation.resource_share_arn #=> String
228
+ # resp.resource_share_invitation.sender_account_id #=> String
229
+ # resp.resource_share_invitation.receiver_account_id #=> String
230
+ # resp.resource_share_invitation.invitation_timestamp #=> Time
231
+ # resp.resource_share_invitation.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED", "EXPIRED"
232
+ # resp.resource_share_invitation.resource_share_associations #=> Array
233
+ # resp.resource_share_invitation.resource_share_associations[0].resource_share_arn #=> String
234
+ # resp.resource_share_invitation.resource_share_associations[0].associated_entity #=> String
235
+ # resp.resource_share_invitation.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
236
+ # resp.resource_share_invitation.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
237
+ # resp.resource_share_invitation.resource_share_associations[0].status_message #=> String
238
+ # resp.resource_share_invitation.resource_share_associations[0].creation_time #=> Time
239
+ # resp.resource_share_invitation.resource_share_associations[0].last_updated_time #=> Time
240
+ # resp.resource_share_invitation.resource_share_associations[0].external #=> Boolean
241
+ # resp.client_token #=> String
242
+ #
243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AcceptResourceShareInvitation AWS API Documentation
244
+ #
245
+ # @overload accept_resource_share_invitation(params = {})
246
+ # @param [Hash] params ({})
247
+ def accept_resource_share_invitation(params = {}, options = {})
248
+ req = build_request(:accept_resource_share_invitation, params)
249
+ req.send_request(options)
250
+ end
251
+
252
+ # Associates the specified resource share with the specified principals
253
+ # and resources.
254
+ #
255
+ # @option params [required, String] :resource_share_arn
256
+ # The Amazon Resource Name (ARN) of the resource share.
257
+ #
258
+ # @option params [Array<String>] :resource_arns
259
+ # The Amazon Resource Names (ARN) of the resources.
260
+ #
261
+ # @option params [Array<String>] :principals
262
+ # The principals.
263
+ #
264
+ # @option params [String] :client_token
265
+ # A unique, case-sensitive identifier that you provide to ensure the
266
+ # idempotency of the request.
267
+ #
268
+ # @return [Types::AssociateResourceShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
269
+ #
270
+ # * {Types::AssociateResourceShareResponse#resource_share_associations #resource_share_associations} => Array&lt;Types::ResourceShareAssociation&gt;
271
+ # * {Types::AssociateResourceShareResponse#client_token #client_token} => String
272
+ #
273
+ # @example Request syntax with placeholder values
274
+ #
275
+ # resp = client.associate_resource_share({
276
+ # resource_share_arn: "String", # required
277
+ # resource_arns: ["String"],
278
+ # principals: ["String"],
279
+ # client_token: "String",
280
+ # })
281
+ #
282
+ # @example Response structure
283
+ #
284
+ # resp.resource_share_associations #=> Array
285
+ # resp.resource_share_associations[0].resource_share_arn #=> String
286
+ # resp.resource_share_associations[0].associated_entity #=> String
287
+ # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
288
+ # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
289
+ # resp.resource_share_associations[0].status_message #=> String
290
+ # resp.resource_share_associations[0].creation_time #=> Time
291
+ # resp.resource_share_associations[0].last_updated_time #=> Time
292
+ # resp.resource_share_associations[0].external #=> Boolean
293
+ # resp.client_token #=> String
294
+ #
295
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AssociateResourceShare AWS API Documentation
296
+ #
297
+ # @overload associate_resource_share(params = {})
298
+ # @param [Hash] params ({})
299
+ def associate_resource_share(params = {}, options = {})
300
+ req = build_request(:associate_resource_share, params)
301
+ req.send_request(options)
302
+ end
303
+
304
+ # Creates a resource share.
305
+ #
306
+ # @option params [required, String] :name
307
+ # The name of the resource share.
308
+ #
309
+ # @option params [Array<String>] :resource_arns
310
+ # The Amazon Resource Names (ARN) of the resources to associate with the
311
+ # resource share.
312
+ #
313
+ # @option params [Array<String>] :principals
314
+ # The principals to associate with the resource share. The possible
315
+ # values are IDs of AWS accounts, the ARN of an OU or organization from
316
+ # AWS Organizations.
317
+ #
318
+ # @option params [Array<Types::Tag>] :tags
319
+ # One or more tags.
320
+ #
321
+ # @option params [Boolean] :allow_external_principals
322
+ # Indicates whether principals outside your organization can be
323
+ # associated with a resource share.
324
+ #
325
+ # @option params [String] :client_token
326
+ # A unique, case-sensitive identifier that you provide to ensure the
327
+ # idempotency of the request.
328
+ #
329
+ # @return [Types::CreateResourceShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
330
+ #
331
+ # * {Types::CreateResourceShareResponse#resource_share #resource_share} => Types::ResourceShare
332
+ # * {Types::CreateResourceShareResponse#client_token #client_token} => String
333
+ #
334
+ # @example Request syntax with placeholder values
335
+ #
336
+ # resp = client.create_resource_share({
337
+ # name: "String", # required
338
+ # resource_arns: ["String"],
339
+ # principals: ["String"],
340
+ # tags: [
341
+ # {
342
+ # key: "TagKey",
343
+ # value: "TagValue",
344
+ # },
345
+ # ],
346
+ # allow_external_principals: false,
347
+ # client_token: "String",
348
+ # })
349
+ #
350
+ # @example Response structure
351
+ #
352
+ # resp.resource_share.resource_share_arn #=> String
353
+ # resp.resource_share.name #=> String
354
+ # resp.resource_share.owning_account_id #=> String
355
+ # resp.resource_share.allow_external_principals #=> Boolean
356
+ # resp.resource_share.status #=> String, one of "PENDING", "ACTIVE", "FAILED", "DELETING", "DELETED"
357
+ # resp.resource_share.status_message #=> String
358
+ # resp.resource_share.tags #=> Array
359
+ # resp.resource_share.tags[0].key #=> String
360
+ # resp.resource_share.tags[0].value #=> String
361
+ # resp.resource_share.creation_time #=> Time
362
+ # resp.resource_share.last_updated_time #=> Time
363
+ # resp.client_token #=> String
364
+ #
365
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreateResourceShare AWS API Documentation
366
+ #
367
+ # @overload create_resource_share(params = {})
368
+ # @param [Hash] params ({})
369
+ def create_resource_share(params = {}, options = {})
370
+ req = build_request(:create_resource_share, params)
371
+ req.send_request(options)
372
+ end
373
+
374
+ # Deletes the specified resource share.
375
+ #
376
+ # @option params [required, String] :resource_share_arn
377
+ # The Amazon Resource Name (ARN) of the resource share.
378
+ #
379
+ # @option params [String] :client_token
380
+ # A unique, case-sensitive identifier that you provide to ensure the
381
+ # idempotency of the request.
382
+ #
383
+ # @return [Types::DeleteResourceShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
384
+ #
385
+ # * {Types::DeleteResourceShareResponse#return_value #return_value} => Boolean
386
+ # * {Types::DeleteResourceShareResponse#client_token #client_token} => String
387
+ #
388
+ # @example Request syntax with placeholder values
389
+ #
390
+ # resp = client.delete_resource_share({
391
+ # resource_share_arn: "String", # required
392
+ # client_token: "String",
393
+ # })
394
+ #
395
+ # @example Response structure
396
+ #
397
+ # resp.return_value #=> Boolean
398
+ # resp.client_token #=> String
399
+ #
400
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DeleteResourceShare AWS API Documentation
401
+ #
402
+ # @overload delete_resource_share(params = {})
403
+ # @param [Hash] params ({})
404
+ def delete_resource_share(params = {}, options = {})
405
+ req = build_request(:delete_resource_share, params)
406
+ req.send_request(options)
407
+ end
408
+
409
+ # Disassociates the specified principals or resources from the specified
410
+ # resource share.
411
+ #
412
+ # @option params [required, String] :resource_share_arn
413
+ # The Amazon Resource Name (ARN) of the resource share.
414
+ #
415
+ # @option params [Array<String>] :resource_arns
416
+ # The Amazon Resource Names (ARN) of the resources.
417
+ #
418
+ # @option params [Array<String>] :principals
419
+ # The principals.
420
+ #
421
+ # @option params [String] :client_token
422
+ # A unique, case-sensitive identifier that you provide to ensure the
423
+ # idempotency of the request.
424
+ #
425
+ # @return [Types::DisassociateResourceShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
426
+ #
427
+ # * {Types::DisassociateResourceShareResponse#resource_share_associations #resource_share_associations} => Array&lt;Types::ResourceShareAssociation&gt;
428
+ # * {Types::DisassociateResourceShareResponse#client_token #client_token} => String
429
+ #
430
+ # @example Request syntax with placeholder values
431
+ #
432
+ # resp = client.disassociate_resource_share({
433
+ # resource_share_arn: "String", # required
434
+ # resource_arns: ["String"],
435
+ # principals: ["String"],
436
+ # client_token: "String",
437
+ # })
438
+ #
439
+ # @example Response structure
440
+ #
441
+ # resp.resource_share_associations #=> Array
442
+ # resp.resource_share_associations[0].resource_share_arn #=> String
443
+ # resp.resource_share_associations[0].associated_entity #=> String
444
+ # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
445
+ # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
446
+ # resp.resource_share_associations[0].status_message #=> String
447
+ # resp.resource_share_associations[0].creation_time #=> Time
448
+ # resp.resource_share_associations[0].last_updated_time #=> Time
449
+ # resp.resource_share_associations[0].external #=> Boolean
450
+ # resp.client_token #=> String
451
+ #
452
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DisassociateResourceShare AWS API Documentation
453
+ #
454
+ # @overload disassociate_resource_share(params = {})
455
+ # @param [Hash] params ({})
456
+ def disassociate_resource_share(params = {}, options = {})
457
+ req = build_request(:disassociate_resource_share, params)
458
+ req.send_request(options)
459
+ end
460
+
461
+ # Enables resource sharing within your organization.
462
+ #
463
+ # @return [Types::EnableSharingWithAwsOrganizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
464
+ #
465
+ # * {Types::EnableSharingWithAwsOrganizationResponse#return_value #return_value} => Boolean
466
+ #
467
+ # @example Response structure
468
+ #
469
+ # resp.return_value #=> Boolean
470
+ #
471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/EnableSharingWithAwsOrganization AWS API Documentation
472
+ #
473
+ # @overload enable_sharing_with_aws_organization(params = {})
474
+ # @param [Hash] params ({})
475
+ def enable_sharing_with_aws_organization(params = {}, options = {})
476
+ req = build_request(:enable_sharing_with_aws_organization, params)
477
+ req.send_request(options)
478
+ end
479
+
480
+ # Gets the policies for the specifies resources.
481
+ #
482
+ # @option params [required, Array<String>] :resource_arns
483
+ # The Amazon Resource Names (ARN) of the resources.
484
+ #
485
+ # @option params [String] :principal
486
+ # The principal.
487
+ #
488
+ # @option params [String] :next_token
489
+ # The token for the next page of results.
490
+ #
491
+ # @option params [Integer] :max_results
492
+ # The maximum number of results to return with a single call. To
493
+ # retrieve the remaining results, make another call with the returned
494
+ # `nextToken` value.
495
+ #
496
+ # @return [Types::GetResourcePoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
497
+ #
498
+ # * {Types::GetResourcePoliciesResponse#policies #policies} => Array&lt;String&gt;
499
+ # * {Types::GetResourcePoliciesResponse#next_token #next_token} => String
500
+ #
501
+ # @example Request syntax with placeholder values
502
+ #
503
+ # resp = client.get_resource_policies({
504
+ # resource_arns: ["String"], # required
505
+ # principal: "String",
506
+ # next_token: "String",
507
+ # max_results: 1,
508
+ # })
509
+ #
510
+ # @example Response structure
511
+ #
512
+ # resp.policies #=> Array
513
+ # resp.policies[0] #=> String
514
+ # resp.next_token #=> String
515
+ #
516
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourcePolicies AWS API Documentation
517
+ #
518
+ # @overload get_resource_policies(params = {})
519
+ # @param [Hash] params ({})
520
+ def get_resource_policies(params = {}, options = {})
521
+ req = build_request(:get_resource_policies, params)
522
+ req.send_request(options)
523
+ end
524
+
525
+ # Gets the associations for the specified resource share.
526
+ #
527
+ # @option params [required, String] :association_type
528
+ # The association type.
529
+ #
530
+ # @option params [Array<String>] :resource_share_arns
531
+ # The Amazon Resource Names (ARN) of the resource shares.
532
+ #
533
+ # @option params [String] :resource_arn
534
+ # The Amazon Resource Name (ARN) of the resource.
535
+ #
536
+ # @option params [String] :principal
537
+ # The principal.
538
+ #
539
+ # @option params [String] :association_status
540
+ # The status of the association.
541
+ #
542
+ # @option params [String] :next_token
543
+ # The token for the next page of results.
544
+ #
545
+ # @option params [Integer] :max_results
546
+ # The maximum number of results to return with a single call. To
547
+ # retrieve the remaining results, make another call with the returned
548
+ # `nextToken` value.
549
+ #
550
+ # @return [Types::GetResourceShareAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
551
+ #
552
+ # * {Types::GetResourceShareAssociationsResponse#resource_share_associations #resource_share_associations} => Array&lt;Types::ResourceShareAssociation&gt;
553
+ # * {Types::GetResourceShareAssociationsResponse#next_token #next_token} => String
554
+ #
555
+ # @example Request syntax with placeholder values
556
+ #
557
+ # resp = client.get_resource_share_associations({
558
+ # association_type: "PRINCIPAL", # required, accepts PRINCIPAL, RESOURCE
559
+ # resource_share_arns: ["String"],
560
+ # resource_arn: "String",
561
+ # principal: "String",
562
+ # association_status: "ASSOCIATING", # accepts ASSOCIATING, ASSOCIATED, FAILED, DISASSOCIATING, DISASSOCIATED
563
+ # next_token: "String",
564
+ # max_results: 1,
565
+ # })
566
+ #
567
+ # @example Response structure
568
+ #
569
+ # resp.resource_share_associations #=> Array
570
+ # resp.resource_share_associations[0].resource_share_arn #=> String
571
+ # resp.resource_share_associations[0].associated_entity #=> String
572
+ # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
573
+ # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
574
+ # resp.resource_share_associations[0].status_message #=> String
575
+ # resp.resource_share_associations[0].creation_time #=> Time
576
+ # resp.resource_share_associations[0].last_updated_time #=> Time
577
+ # resp.resource_share_associations[0].external #=> Boolean
578
+ # resp.next_token #=> String
579
+ #
580
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceShareAssociations AWS API Documentation
581
+ #
582
+ # @overload get_resource_share_associations(params = {})
583
+ # @param [Hash] params ({})
584
+ def get_resource_share_associations(params = {}, options = {})
585
+ req = build_request(:get_resource_share_associations, params)
586
+ req.send_request(options)
587
+ end
588
+
589
+ # Gets the specified invitations for resource sharing.
590
+ #
591
+ # @option params [Array<String>] :resource_share_invitation_arns
592
+ # The Amazon Resource Names (ARN) of the invitations.
593
+ #
594
+ # @option params [Array<String>] :resource_share_arns
595
+ # The Amazon Resource Names (ARN) of the resource shares.
596
+ #
597
+ # @option params [String] :next_token
598
+ # The token for the next page of results.
599
+ #
600
+ # @option params [Integer] :max_results
601
+ # The maximum number of results to return with a single call. To
602
+ # retrieve the remaining results, make another call with the returned
603
+ # `nextToken` value.
604
+ #
605
+ # @return [Types::GetResourceShareInvitationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
606
+ #
607
+ # * {Types::GetResourceShareInvitationsResponse#resource_share_invitations #resource_share_invitations} => Array&lt;Types::ResourceShareInvitation&gt;
608
+ # * {Types::GetResourceShareInvitationsResponse#next_token #next_token} => String
609
+ #
610
+ # @example Request syntax with placeholder values
611
+ #
612
+ # resp = client.get_resource_share_invitations({
613
+ # resource_share_invitation_arns: ["String"],
614
+ # resource_share_arns: ["String"],
615
+ # next_token: "String",
616
+ # max_results: 1,
617
+ # })
618
+ #
619
+ # @example Response structure
620
+ #
621
+ # resp.resource_share_invitations #=> Array
622
+ # resp.resource_share_invitations[0].resource_share_invitation_arn #=> String
623
+ # resp.resource_share_invitations[0].resource_share_name #=> String
624
+ # resp.resource_share_invitations[0].resource_share_arn #=> String
625
+ # resp.resource_share_invitations[0].sender_account_id #=> String
626
+ # resp.resource_share_invitations[0].receiver_account_id #=> String
627
+ # resp.resource_share_invitations[0].invitation_timestamp #=> Time
628
+ # resp.resource_share_invitations[0].status #=> String, one of "PENDING", "ACCEPTED", "REJECTED", "EXPIRED"
629
+ # resp.resource_share_invitations[0].resource_share_associations #=> Array
630
+ # resp.resource_share_invitations[0].resource_share_associations[0].resource_share_arn #=> String
631
+ # resp.resource_share_invitations[0].resource_share_associations[0].associated_entity #=> String
632
+ # resp.resource_share_invitations[0].resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
633
+ # resp.resource_share_invitations[0].resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
634
+ # resp.resource_share_invitations[0].resource_share_associations[0].status_message #=> String
635
+ # resp.resource_share_invitations[0].resource_share_associations[0].creation_time #=> Time
636
+ # resp.resource_share_invitations[0].resource_share_associations[0].last_updated_time #=> Time
637
+ # resp.resource_share_invitations[0].resource_share_associations[0].external #=> Boolean
638
+ # resp.next_token #=> String
639
+ #
640
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceShareInvitations AWS API Documentation
641
+ #
642
+ # @overload get_resource_share_invitations(params = {})
643
+ # @param [Hash] params ({})
644
+ def get_resource_share_invitations(params = {}, options = {})
645
+ req = build_request(:get_resource_share_invitations, params)
646
+ req.send_request(options)
647
+ end
648
+
649
+ # Gets the specified resource shares or all of your resource shares.
650
+ #
651
+ # @option params [Array<String>] :resource_share_arns
652
+ # The Amazon Resource Names (ARN) of the resource shares.
653
+ #
654
+ # @option params [String] :resource_share_status
655
+ # The status of the resource share.
656
+ #
657
+ # @option params [required, String] :resource_owner
658
+ # The type of owner.
659
+ #
660
+ # @option params [String] :name
661
+ # The name of the resource share.
662
+ #
663
+ # @option params [Array<Types::TagFilter>] :tag_filters
664
+ # One or more tag filters.
665
+ #
666
+ # @option params [String] :next_token
667
+ # The token for the next page of results.
668
+ #
669
+ # @option params [Integer] :max_results
670
+ # The maximum number of results to return with a single call. To
671
+ # retrieve the remaining results, make another call with the returned
672
+ # `nextToken` value.
673
+ #
674
+ # @return [Types::GetResourceSharesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
675
+ #
676
+ # * {Types::GetResourceSharesResponse#resource_shares #resource_shares} => Array&lt;Types::ResourceShare&gt;
677
+ # * {Types::GetResourceSharesResponse#next_token #next_token} => String
678
+ #
679
+ # @example Request syntax with placeholder values
680
+ #
681
+ # resp = client.get_resource_shares({
682
+ # resource_share_arns: ["String"],
683
+ # resource_share_status: "PENDING", # accepts PENDING, ACTIVE, FAILED, DELETING, DELETED
684
+ # resource_owner: "SELF", # required, accepts SELF, OTHER-ACCOUNTS
685
+ # name: "String",
686
+ # tag_filters: [
687
+ # {
688
+ # tag_key: "TagKey",
689
+ # tag_values: ["TagValue"],
690
+ # },
691
+ # ],
692
+ # next_token: "String",
693
+ # max_results: 1,
694
+ # })
695
+ #
696
+ # @example Response structure
697
+ #
698
+ # resp.resource_shares #=> Array
699
+ # resp.resource_shares[0].resource_share_arn #=> String
700
+ # resp.resource_shares[0].name #=> String
701
+ # resp.resource_shares[0].owning_account_id #=> String
702
+ # resp.resource_shares[0].allow_external_principals #=> Boolean
703
+ # resp.resource_shares[0].status #=> String, one of "PENDING", "ACTIVE", "FAILED", "DELETING", "DELETED"
704
+ # resp.resource_shares[0].status_message #=> String
705
+ # resp.resource_shares[0].tags #=> Array
706
+ # resp.resource_shares[0].tags[0].key #=> String
707
+ # resp.resource_shares[0].tags[0].value #=> String
708
+ # resp.resource_shares[0].creation_time #=> Time
709
+ # resp.resource_shares[0].last_updated_time #=> Time
710
+ # resp.next_token #=> String
711
+ #
712
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/GetResourceShares AWS API Documentation
713
+ #
714
+ # @overload get_resource_shares(params = {})
715
+ # @param [Hash] params ({})
716
+ def get_resource_shares(params = {}, options = {})
717
+ req = build_request(:get_resource_shares, params)
718
+ req.send_request(options)
719
+ end
720
+
721
+ # Lists the principals with access to the specified resource.
722
+ #
723
+ # @option params [required, String] :resource_owner
724
+ # The type of owner.
725
+ #
726
+ # @option params [String] :resource_arn
727
+ # The Amazon Resource Name (ARN) of the resource.
728
+ #
729
+ # @option params [Array<String>] :principals
730
+ # The principals.
731
+ #
732
+ # @option params [String] :resource_type
733
+ # The resource type.
734
+ #
735
+ # @option params [Array<String>] :resource_share_arns
736
+ # The Amazon Resource Names (ARN) of the resource shares.
737
+ #
738
+ # @option params [String] :next_token
739
+ # The token for the next page of results.
740
+ #
741
+ # @option params [Integer] :max_results
742
+ # The maximum number of results to return with a single call. To
743
+ # retrieve the remaining results, make another call with the returned
744
+ # `nextToken` value.
745
+ #
746
+ # @return [Types::ListPrincipalsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
747
+ #
748
+ # * {Types::ListPrincipalsResponse#principals #principals} => Array&lt;Types::Principal&gt;
749
+ # * {Types::ListPrincipalsResponse#next_token #next_token} => String
750
+ #
751
+ # @example Request syntax with placeholder values
752
+ #
753
+ # resp = client.list_principals({
754
+ # resource_owner: "SELF", # required, accepts SELF, OTHER-ACCOUNTS
755
+ # resource_arn: "String",
756
+ # principals: ["String"],
757
+ # resource_type: "String",
758
+ # resource_share_arns: ["String"],
759
+ # next_token: "String",
760
+ # max_results: 1,
761
+ # })
762
+ #
763
+ # @example Response structure
764
+ #
765
+ # resp.principals #=> Array
766
+ # resp.principals[0].id #=> String
767
+ # resp.principals[0].resource_share_arn #=> String
768
+ # resp.principals[0].creation_time #=> Time
769
+ # resp.principals[0].last_updated_time #=> Time
770
+ # resp.principals[0].external #=> Boolean
771
+ # resp.next_token #=> String
772
+ #
773
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListPrincipals AWS API Documentation
774
+ #
775
+ # @overload list_principals(params = {})
776
+ # @param [Hash] params ({})
777
+ def list_principals(params = {}, options = {})
778
+ req = build_request(:list_principals, params)
779
+ req.send_request(options)
780
+ end
781
+
782
+ # Lists the resources that the specified principal can access.
783
+ #
784
+ # @option params [required, String] :resource_owner
785
+ # The type of owner.
786
+ #
787
+ # @option params [String] :principal
788
+ # The principal.
789
+ #
790
+ # @option params [String] :resource_type
791
+ # The resource type.
792
+ #
793
+ # @option params [Array<String>] :resource_arns
794
+ # The Amazon Resource Names (ARN) of the resources.
795
+ #
796
+ # @option params [Array<String>] :resource_share_arns
797
+ # The Amazon Resource Names (ARN) of the resource shares.
798
+ #
799
+ # @option params [String] :next_token
800
+ # The token for the next page of results.
801
+ #
802
+ # @option params [Integer] :max_results
803
+ # The maximum number of results to return with a single call. To
804
+ # retrieve the remaining results, make another call with the returned
805
+ # `nextToken` value.
806
+ #
807
+ # @return [Types::ListResourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
808
+ #
809
+ # * {Types::ListResourcesResponse#resources #resources} => Array&lt;Types::Resource&gt;
810
+ # * {Types::ListResourcesResponse#next_token #next_token} => String
811
+ #
812
+ # @example Request syntax with placeholder values
813
+ #
814
+ # resp = client.list_resources({
815
+ # resource_owner: "SELF", # required, accepts SELF, OTHER-ACCOUNTS
816
+ # principal: "String",
817
+ # resource_type: "String",
818
+ # resource_arns: ["String"],
819
+ # resource_share_arns: ["String"],
820
+ # next_token: "String",
821
+ # max_results: 1,
822
+ # })
823
+ #
824
+ # @example Response structure
825
+ #
826
+ # resp.resources #=> Array
827
+ # resp.resources[0].arn #=> String
828
+ # resp.resources[0].type #=> String
829
+ # resp.resources[0].resource_share_arn #=> String
830
+ # resp.resources[0].status #=> String, one of "AVAILABLE", "ZONAL_RESOURCE_INACCESSIBLE", "LIMIT_EXCEEDED", "UNAVAILABLE"
831
+ # resp.resources[0].status_message #=> String
832
+ # resp.resources[0].creation_time #=> Time
833
+ # resp.resources[0].last_updated_time #=> Time
834
+ # resp.next_token #=> String
835
+ #
836
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListResources AWS API Documentation
837
+ #
838
+ # @overload list_resources(params = {})
839
+ # @param [Hash] params ({})
840
+ def list_resources(params = {}, options = {})
841
+ req = build_request(:list_resources, params)
842
+ req.send_request(options)
843
+ end
844
+
845
+ # Rejects an invitation to a resource share from another AWS account.
846
+ #
847
+ # @option params [required, String] :resource_share_invitation_arn
848
+ # The Amazon Resource Name (ARN) of the invitation.
849
+ #
850
+ # @option params [String] :client_token
851
+ # A unique, case-sensitive identifier that you provide to ensure the
852
+ # idempotency of the request.
853
+ #
854
+ # @return [Types::RejectResourceShareInvitationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
855
+ #
856
+ # * {Types::RejectResourceShareInvitationResponse#resource_share_invitation #resource_share_invitation} => Types::ResourceShareInvitation
857
+ # * {Types::RejectResourceShareInvitationResponse#client_token #client_token} => String
858
+ #
859
+ # @example Request syntax with placeholder values
860
+ #
861
+ # resp = client.reject_resource_share_invitation({
862
+ # resource_share_invitation_arn: "String", # required
863
+ # client_token: "String",
864
+ # })
865
+ #
866
+ # @example Response structure
867
+ #
868
+ # resp.resource_share_invitation.resource_share_invitation_arn #=> String
869
+ # resp.resource_share_invitation.resource_share_name #=> String
870
+ # resp.resource_share_invitation.resource_share_arn #=> String
871
+ # resp.resource_share_invitation.sender_account_id #=> String
872
+ # resp.resource_share_invitation.receiver_account_id #=> String
873
+ # resp.resource_share_invitation.invitation_timestamp #=> Time
874
+ # resp.resource_share_invitation.status #=> String, one of "PENDING", "ACCEPTED", "REJECTED", "EXPIRED"
875
+ # resp.resource_share_invitation.resource_share_associations #=> Array
876
+ # resp.resource_share_invitation.resource_share_associations[0].resource_share_arn #=> String
877
+ # resp.resource_share_invitation.resource_share_associations[0].associated_entity #=> String
878
+ # resp.resource_share_invitation.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
879
+ # resp.resource_share_invitation.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
880
+ # resp.resource_share_invitation.resource_share_associations[0].status_message #=> String
881
+ # resp.resource_share_invitation.resource_share_associations[0].creation_time #=> Time
882
+ # resp.resource_share_invitation.resource_share_associations[0].last_updated_time #=> Time
883
+ # resp.resource_share_invitation.resource_share_associations[0].external #=> Boolean
884
+ # resp.client_token #=> String
885
+ #
886
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/RejectResourceShareInvitation AWS API Documentation
887
+ #
888
+ # @overload reject_resource_share_invitation(params = {})
889
+ # @param [Hash] params ({})
890
+ def reject_resource_share_invitation(params = {}, options = {})
891
+ req = build_request(:reject_resource_share_invitation, params)
892
+ req.send_request(options)
893
+ end
894
+
895
+ # Adds the specified tags to the specified resource share.
896
+ #
897
+ # @option params [required, String] :resource_share_arn
898
+ # The Amazon Resource Name (ARN) of the resource share.
899
+ #
900
+ # @option params [required, Array<Types::Tag>] :tags
901
+ # One or more tags.
902
+ #
903
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
904
+ #
905
+ # @example Request syntax with placeholder values
906
+ #
907
+ # resp = client.tag_resource({
908
+ # resource_share_arn: "String", # required
909
+ # tags: [ # required
910
+ # {
911
+ # key: "TagKey",
912
+ # value: "TagValue",
913
+ # },
914
+ # ],
915
+ # })
916
+ #
917
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/TagResource AWS API Documentation
918
+ #
919
+ # @overload tag_resource(params = {})
920
+ # @param [Hash] params ({})
921
+ def tag_resource(params = {}, options = {})
922
+ req = build_request(:tag_resource, params)
923
+ req.send_request(options)
924
+ end
925
+
926
+ # Removes the specified tags from the specified resource share.
927
+ #
928
+ # @option params [required, String] :resource_share_arn
929
+ # The Amazon Resource Name (ARN) of the resource share.
930
+ #
931
+ # @option params [required, Array<String>] :tag_keys
932
+ # The tag keys of the tags to remove.
933
+ #
934
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
935
+ #
936
+ # @example Request syntax with placeholder values
937
+ #
938
+ # resp = client.untag_resource({
939
+ # resource_share_arn: "String", # required
940
+ # tag_keys: ["TagKey"], # required
941
+ # })
942
+ #
943
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UntagResource AWS API Documentation
944
+ #
945
+ # @overload untag_resource(params = {})
946
+ # @param [Hash] params ({})
947
+ def untag_resource(params = {}, options = {})
948
+ req = build_request(:untag_resource, params)
949
+ req.send_request(options)
950
+ end
951
+
952
+ # Updates the specified resource share.
953
+ #
954
+ # @option params [required, String] :resource_share_arn
955
+ # The Amazon Resource Name (ARN) of the resource share.
956
+ #
957
+ # @option params [String] :name
958
+ # The name of the resource share.
959
+ #
960
+ # @option params [Boolean] :allow_external_principals
961
+ # Indicates whether principals outside your organization can be
962
+ # associated with a resource share.
963
+ #
964
+ # @option params [String] :client_token
965
+ # A unique, case-sensitive identifier that you provide to ensure the
966
+ # idempotency of the request.
967
+ #
968
+ # @return [Types::UpdateResourceShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
969
+ #
970
+ # * {Types::UpdateResourceShareResponse#resource_share #resource_share} => Types::ResourceShare
971
+ # * {Types::UpdateResourceShareResponse#client_token #client_token} => String
972
+ #
973
+ # @example Request syntax with placeholder values
974
+ #
975
+ # resp = client.update_resource_share({
976
+ # resource_share_arn: "String", # required
977
+ # name: "String",
978
+ # allow_external_principals: false,
979
+ # client_token: "String",
980
+ # })
981
+ #
982
+ # @example Response structure
983
+ #
984
+ # resp.resource_share.resource_share_arn #=> String
985
+ # resp.resource_share.name #=> String
986
+ # resp.resource_share.owning_account_id #=> String
987
+ # resp.resource_share.allow_external_principals #=> Boolean
988
+ # resp.resource_share.status #=> String, one of "PENDING", "ACTIVE", "FAILED", "DELETING", "DELETED"
989
+ # resp.resource_share.status_message #=> String
990
+ # resp.resource_share.tags #=> Array
991
+ # resp.resource_share.tags[0].key #=> String
992
+ # resp.resource_share.tags[0].value #=> String
993
+ # resp.resource_share.creation_time #=> Time
994
+ # resp.resource_share.last_updated_time #=> Time
995
+ # resp.client_token #=> String
996
+ #
997
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/UpdateResourceShare AWS API Documentation
998
+ #
999
+ # @overload update_resource_share(params = {})
1000
+ # @param [Hash] params ({})
1001
+ def update_resource_share(params = {}, options = {})
1002
+ req = build_request(:update_resource_share, params)
1003
+ req.send_request(options)
1004
+ end
1005
+
1006
+ # @!endgroup
1007
+
1008
+ # @param params ({})
1009
+ # @api private
1010
+ def build_request(operation_name, params = {})
1011
+ handlers = @handlers.for(operation_name)
1012
+ context = Seahorse::Client::RequestContext.new(
1013
+ operation_name: operation_name,
1014
+ operation: config.api.operation(operation_name),
1015
+ client: self,
1016
+ params: params,
1017
+ config: config)
1018
+ context[:gem_name] = 'aws-sdk-ram'
1019
+ context[:gem_version] = '1.0.0'
1020
+ Seahorse::Client::Request.new(handlers, context)
1021
+ end
1022
+
1023
+ # @api private
1024
+ # @deprecated
1025
+ def waiter_names
1026
+ []
1027
+ end
1028
+
1029
+ class << self
1030
+
1031
+ # @api private
1032
+ attr_reader :identifier
1033
+
1034
+ # @api private
1035
+ def errors_module
1036
+ Errors
1037
+ end
1038
+
1039
+ end
1040
+ end
1041
+ end