aws-sdk-dataexchange 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: f81b9bb1f0412ae542bd8f980b7f672de9aa6033
4
+ data.tar.gz: c19804fdc6c6291f3c9bfdfd23a6734a5b5e0a3b
5
+ SHA512:
6
+ metadata.gz: 4645916542e31504907db52f41b30caaf5ef5999b34ad3c706a96c31c4a29acbaa3722935183556d5d4428a2aa9b036fef12323f82d38fdb09d458be5be25801
7
+ data.tar.gz: b5b8b8d0e5a823a7443f49f05928922594acc115993a76e226bfce1aa9d07ff02125783fa7936866d74547c8808478114c174e3f2a0df15f00fd2019bcd4b98c
@@ -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-dataexchange/types'
12
+ require_relative 'aws-sdk-dataexchange/client_api'
13
+ require_relative 'aws-sdk-dataexchange/client'
14
+ require_relative 'aws-sdk-dataexchange/errors'
15
+ require_relative 'aws-sdk-dataexchange/resource'
16
+ require_relative 'aws-sdk-dataexchange/customizations'
17
+
18
+ # This module provides support for AWS Data Exchange. This module is available in the
19
+ # `aws-sdk-dataexchange` 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 Data Exchange all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::DataExchange::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::DataExchange
44
+
45
+ GEM_VERSION = '1.0.0'
46
+
47
+ end
@@ -0,0 +1,1323 @@
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/endpoint_pattern.rb'
20
+ require 'aws-sdk-core/plugins/response_paging.rb'
21
+ require 'aws-sdk-core/plugins/stub_responses.rb'
22
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
23
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
27
+ require 'aws-sdk-core/plugins/signature_v4.rb'
28
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
29
+
30
+ Aws::Plugins::GlobalConfiguration.add_identifier(:dataexchange)
31
+
32
+ module Aws::DataExchange
33
+ class Client < Seahorse::Client::Base
34
+
35
+ include Aws::ClientStubs
36
+
37
+ @identifier = :dataexchange
38
+
39
+ set_api(ClientApi::API)
40
+
41
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
42
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
43
+ add_plugin(Aws::Plugins::Logging)
44
+ add_plugin(Aws::Plugins::ParamConverter)
45
+ add_plugin(Aws::Plugins::ParamValidator)
46
+ add_plugin(Aws::Plugins::UserAgent)
47
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
48
+ add_plugin(Aws::Plugins::RetryErrors)
49
+ add_plugin(Aws::Plugins::GlobalConfiguration)
50
+ add_plugin(Aws::Plugins::RegionalEndpoint)
51
+ add_plugin(Aws::Plugins::EndpointDiscovery)
52
+ add_plugin(Aws::Plugins::EndpointPattern)
53
+ add_plugin(Aws::Plugins::ResponsePaging)
54
+ add_plugin(Aws::Plugins::StubResponses)
55
+ add_plugin(Aws::Plugins::IdempotencyToken)
56
+ add_plugin(Aws::Plugins::JsonvalueConverter)
57
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
58
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
59
+ add_plugin(Aws::Plugins::TransferEncoding)
60
+ add_plugin(Aws::Plugins::SignatureV4)
61
+ add_plugin(Aws::Plugins::Protocols::RestJson)
62
+
63
+ # @overload initialize(options)
64
+ # @param [Hash] options
65
+ # @option options [required, Aws::CredentialProvider] :credentials
66
+ # Your AWS credentials. This can be an instance of any one of the
67
+ # following classes:
68
+ #
69
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
70
+ # credentials.
71
+ #
72
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
73
+ # from an EC2 IMDS on an EC2 instance.
74
+ #
75
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
76
+ # shared file, such as `~/.aws/config`.
77
+ #
78
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
79
+ #
80
+ # When `:credentials` are not configured directly, the following
81
+ # locations will be searched for credentials:
82
+ #
83
+ # * `Aws.config[:credentials]`
84
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
85
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
86
+ # * `~/.aws/credentials`
87
+ # * `~/.aws/config`
88
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
89
+ # very aggressive. Construct and pass an instance of
90
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
91
+ # timeouts.
92
+ #
93
+ # @option options [required, String] :region
94
+ # The AWS region to connect to. The configured `:region` is
95
+ # used to determine the service `:endpoint`. When not passed,
96
+ # a default `:region` is search for in the following locations:
97
+ #
98
+ # * `Aws.config[:region]`
99
+ # * `ENV['AWS_REGION']`
100
+ # * `ENV['AMAZON_REGION']`
101
+ # * `ENV['AWS_DEFAULT_REGION']`
102
+ # * `~/.aws/credentials`
103
+ # * `~/.aws/config`
104
+ #
105
+ # @option options [String] :access_key_id
106
+ #
107
+ # @option options [Boolean] :active_endpoint_cache (false)
108
+ # When set to `true`, a thread polling for endpoints will be running in
109
+ # the background every 60 secs (default). Defaults to `false`.
110
+ #
111
+ # @option options [Boolean] :client_side_monitoring (false)
112
+ # When `true`, client-side metrics will be collected for all API requests from
113
+ # this client.
114
+ #
115
+ # @option options [String] :client_side_monitoring_client_id ("")
116
+ # Allows you to provide an identifier for this client which will be attached to
117
+ # all generated client side metrics. Defaults to an empty string.
118
+ #
119
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
120
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
121
+ # side monitoring agent is running on, where client metrics will be published via UDP.
122
+ #
123
+ # @option options [Integer] :client_side_monitoring_port (31000)
124
+ # Required for publishing client metrics. The port that the client side monitoring
125
+ # agent is running on, where client metrics will be published via UDP.
126
+ #
127
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
128
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
129
+ # will use the Client Side Monitoring Agent Publisher.
130
+ #
131
+ # @option options [Boolean] :convert_params (true)
132
+ # When `true`, an attempt is made to coerce request parameters into
133
+ # the required types.
134
+ #
135
+ # @option options [Boolean] :disable_host_prefix_injection (false)
136
+ # Set to true to disable SDK automatically adding host prefix
137
+ # to default service endpoint when available.
138
+ #
139
+ # @option options [String] :endpoint
140
+ # The client endpoint is normally constructed from the `:region`
141
+ # option. You should only configure an `:endpoint` when connecting
142
+ # to test endpoints. This should be avalid HTTP(S) URI.
143
+ #
144
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
145
+ # Used for the maximum size limit of the LRU cache storing endpoints data
146
+ # for endpoint discovery enabled operations. Defaults to 1000.
147
+ #
148
+ # @option options [Integer] :endpoint_cache_max_threads (10)
149
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
150
+ #
151
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
152
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
153
+ # Use this option to config the time interval in seconds for making
154
+ # requests fetching endpoints information. Defaults to 60 sec.
155
+ #
156
+ # @option options [Boolean] :endpoint_discovery (false)
157
+ # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
158
+ #
159
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
+ # The log formatter.
161
+ #
162
+ # @option options [Symbol] :log_level (:info)
163
+ # The log level to send messages to the `:logger` at.
164
+ #
165
+ # @option options [Logger] :logger
166
+ # The Logger instance to send log messages to. If this option
167
+ # is not set, logging will be disabled.
168
+ #
169
+ # @option options [String] :profile ("default")
170
+ # Used when loading credentials from the shared credentials file
171
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
172
+ #
173
+ # @option options [Float] :retry_base_delay (0.3)
174
+ # The base delay in seconds used by the default backoff function.
175
+ #
176
+ # @option options [Symbol] :retry_jitter (:none)
177
+ # 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.
178
+ #
179
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
+ #
181
+ # @option options [Integer] :retry_limit (3)
182
+ # The maximum number of times to retry failed requests. Only
183
+ # ~ 500 level server errors and certain ~ 400 level client errors
184
+ # are retried. Generally, these are throttling errors, data
185
+ # checksum errors, networking errors, timeout errors and auth
186
+ # errors from expired credentials.
187
+ #
188
+ # @option options [Integer] :retry_max_delay (0)
189
+ # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
190
+ #
191
+ # @option options [String] :secret_access_key
192
+ #
193
+ # @option options [String] :session_token
194
+ #
195
+ # @option options [Boolean] :stub_responses (false)
196
+ # Causes the client to return stubbed responses. By default
197
+ # fake responses are generated and returned. You can specify
198
+ # the response data to return or errors to raise by calling
199
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
200
+ #
201
+ # ** Please note ** When response stubbing is enabled, no HTTP
202
+ # requests are made, and retries are disabled.
203
+ #
204
+ # @option options [Boolean] :validate_params (true)
205
+ # When `true`, request parameters are validated before
206
+ # sending the request.
207
+ #
208
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
209
+ # requests through. Formatted like 'http://proxy.com:123'.
210
+ #
211
+ # @option options [Float] :http_open_timeout (15) The number of
212
+ # seconds to wait when opening a HTTP session before rasing a
213
+ # `Timeout::Error`.
214
+ #
215
+ # @option options [Integer] :http_read_timeout (60) The default
216
+ # number of seconds to wait for response data. This value can
217
+ # safely be set
218
+ # per-request on the session yeidled by {#session_for}.
219
+ #
220
+ # @option options [Float] :http_idle_timeout (5) The number of
221
+ # seconds a connection is allowed to sit idble before it is
222
+ # considered stale. Stale connections are closed and removed
223
+ # from the pool before making a request.
224
+ #
225
+ # @option options [Float] :http_continue_timeout (1) The number of
226
+ # seconds to wait for a 100-continue response before sending the
227
+ # request body. This option has no effect unless the request has
228
+ # "Expect" header set to "100-continue". Defaults to `nil` which
229
+ # disables this behaviour. This value can safely be set per
230
+ # request on the session yeidled by {#session_for}.
231
+ #
232
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
233
+ # HTTP debug output will be sent to the `:logger`.
234
+ #
235
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
236
+ # SSL peer certificates are verified when establishing a
237
+ # connection.
238
+ #
239
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
240
+ # certificate authority bundle file that should be used when
241
+ # verifying peer certificates. If you do not pass
242
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
243
+ # will be used if available.
244
+ #
245
+ # @option options [String] :ssl_ca_directory Full path of the
246
+ # directory that contains the unbundled SSL certificate
247
+ # authority files for verifying peer certificates. If you do
248
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
249
+ # system default will be used if available.
250
+ #
251
+ def initialize(*args)
252
+ super
253
+ end
254
+
255
+ # @!group API Operations
256
+
257
+ # This operation cancels a job. Jobs can be cancelled only when they are
258
+ # in the WAITING state.
259
+ #
260
+ # @option params [required, String] :job_id
261
+ #
262
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
263
+ #
264
+ # @example Request syntax with placeholder values
265
+ #
266
+ # resp = client.cancel_job({
267
+ # job_id: "__string", # required
268
+ # })
269
+ #
270
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CancelJob AWS API Documentation
271
+ #
272
+ # @overload cancel_job(params = {})
273
+ # @param [Hash] params ({})
274
+ def cancel_job(params = {}, options = {})
275
+ req = build_request(:cancel_job, params)
276
+ req.send_request(options)
277
+ end
278
+
279
+ # This operation creates a data set.
280
+ #
281
+ # @option params [required, String] :asset_type
282
+ # The type of file your data is stored in. Currently, the supported
283
+ # asset type is S3\_SNAPSHOT.
284
+ #
285
+ # @option params [required, String] :description
286
+ # A description for the data set. This value can be up to 16,348
287
+ # characters long.
288
+ #
289
+ # @option params [required, String] :name
290
+ # The name of the data set.
291
+ #
292
+ # @option params [Hash<String,String>] :tags
293
+ # A data set tag is an optional label that you can assign to a data set
294
+ # when you create it. Each tag consists of a key and an optional value,
295
+ # both of which you define. When you use tagging, you can also use
296
+ # tag-based access control in IAM policies to control access to these
297
+ # data sets and revisions.
298
+ #
299
+ # @return [Types::CreateDataSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
300
+ #
301
+ # * {Types::CreateDataSetResponse#arn #arn} => String
302
+ # * {Types::CreateDataSetResponse#asset_type #asset_type} => String
303
+ # * {Types::CreateDataSetResponse#created_at #created_at} => Time
304
+ # * {Types::CreateDataSetResponse#description #description} => String
305
+ # * {Types::CreateDataSetResponse#id #id} => String
306
+ # * {Types::CreateDataSetResponse#name #name} => String
307
+ # * {Types::CreateDataSetResponse#origin #origin} => String
308
+ # * {Types::CreateDataSetResponse#origin_details #origin_details} => Types::OriginDetails
309
+ # * {Types::CreateDataSetResponse#source_id #source_id} => String
310
+ # * {Types::CreateDataSetResponse#tags #tags} => Hash&lt;String,String&gt;
311
+ # * {Types::CreateDataSetResponse#updated_at #updated_at} => Time
312
+ #
313
+ # @example Request syntax with placeholder values
314
+ #
315
+ # resp = client.create_data_set({
316
+ # asset_type: "S3_SNAPSHOT", # required, accepts S3_SNAPSHOT
317
+ # description: "Description", # required
318
+ # name: "Name", # required
319
+ # tags: {
320
+ # "__string" => "__string",
321
+ # },
322
+ # })
323
+ #
324
+ # @example Response structure
325
+ #
326
+ # resp.arn #=> String
327
+ # resp.asset_type #=> String, one of "S3_SNAPSHOT"
328
+ # resp.created_at #=> Time
329
+ # resp.description #=> String
330
+ # resp.id #=> String
331
+ # resp.name #=> String
332
+ # resp.origin #=> String, one of "OWNED", "ENTITLED"
333
+ # resp.origin_details.product_id #=> String
334
+ # resp.source_id #=> String
335
+ # resp.tags #=> Hash
336
+ # resp.tags["__string"] #=> String
337
+ # resp.updated_at #=> Time
338
+ #
339
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateDataSet AWS API Documentation
340
+ #
341
+ # @overload create_data_set(params = {})
342
+ # @param [Hash] params ({})
343
+ def create_data_set(params = {}, options = {})
344
+ req = build_request(:create_data_set, params)
345
+ req.send_request(options)
346
+ end
347
+
348
+ # This operation creates a job.
349
+ #
350
+ # @option params [required, Types::RequestDetails] :details
351
+ # The details for the CreateJob request.
352
+ #
353
+ # @option params [required, String] :type
354
+ # The type of job to be created.
355
+ #
356
+ # @return [Types::CreateJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
357
+ #
358
+ # * {Types::CreateJobResponse#arn #arn} => String
359
+ # * {Types::CreateJobResponse#created_at #created_at} => Time
360
+ # * {Types::CreateJobResponse#details #details} => Types::ResponseDetails
361
+ # * {Types::CreateJobResponse#errors #errors} => Array&lt;Types::JobError&gt;
362
+ # * {Types::CreateJobResponse#id #id} => String
363
+ # * {Types::CreateJobResponse#state #state} => String
364
+ # * {Types::CreateJobResponse#type #type} => String
365
+ # * {Types::CreateJobResponse#updated_at #updated_at} => Time
366
+ #
367
+ # @example Request syntax with placeholder values
368
+ #
369
+ # resp = client.create_job({
370
+ # details: { # required
371
+ # export_asset_to_signed_url: {
372
+ # asset_id: "Id", # required
373
+ # data_set_id: "Id", # required
374
+ # revision_id: "Id", # required
375
+ # },
376
+ # export_assets_to_s3: {
377
+ # asset_destinations: [ # required
378
+ # {
379
+ # asset_id: "Id", # required
380
+ # bucket: "__string", # required
381
+ # key: "__string",
382
+ # },
383
+ # ],
384
+ # data_set_id: "Id", # required
385
+ # revision_id: "Id", # required
386
+ # },
387
+ # import_asset_from_signed_url: {
388
+ # asset_name: "AssetName", # required
389
+ # data_set_id: "Id", # required
390
+ # md_5_hash: "__stringMin24Max24PatternAZaZ094AZaZ092AZaZ093", # required
391
+ # revision_id: "Id", # required
392
+ # },
393
+ # import_assets_from_s3: {
394
+ # asset_sources: [ # required
395
+ # {
396
+ # bucket: "__string", # required
397
+ # key: "__string", # required
398
+ # },
399
+ # ],
400
+ # data_set_id: "Id", # required
401
+ # revision_id: "Id", # required
402
+ # },
403
+ # },
404
+ # type: "IMPORT_ASSETS_FROM_S3", # required, accepts IMPORT_ASSETS_FROM_S3, IMPORT_ASSET_FROM_SIGNED_URL, EXPORT_ASSETS_TO_S3, EXPORT_ASSET_TO_SIGNED_URL
405
+ # })
406
+ #
407
+ # @example Response structure
408
+ #
409
+ # resp.arn #=> String
410
+ # resp.created_at #=> Time
411
+ # resp.details.export_asset_to_signed_url.asset_id #=> String
412
+ # resp.details.export_asset_to_signed_url.data_set_id #=> String
413
+ # resp.details.export_asset_to_signed_url.revision_id #=> String
414
+ # resp.details.export_asset_to_signed_url.signed_url #=> String
415
+ # resp.details.export_asset_to_signed_url.signed_url_expires_at #=> Time
416
+ # resp.details.export_assets_to_s3.asset_destinations #=> Array
417
+ # resp.details.export_assets_to_s3.asset_destinations[0].asset_id #=> String
418
+ # resp.details.export_assets_to_s3.asset_destinations[0].bucket #=> String
419
+ # resp.details.export_assets_to_s3.asset_destinations[0].key #=> String
420
+ # resp.details.export_assets_to_s3.data_set_id #=> String
421
+ # resp.details.export_assets_to_s3.revision_id #=> String
422
+ # resp.details.import_asset_from_signed_url.asset_name #=> String
423
+ # resp.details.import_asset_from_signed_url.data_set_id #=> String
424
+ # resp.details.import_asset_from_signed_url.md_5_hash #=> String
425
+ # resp.details.import_asset_from_signed_url.revision_id #=> String
426
+ # resp.details.import_asset_from_signed_url.signed_url #=> String
427
+ # resp.details.import_asset_from_signed_url.signed_url_expires_at #=> Time
428
+ # resp.details.import_assets_from_s3.asset_sources #=> Array
429
+ # resp.details.import_assets_from_s3.asset_sources[0].bucket #=> String
430
+ # resp.details.import_assets_from_s3.asset_sources[0].key #=> String
431
+ # resp.details.import_assets_from_s3.data_set_id #=> String
432
+ # resp.details.import_assets_from_s3.revision_id #=> String
433
+ # resp.errors #=> Array
434
+ # resp.errors[0].code #=> String, one of "ACCESS_DENIED_EXCEPTION", "INTERNAL_SERVER_EXCEPTION", "MALWARE_DETECTED", "RESOURCE_NOT_FOUND_EXCEPTION", "SERVICE_QUOTA_EXCEEDED_EXCEPTION", "VALIDATION_EXCEPTION", "MALWARE_SCAN_ENCRYPTED_FILE"
435
+ # resp.errors[0].details.import_asset_from_signed_url_job_error_details.asset_name #=> String
436
+ # resp.errors[0].details.import_assets_from_s3_job_error_details #=> Array
437
+ # resp.errors[0].details.import_assets_from_s3_job_error_details[0].bucket #=> String
438
+ # resp.errors[0].details.import_assets_from_s3_job_error_details[0].key #=> String
439
+ # resp.errors[0].limit_name #=> String, one of "Assets per revision", "Asset size in GB"
440
+ # resp.errors[0].limit_value #=> Float
441
+ # resp.errors[0].message #=> String
442
+ # resp.errors[0].resource_id #=> String
443
+ # resp.errors[0].resource_type #=> String, one of "REVISION", "ASSET"
444
+ # resp.id #=> String
445
+ # resp.state #=> String, one of "WAITING", "IN_PROGRESS", "ERROR", "COMPLETED", "CANCELLED", "TIMED_OUT"
446
+ # resp.type #=> String, one of "IMPORT_ASSETS_FROM_S3", "IMPORT_ASSET_FROM_SIGNED_URL", "EXPORT_ASSETS_TO_S3", "EXPORT_ASSET_TO_SIGNED_URL"
447
+ # resp.updated_at #=> Time
448
+ #
449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateJob AWS API Documentation
450
+ #
451
+ # @overload create_job(params = {})
452
+ # @param [Hash] params ({})
453
+ def create_job(params = {}, options = {})
454
+ req = build_request(:create_job, params)
455
+ req.send_request(options)
456
+ end
457
+
458
+ # This operation creates a revision for a data set.
459
+ #
460
+ # @option params [String] :comment
461
+ # An optional comment about the revision.
462
+ #
463
+ # @option params [required, String] :data_set_id
464
+ #
465
+ # @option params [Hash<String,String>] :tags
466
+ # A revision tag is an optional label that you can assign to a revision
467
+ # when you create it. Each tag consists of a key and an optional value,
468
+ # both of which you define. When you use tagging, you can also use
469
+ # tag-based access control in IAM policies to control access to these
470
+ # data sets and revisions.
471
+ #
472
+ # @return [Types::CreateRevisionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
473
+ #
474
+ # * {Types::CreateRevisionResponse#arn #arn} => String
475
+ # * {Types::CreateRevisionResponse#comment #comment} => String
476
+ # * {Types::CreateRevisionResponse#created_at #created_at} => Time
477
+ # * {Types::CreateRevisionResponse#data_set_id #data_set_id} => String
478
+ # * {Types::CreateRevisionResponse#finalized #finalized} => Boolean
479
+ # * {Types::CreateRevisionResponse#id #id} => String
480
+ # * {Types::CreateRevisionResponse#source_id #source_id} => String
481
+ # * {Types::CreateRevisionResponse#tags #tags} => Hash&lt;String,String&gt;
482
+ # * {Types::CreateRevisionResponse#updated_at #updated_at} => Time
483
+ #
484
+ # @example Request syntax with placeholder values
485
+ #
486
+ # resp = client.create_revision({
487
+ # comment: "__stringMin0Max16384",
488
+ # data_set_id: "__string", # required
489
+ # tags: {
490
+ # "__string" => "__string",
491
+ # },
492
+ # })
493
+ #
494
+ # @example Response structure
495
+ #
496
+ # resp.arn #=> String
497
+ # resp.comment #=> String
498
+ # resp.created_at #=> Time
499
+ # resp.data_set_id #=> String
500
+ # resp.finalized #=> Boolean
501
+ # resp.id #=> String
502
+ # resp.source_id #=> String
503
+ # resp.tags #=> Hash
504
+ # resp.tags["__string"] #=> String
505
+ # resp.updated_at #=> Time
506
+ #
507
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/CreateRevision AWS API Documentation
508
+ #
509
+ # @overload create_revision(params = {})
510
+ # @param [Hash] params ({})
511
+ def create_revision(params = {}, options = {})
512
+ req = build_request(:create_revision, params)
513
+ req.send_request(options)
514
+ end
515
+
516
+ # This operation deletes an asset.
517
+ #
518
+ # @option params [required, String] :asset_id
519
+ #
520
+ # @option params [required, String] :data_set_id
521
+ #
522
+ # @option params [required, String] :revision_id
523
+ #
524
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
525
+ #
526
+ # @example Request syntax with placeholder values
527
+ #
528
+ # resp = client.delete_asset({
529
+ # asset_id: "__string", # required
530
+ # data_set_id: "__string", # required
531
+ # revision_id: "__string", # required
532
+ # })
533
+ #
534
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteAsset AWS API Documentation
535
+ #
536
+ # @overload delete_asset(params = {})
537
+ # @param [Hash] params ({})
538
+ def delete_asset(params = {}, options = {})
539
+ req = build_request(:delete_asset, params)
540
+ req.send_request(options)
541
+ end
542
+
543
+ # This operation deletes a data set.
544
+ #
545
+ # @option params [required, String] :data_set_id
546
+ #
547
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
548
+ #
549
+ # @example Request syntax with placeholder values
550
+ #
551
+ # resp = client.delete_data_set({
552
+ # data_set_id: "__string", # required
553
+ # })
554
+ #
555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteDataSet AWS API Documentation
556
+ #
557
+ # @overload delete_data_set(params = {})
558
+ # @param [Hash] params ({})
559
+ def delete_data_set(params = {}, options = {})
560
+ req = build_request(:delete_data_set, params)
561
+ req.send_request(options)
562
+ end
563
+
564
+ # This operation deletes a revision.
565
+ #
566
+ # @option params [required, String] :data_set_id
567
+ #
568
+ # @option params [required, String] :revision_id
569
+ #
570
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
571
+ #
572
+ # @example Request syntax with placeholder values
573
+ #
574
+ # resp = client.delete_revision({
575
+ # data_set_id: "__string", # required
576
+ # revision_id: "__string", # required
577
+ # })
578
+ #
579
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/DeleteRevision AWS API Documentation
580
+ #
581
+ # @overload delete_revision(params = {})
582
+ # @param [Hash] params ({})
583
+ def delete_revision(params = {}, options = {})
584
+ req = build_request(:delete_revision, params)
585
+ req.send_request(options)
586
+ end
587
+
588
+ # This operation returns information about an asset.
589
+ #
590
+ # @option params [required, String] :asset_id
591
+ #
592
+ # @option params [required, String] :data_set_id
593
+ #
594
+ # @option params [required, String] :revision_id
595
+ #
596
+ # @return [Types::GetAssetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
597
+ #
598
+ # * {Types::GetAssetResponse#arn #arn} => String
599
+ # * {Types::GetAssetResponse#asset_details #asset_details} => Types::AssetDetails
600
+ # * {Types::GetAssetResponse#asset_type #asset_type} => String
601
+ # * {Types::GetAssetResponse#created_at #created_at} => Time
602
+ # * {Types::GetAssetResponse#data_set_id #data_set_id} => String
603
+ # * {Types::GetAssetResponse#id #id} => String
604
+ # * {Types::GetAssetResponse#name #name} => String
605
+ # * {Types::GetAssetResponse#revision_id #revision_id} => String
606
+ # * {Types::GetAssetResponse#source_id #source_id} => String
607
+ # * {Types::GetAssetResponse#updated_at #updated_at} => Time
608
+ #
609
+ # @example Request syntax with placeholder values
610
+ #
611
+ # resp = client.get_asset({
612
+ # asset_id: "__string", # required
613
+ # data_set_id: "__string", # required
614
+ # revision_id: "__string", # required
615
+ # })
616
+ #
617
+ # @example Response structure
618
+ #
619
+ # resp.arn #=> String
620
+ # resp.asset_details.s3_snapshot_asset.size #=> Float
621
+ # resp.asset_type #=> String, one of "S3_SNAPSHOT"
622
+ # resp.created_at #=> Time
623
+ # resp.data_set_id #=> String
624
+ # resp.id #=> String
625
+ # resp.name #=> String
626
+ # resp.revision_id #=> String
627
+ # resp.source_id #=> String
628
+ # resp.updated_at #=> Time
629
+ #
630
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetAsset AWS API Documentation
631
+ #
632
+ # @overload get_asset(params = {})
633
+ # @param [Hash] params ({})
634
+ def get_asset(params = {}, options = {})
635
+ req = build_request(:get_asset, params)
636
+ req.send_request(options)
637
+ end
638
+
639
+ # This operation returns information about a data set.
640
+ #
641
+ # @option params [required, String] :data_set_id
642
+ #
643
+ # @return [Types::GetDataSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
644
+ #
645
+ # * {Types::GetDataSetResponse#arn #arn} => String
646
+ # * {Types::GetDataSetResponse#asset_type #asset_type} => String
647
+ # * {Types::GetDataSetResponse#created_at #created_at} => Time
648
+ # * {Types::GetDataSetResponse#description #description} => String
649
+ # * {Types::GetDataSetResponse#id #id} => String
650
+ # * {Types::GetDataSetResponse#name #name} => String
651
+ # * {Types::GetDataSetResponse#origin #origin} => String
652
+ # * {Types::GetDataSetResponse#origin_details #origin_details} => Types::OriginDetails
653
+ # * {Types::GetDataSetResponse#source_id #source_id} => String
654
+ # * {Types::GetDataSetResponse#tags #tags} => Hash&lt;String,String&gt;
655
+ # * {Types::GetDataSetResponse#updated_at #updated_at} => Time
656
+ #
657
+ # @example Request syntax with placeholder values
658
+ #
659
+ # resp = client.get_data_set({
660
+ # data_set_id: "__string", # required
661
+ # })
662
+ #
663
+ # @example Response structure
664
+ #
665
+ # resp.arn #=> String
666
+ # resp.asset_type #=> String, one of "S3_SNAPSHOT"
667
+ # resp.created_at #=> Time
668
+ # resp.description #=> String
669
+ # resp.id #=> String
670
+ # resp.name #=> String
671
+ # resp.origin #=> String, one of "OWNED", "ENTITLED"
672
+ # resp.origin_details.product_id #=> String
673
+ # resp.source_id #=> String
674
+ # resp.tags #=> Hash
675
+ # resp.tags["__string"] #=> String
676
+ # resp.updated_at #=> Time
677
+ #
678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetDataSet AWS API Documentation
679
+ #
680
+ # @overload get_data_set(params = {})
681
+ # @param [Hash] params ({})
682
+ def get_data_set(params = {}, options = {})
683
+ req = build_request(:get_data_set, params)
684
+ req.send_request(options)
685
+ end
686
+
687
+ # This operation returns information about a job.
688
+ #
689
+ # @option params [required, String] :job_id
690
+ #
691
+ # @return [Types::GetJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
692
+ #
693
+ # * {Types::GetJobResponse#arn #arn} => String
694
+ # * {Types::GetJobResponse#created_at #created_at} => Time
695
+ # * {Types::GetJobResponse#details #details} => Types::ResponseDetails
696
+ # * {Types::GetJobResponse#errors #errors} => Array&lt;Types::JobError&gt;
697
+ # * {Types::GetJobResponse#id #id} => String
698
+ # * {Types::GetJobResponse#state #state} => String
699
+ # * {Types::GetJobResponse#type #type} => String
700
+ # * {Types::GetJobResponse#updated_at #updated_at} => Time
701
+ #
702
+ # @example Request syntax with placeholder values
703
+ #
704
+ # resp = client.get_job({
705
+ # job_id: "__string", # required
706
+ # })
707
+ #
708
+ # @example Response structure
709
+ #
710
+ # resp.arn #=> String
711
+ # resp.created_at #=> Time
712
+ # resp.details.export_asset_to_signed_url.asset_id #=> String
713
+ # resp.details.export_asset_to_signed_url.data_set_id #=> String
714
+ # resp.details.export_asset_to_signed_url.revision_id #=> String
715
+ # resp.details.export_asset_to_signed_url.signed_url #=> String
716
+ # resp.details.export_asset_to_signed_url.signed_url_expires_at #=> Time
717
+ # resp.details.export_assets_to_s3.asset_destinations #=> Array
718
+ # resp.details.export_assets_to_s3.asset_destinations[0].asset_id #=> String
719
+ # resp.details.export_assets_to_s3.asset_destinations[0].bucket #=> String
720
+ # resp.details.export_assets_to_s3.asset_destinations[0].key #=> String
721
+ # resp.details.export_assets_to_s3.data_set_id #=> String
722
+ # resp.details.export_assets_to_s3.revision_id #=> String
723
+ # resp.details.import_asset_from_signed_url.asset_name #=> String
724
+ # resp.details.import_asset_from_signed_url.data_set_id #=> String
725
+ # resp.details.import_asset_from_signed_url.md_5_hash #=> String
726
+ # resp.details.import_asset_from_signed_url.revision_id #=> String
727
+ # resp.details.import_asset_from_signed_url.signed_url #=> String
728
+ # resp.details.import_asset_from_signed_url.signed_url_expires_at #=> Time
729
+ # resp.details.import_assets_from_s3.asset_sources #=> Array
730
+ # resp.details.import_assets_from_s3.asset_sources[0].bucket #=> String
731
+ # resp.details.import_assets_from_s3.asset_sources[0].key #=> String
732
+ # resp.details.import_assets_from_s3.data_set_id #=> String
733
+ # resp.details.import_assets_from_s3.revision_id #=> String
734
+ # resp.errors #=> Array
735
+ # resp.errors[0].code #=> String, one of "ACCESS_DENIED_EXCEPTION", "INTERNAL_SERVER_EXCEPTION", "MALWARE_DETECTED", "RESOURCE_NOT_FOUND_EXCEPTION", "SERVICE_QUOTA_EXCEEDED_EXCEPTION", "VALIDATION_EXCEPTION", "MALWARE_SCAN_ENCRYPTED_FILE"
736
+ # resp.errors[0].details.import_asset_from_signed_url_job_error_details.asset_name #=> String
737
+ # resp.errors[0].details.import_assets_from_s3_job_error_details #=> Array
738
+ # resp.errors[0].details.import_assets_from_s3_job_error_details[0].bucket #=> String
739
+ # resp.errors[0].details.import_assets_from_s3_job_error_details[0].key #=> String
740
+ # resp.errors[0].limit_name #=> String, one of "Assets per revision", "Asset size in GB"
741
+ # resp.errors[0].limit_value #=> Float
742
+ # resp.errors[0].message #=> String
743
+ # resp.errors[0].resource_id #=> String
744
+ # resp.errors[0].resource_type #=> String, one of "REVISION", "ASSET"
745
+ # resp.id #=> String
746
+ # resp.state #=> String, one of "WAITING", "IN_PROGRESS", "ERROR", "COMPLETED", "CANCELLED", "TIMED_OUT"
747
+ # resp.type #=> String, one of "IMPORT_ASSETS_FROM_S3", "IMPORT_ASSET_FROM_SIGNED_URL", "EXPORT_ASSETS_TO_S3", "EXPORT_ASSET_TO_SIGNED_URL"
748
+ # resp.updated_at #=> Time
749
+ #
750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetJob AWS API Documentation
751
+ #
752
+ # @overload get_job(params = {})
753
+ # @param [Hash] params ({})
754
+ def get_job(params = {}, options = {})
755
+ req = build_request(:get_job, params)
756
+ req.send_request(options)
757
+ end
758
+
759
+ # This operation returns information about a revision.
760
+ #
761
+ # @option params [required, String] :data_set_id
762
+ #
763
+ # @option params [required, String] :revision_id
764
+ #
765
+ # @return [Types::GetRevisionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
766
+ #
767
+ # * {Types::GetRevisionResponse#arn #arn} => String
768
+ # * {Types::GetRevisionResponse#comment #comment} => String
769
+ # * {Types::GetRevisionResponse#created_at #created_at} => Time
770
+ # * {Types::GetRevisionResponse#data_set_id #data_set_id} => String
771
+ # * {Types::GetRevisionResponse#finalized #finalized} => Boolean
772
+ # * {Types::GetRevisionResponse#id #id} => String
773
+ # * {Types::GetRevisionResponse#source_id #source_id} => String
774
+ # * {Types::GetRevisionResponse#tags #tags} => Hash&lt;String,String&gt;
775
+ # * {Types::GetRevisionResponse#updated_at #updated_at} => Time
776
+ #
777
+ # @example Request syntax with placeholder values
778
+ #
779
+ # resp = client.get_revision({
780
+ # data_set_id: "__string", # required
781
+ # revision_id: "__string", # required
782
+ # })
783
+ #
784
+ # @example Response structure
785
+ #
786
+ # resp.arn #=> String
787
+ # resp.comment #=> String
788
+ # resp.created_at #=> Time
789
+ # resp.data_set_id #=> String
790
+ # resp.finalized #=> Boolean
791
+ # resp.id #=> String
792
+ # resp.source_id #=> String
793
+ # resp.tags #=> Hash
794
+ # resp.tags["__string"] #=> String
795
+ # resp.updated_at #=> Time
796
+ #
797
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/GetRevision AWS API Documentation
798
+ #
799
+ # @overload get_revision(params = {})
800
+ # @param [Hash] params ({})
801
+ def get_revision(params = {}, options = {})
802
+ req = build_request(:get_revision, params)
803
+ req.send_request(options)
804
+ end
805
+
806
+ # This operation lists a data set's revisions sorted by CreatedAt in
807
+ # descending order.
808
+ #
809
+ # @option params [required, String] :data_set_id
810
+ #
811
+ # @option params [Integer] :max_results
812
+ #
813
+ # @option params [String] :next_token
814
+ #
815
+ # @return [Types::ListDataSetRevisionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
816
+ #
817
+ # * {Types::ListDataSetRevisionsResponse#next_token #next_token} => String
818
+ # * {Types::ListDataSetRevisionsResponse#revisions #revisions} => Array&lt;Types::RevisionEntry&gt;
819
+ #
820
+ # @example Request syntax with placeholder values
821
+ #
822
+ # resp = client.list_data_set_revisions({
823
+ # data_set_id: "__string", # required
824
+ # max_results: 1,
825
+ # next_token: "__string",
826
+ # })
827
+ #
828
+ # @example Response structure
829
+ #
830
+ # resp.next_token #=> String
831
+ # resp.revisions #=> Array
832
+ # resp.revisions[0].arn #=> String
833
+ # resp.revisions[0].comment #=> String
834
+ # resp.revisions[0].created_at #=> Time
835
+ # resp.revisions[0].data_set_id #=> String
836
+ # resp.revisions[0].finalized #=> Boolean
837
+ # resp.revisions[0].id #=> String
838
+ # resp.revisions[0].source_id #=> String
839
+ # resp.revisions[0].updated_at #=> Time
840
+ #
841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListDataSetRevisions AWS API Documentation
842
+ #
843
+ # @overload list_data_set_revisions(params = {})
844
+ # @param [Hash] params ({})
845
+ def list_data_set_revisions(params = {}, options = {})
846
+ req = build_request(:list_data_set_revisions, params)
847
+ req.send_request(options)
848
+ end
849
+
850
+ # This operation lists your data sets. When listing by origin OWNED,
851
+ # results are sorted by CreatedAt in descending order. When listing by
852
+ # origin ENTITLED, there is no order and the maxResults parameter is
853
+ # ignored.
854
+ #
855
+ # @option params [Integer] :max_results
856
+ #
857
+ # @option params [String] :next_token
858
+ #
859
+ # @option params [String] :origin
860
+ #
861
+ # @return [Types::ListDataSetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
862
+ #
863
+ # * {Types::ListDataSetsResponse#data_sets #data_sets} => Array&lt;Types::DataSetEntry&gt;
864
+ # * {Types::ListDataSetsResponse#next_token #next_token} => String
865
+ #
866
+ # @example Request syntax with placeholder values
867
+ #
868
+ # resp = client.list_data_sets({
869
+ # max_results: 1,
870
+ # next_token: "__string",
871
+ # origin: "__string",
872
+ # })
873
+ #
874
+ # @example Response structure
875
+ #
876
+ # resp.data_sets #=> Array
877
+ # resp.data_sets[0].arn #=> String
878
+ # resp.data_sets[0].asset_type #=> String, one of "S3_SNAPSHOT"
879
+ # resp.data_sets[0].created_at #=> Time
880
+ # resp.data_sets[0].description #=> String
881
+ # resp.data_sets[0].id #=> String
882
+ # resp.data_sets[0].name #=> String
883
+ # resp.data_sets[0].origin #=> String, one of "OWNED", "ENTITLED"
884
+ # resp.data_sets[0].origin_details.product_id #=> String
885
+ # resp.data_sets[0].source_id #=> String
886
+ # resp.data_sets[0].updated_at #=> Time
887
+ # resp.next_token #=> String
888
+ #
889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListDataSets AWS API Documentation
890
+ #
891
+ # @overload list_data_sets(params = {})
892
+ # @param [Hash] params ({})
893
+ def list_data_sets(params = {}, options = {})
894
+ req = build_request(:list_data_sets, params)
895
+ req.send_request(options)
896
+ end
897
+
898
+ # This operation lists your jobs sorted by CreatedAt in descending
899
+ # order.
900
+ #
901
+ # @option params [String] :data_set_id
902
+ #
903
+ # @option params [Integer] :max_results
904
+ #
905
+ # @option params [String] :next_token
906
+ #
907
+ # @option params [String] :revision_id
908
+ #
909
+ # @return [Types::ListJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
910
+ #
911
+ # * {Types::ListJobsResponse#jobs #jobs} => Array&lt;Types::JobEntry&gt;
912
+ # * {Types::ListJobsResponse#next_token #next_token} => String
913
+ #
914
+ # @example Request syntax with placeholder values
915
+ #
916
+ # resp = client.list_jobs({
917
+ # data_set_id: "__string",
918
+ # max_results: 1,
919
+ # next_token: "__string",
920
+ # revision_id: "__string",
921
+ # })
922
+ #
923
+ # @example Response structure
924
+ #
925
+ # resp.jobs #=> Array
926
+ # resp.jobs[0].arn #=> String
927
+ # resp.jobs[0].created_at #=> Time
928
+ # resp.jobs[0].details.export_asset_to_signed_url.asset_id #=> String
929
+ # resp.jobs[0].details.export_asset_to_signed_url.data_set_id #=> String
930
+ # resp.jobs[0].details.export_asset_to_signed_url.revision_id #=> String
931
+ # resp.jobs[0].details.export_asset_to_signed_url.signed_url #=> String
932
+ # resp.jobs[0].details.export_asset_to_signed_url.signed_url_expires_at #=> Time
933
+ # resp.jobs[0].details.export_assets_to_s3.asset_destinations #=> Array
934
+ # resp.jobs[0].details.export_assets_to_s3.asset_destinations[0].asset_id #=> String
935
+ # resp.jobs[0].details.export_assets_to_s3.asset_destinations[0].bucket #=> String
936
+ # resp.jobs[0].details.export_assets_to_s3.asset_destinations[0].key #=> String
937
+ # resp.jobs[0].details.export_assets_to_s3.data_set_id #=> String
938
+ # resp.jobs[0].details.export_assets_to_s3.revision_id #=> String
939
+ # resp.jobs[0].details.import_asset_from_signed_url.asset_name #=> String
940
+ # resp.jobs[0].details.import_asset_from_signed_url.data_set_id #=> String
941
+ # resp.jobs[0].details.import_asset_from_signed_url.md_5_hash #=> String
942
+ # resp.jobs[0].details.import_asset_from_signed_url.revision_id #=> String
943
+ # resp.jobs[0].details.import_asset_from_signed_url.signed_url #=> String
944
+ # resp.jobs[0].details.import_asset_from_signed_url.signed_url_expires_at #=> Time
945
+ # resp.jobs[0].details.import_assets_from_s3.asset_sources #=> Array
946
+ # resp.jobs[0].details.import_assets_from_s3.asset_sources[0].bucket #=> String
947
+ # resp.jobs[0].details.import_assets_from_s3.asset_sources[0].key #=> String
948
+ # resp.jobs[0].details.import_assets_from_s3.data_set_id #=> String
949
+ # resp.jobs[0].details.import_assets_from_s3.revision_id #=> String
950
+ # resp.jobs[0].errors #=> Array
951
+ # resp.jobs[0].errors[0].code #=> String, one of "ACCESS_DENIED_EXCEPTION", "INTERNAL_SERVER_EXCEPTION", "MALWARE_DETECTED", "RESOURCE_NOT_FOUND_EXCEPTION", "SERVICE_QUOTA_EXCEEDED_EXCEPTION", "VALIDATION_EXCEPTION", "MALWARE_SCAN_ENCRYPTED_FILE"
952
+ # resp.jobs[0].errors[0].details.import_asset_from_signed_url_job_error_details.asset_name #=> String
953
+ # resp.jobs[0].errors[0].details.import_assets_from_s3_job_error_details #=> Array
954
+ # resp.jobs[0].errors[0].details.import_assets_from_s3_job_error_details[0].bucket #=> String
955
+ # resp.jobs[0].errors[0].details.import_assets_from_s3_job_error_details[0].key #=> String
956
+ # resp.jobs[0].errors[0].limit_name #=> String, one of "Assets per revision", "Asset size in GB"
957
+ # resp.jobs[0].errors[0].limit_value #=> Float
958
+ # resp.jobs[0].errors[0].message #=> String
959
+ # resp.jobs[0].errors[0].resource_id #=> String
960
+ # resp.jobs[0].errors[0].resource_type #=> String, one of "REVISION", "ASSET"
961
+ # resp.jobs[0].id #=> String
962
+ # resp.jobs[0].state #=> String, one of "WAITING", "IN_PROGRESS", "ERROR", "COMPLETED", "CANCELLED", "TIMED_OUT"
963
+ # resp.jobs[0].type #=> String, one of "IMPORT_ASSETS_FROM_S3", "IMPORT_ASSET_FROM_SIGNED_URL", "EXPORT_ASSETS_TO_S3", "EXPORT_ASSET_TO_SIGNED_URL"
964
+ # resp.jobs[0].updated_at #=> Time
965
+ # resp.next_token #=> String
966
+ #
967
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListJobs AWS API Documentation
968
+ #
969
+ # @overload list_jobs(params = {})
970
+ # @param [Hash] params ({})
971
+ def list_jobs(params = {}, options = {})
972
+ req = build_request(:list_jobs, params)
973
+ req.send_request(options)
974
+ end
975
+
976
+ # This operation lists a revision's assets sorted alphabetically in
977
+ # descending order.
978
+ #
979
+ # @option params [required, String] :data_set_id
980
+ #
981
+ # @option params [Integer] :max_results
982
+ #
983
+ # @option params [String] :next_token
984
+ #
985
+ # @option params [required, String] :revision_id
986
+ #
987
+ # @return [Types::ListRevisionAssetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
988
+ #
989
+ # * {Types::ListRevisionAssetsResponse#assets #assets} => Array&lt;Types::AssetEntry&gt;
990
+ # * {Types::ListRevisionAssetsResponse#next_token #next_token} => String
991
+ #
992
+ # @example Request syntax with placeholder values
993
+ #
994
+ # resp = client.list_revision_assets({
995
+ # data_set_id: "__string", # required
996
+ # max_results: 1,
997
+ # next_token: "__string",
998
+ # revision_id: "__string", # required
999
+ # })
1000
+ #
1001
+ # @example Response structure
1002
+ #
1003
+ # resp.assets #=> Array
1004
+ # resp.assets[0].arn #=> String
1005
+ # resp.assets[0].asset_details.s3_snapshot_asset.size #=> Float
1006
+ # resp.assets[0].asset_type #=> String, one of "S3_SNAPSHOT"
1007
+ # resp.assets[0].created_at #=> Time
1008
+ # resp.assets[0].data_set_id #=> String
1009
+ # resp.assets[0].id #=> String
1010
+ # resp.assets[0].name #=> String
1011
+ # resp.assets[0].revision_id #=> String
1012
+ # resp.assets[0].source_id #=> String
1013
+ # resp.assets[0].updated_at #=> Time
1014
+ # resp.next_token #=> String
1015
+ #
1016
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListRevisionAssets AWS API Documentation
1017
+ #
1018
+ # @overload list_revision_assets(params = {})
1019
+ # @param [Hash] params ({})
1020
+ def list_revision_assets(params = {}, options = {})
1021
+ req = build_request(:list_revision_assets, params)
1022
+ req.send_request(options)
1023
+ end
1024
+
1025
+ # This operation lists the tags on the resource.
1026
+ #
1027
+ # @option params [required, String] :resource_arn
1028
+ #
1029
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1030
+ #
1031
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
1032
+ #
1033
+ # @example Request syntax with placeholder values
1034
+ #
1035
+ # resp = client.list_tags_for_resource({
1036
+ # resource_arn: "__string", # required
1037
+ # })
1038
+ #
1039
+ # @example Response structure
1040
+ #
1041
+ # resp.tags #=> Hash
1042
+ # resp.tags["__string"] #=> String
1043
+ #
1044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/ListTagsForResource AWS API Documentation
1045
+ #
1046
+ # @overload list_tags_for_resource(params = {})
1047
+ # @param [Hash] params ({})
1048
+ def list_tags_for_resource(params = {}, options = {})
1049
+ req = build_request(:list_tags_for_resource, params)
1050
+ req.send_request(options)
1051
+ end
1052
+
1053
+ # This operation starts a job.
1054
+ #
1055
+ # @option params [required, String] :job_id
1056
+ #
1057
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1058
+ #
1059
+ # @example Request syntax with placeholder values
1060
+ #
1061
+ # resp = client.start_job({
1062
+ # job_id: "__string", # required
1063
+ # })
1064
+ #
1065
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/StartJob AWS API Documentation
1066
+ #
1067
+ # @overload start_job(params = {})
1068
+ # @param [Hash] params ({})
1069
+ def start_job(params = {}, options = {})
1070
+ req = build_request(:start_job, params)
1071
+ req.send_request(options)
1072
+ end
1073
+
1074
+ # This operation tags a resource.
1075
+ #
1076
+ # @option params [required, String] :resource_arn
1077
+ #
1078
+ # @option params [required, Hash<String,String>] :tags
1079
+ #
1080
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1081
+ #
1082
+ # @example Request syntax with placeholder values
1083
+ #
1084
+ # resp = client.tag_resource({
1085
+ # resource_arn: "__string", # required
1086
+ # tags: { # required
1087
+ # "__string" => "__string",
1088
+ # },
1089
+ # })
1090
+ #
1091
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/TagResource AWS API Documentation
1092
+ #
1093
+ # @overload tag_resource(params = {})
1094
+ # @param [Hash] params ({})
1095
+ def tag_resource(params = {}, options = {})
1096
+ req = build_request(:tag_resource, params)
1097
+ req.send_request(options)
1098
+ end
1099
+
1100
+ # This operation removes one or more tags from a resource.
1101
+ #
1102
+ # @option params [required, String] :resource_arn
1103
+ #
1104
+ # @option params [required, Array<String>] :tag_keys
1105
+ #
1106
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1107
+ #
1108
+ # @example Request syntax with placeholder values
1109
+ #
1110
+ # resp = client.untag_resource({
1111
+ # resource_arn: "__string", # required
1112
+ # tag_keys: ["__string"], # required
1113
+ # })
1114
+ #
1115
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UntagResource AWS API Documentation
1116
+ #
1117
+ # @overload untag_resource(params = {})
1118
+ # @param [Hash] params ({})
1119
+ def untag_resource(params = {}, options = {})
1120
+ req = build_request(:untag_resource, params)
1121
+ req.send_request(options)
1122
+ end
1123
+
1124
+ # This operation updates an asset.
1125
+ #
1126
+ # @option params [required, String] :asset_id
1127
+ #
1128
+ # @option params [required, String] :data_set_id
1129
+ #
1130
+ # @option params [required, String] :name
1131
+ # The name of the asset. When importing from Amazon S3, the S3 object
1132
+ # key is used as the asset name. When exporting to Amazon S3, the asset
1133
+ # name is used as default target S3 object key.
1134
+ #
1135
+ # @option params [required, String] :revision_id
1136
+ #
1137
+ # @return [Types::UpdateAssetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1138
+ #
1139
+ # * {Types::UpdateAssetResponse#arn #arn} => String
1140
+ # * {Types::UpdateAssetResponse#asset_details #asset_details} => Types::AssetDetails
1141
+ # * {Types::UpdateAssetResponse#asset_type #asset_type} => String
1142
+ # * {Types::UpdateAssetResponse#created_at #created_at} => Time
1143
+ # * {Types::UpdateAssetResponse#data_set_id #data_set_id} => String
1144
+ # * {Types::UpdateAssetResponse#id #id} => String
1145
+ # * {Types::UpdateAssetResponse#name #name} => String
1146
+ # * {Types::UpdateAssetResponse#revision_id #revision_id} => String
1147
+ # * {Types::UpdateAssetResponse#source_id #source_id} => String
1148
+ # * {Types::UpdateAssetResponse#updated_at #updated_at} => Time
1149
+ #
1150
+ # @example Request syntax with placeholder values
1151
+ #
1152
+ # resp = client.update_asset({
1153
+ # asset_id: "__string", # required
1154
+ # data_set_id: "__string", # required
1155
+ # name: "AssetName", # required
1156
+ # revision_id: "__string", # required
1157
+ # })
1158
+ #
1159
+ # @example Response structure
1160
+ #
1161
+ # resp.arn #=> String
1162
+ # resp.asset_details.s3_snapshot_asset.size #=> Float
1163
+ # resp.asset_type #=> String, one of "S3_SNAPSHOT"
1164
+ # resp.created_at #=> Time
1165
+ # resp.data_set_id #=> String
1166
+ # resp.id #=> String
1167
+ # resp.name #=> String
1168
+ # resp.revision_id #=> String
1169
+ # resp.source_id #=> String
1170
+ # resp.updated_at #=> Time
1171
+ #
1172
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateAsset AWS API Documentation
1173
+ #
1174
+ # @overload update_asset(params = {})
1175
+ # @param [Hash] params ({})
1176
+ def update_asset(params = {}, options = {})
1177
+ req = build_request(:update_asset, params)
1178
+ req.send_request(options)
1179
+ end
1180
+
1181
+ # This operation updates a data set.
1182
+ #
1183
+ # @option params [required, String] :data_set_id
1184
+ #
1185
+ # @option params [String] :description
1186
+ # The description for the data set.
1187
+ #
1188
+ # @option params [String] :name
1189
+ # The name of the data set.
1190
+ #
1191
+ # @return [Types::UpdateDataSetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1192
+ #
1193
+ # * {Types::UpdateDataSetResponse#arn #arn} => String
1194
+ # * {Types::UpdateDataSetResponse#asset_type #asset_type} => String
1195
+ # * {Types::UpdateDataSetResponse#created_at #created_at} => Time
1196
+ # * {Types::UpdateDataSetResponse#description #description} => String
1197
+ # * {Types::UpdateDataSetResponse#id #id} => String
1198
+ # * {Types::UpdateDataSetResponse#name #name} => String
1199
+ # * {Types::UpdateDataSetResponse#origin #origin} => String
1200
+ # * {Types::UpdateDataSetResponse#origin_details #origin_details} => Types::OriginDetails
1201
+ # * {Types::UpdateDataSetResponse#source_id #source_id} => String
1202
+ # * {Types::UpdateDataSetResponse#updated_at #updated_at} => Time
1203
+ #
1204
+ # @example Request syntax with placeholder values
1205
+ #
1206
+ # resp = client.update_data_set({
1207
+ # data_set_id: "__string", # required
1208
+ # description: "Description",
1209
+ # name: "Name",
1210
+ # })
1211
+ #
1212
+ # @example Response structure
1213
+ #
1214
+ # resp.arn #=> String
1215
+ # resp.asset_type #=> String, one of "S3_SNAPSHOT"
1216
+ # resp.created_at #=> Time
1217
+ # resp.description #=> String
1218
+ # resp.id #=> String
1219
+ # resp.name #=> String
1220
+ # resp.origin #=> String, one of "OWNED", "ENTITLED"
1221
+ # resp.origin_details.product_id #=> String
1222
+ # resp.source_id #=> String
1223
+ # resp.updated_at #=> Time
1224
+ #
1225
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateDataSet AWS API Documentation
1226
+ #
1227
+ # @overload update_data_set(params = {})
1228
+ # @param [Hash] params ({})
1229
+ def update_data_set(params = {}, options = {})
1230
+ req = build_request(:update_data_set, params)
1231
+ req.send_request(options)
1232
+ end
1233
+
1234
+ # This operation updates a revision.
1235
+ #
1236
+ # @option params [String] :comment
1237
+ # An optional comment about the revision.
1238
+ #
1239
+ # @option params [required, String] :data_set_id
1240
+ #
1241
+ # @option params [Boolean] :finalized
1242
+ # Finalizing a revision tells AWS Data Exchange that your changes to the
1243
+ # assets in the revision are complete. After it's in this read-only
1244
+ # state, you can publish the revision to your products.
1245
+ #
1246
+ # @option params [required, String] :revision_id
1247
+ #
1248
+ # @return [Types::UpdateRevisionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1249
+ #
1250
+ # * {Types::UpdateRevisionResponse#arn #arn} => String
1251
+ # * {Types::UpdateRevisionResponse#comment #comment} => String
1252
+ # * {Types::UpdateRevisionResponse#created_at #created_at} => Time
1253
+ # * {Types::UpdateRevisionResponse#data_set_id #data_set_id} => String
1254
+ # * {Types::UpdateRevisionResponse#finalized #finalized} => Boolean
1255
+ # * {Types::UpdateRevisionResponse#id #id} => String
1256
+ # * {Types::UpdateRevisionResponse#source_id #source_id} => String
1257
+ # * {Types::UpdateRevisionResponse#updated_at #updated_at} => Time
1258
+ #
1259
+ # @example Request syntax with placeholder values
1260
+ #
1261
+ # resp = client.update_revision({
1262
+ # comment: "__stringMin0Max16384",
1263
+ # data_set_id: "__string", # required
1264
+ # finalized: false,
1265
+ # revision_id: "__string", # required
1266
+ # })
1267
+ #
1268
+ # @example Response structure
1269
+ #
1270
+ # resp.arn #=> String
1271
+ # resp.comment #=> String
1272
+ # resp.created_at #=> Time
1273
+ # resp.data_set_id #=> String
1274
+ # resp.finalized #=> Boolean
1275
+ # resp.id #=> String
1276
+ # resp.source_id #=> String
1277
+ # resp.updated_at #=> Time
1278
+ #
1279
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateRevision AWS API Documentation
1280
+ #
1281
+ # @overload update_revision(params = {})
1282
+ # @param [Hash] params ({})
1283
+ def update_revision(params = {}, options = {})
1284
+ req = build_request(:update_revision, params)
1285
+ req.send_request(options)
1286
+ end
1287
+
1288
+ # @!endgroup
1289
+
1290
+ # @param params ({})
1291
+ # @api private
1292
+ def build_request(operation_name, params = {})
1293
+ handlers = @handlers.for(operation_name)
1294
+ context = Seahorse::Client::RequestContext.new(
1295
+ operation_name: operation_name,
1296
+ operation: config.api.operation(operation_name),
1297
+ client: self,
1298
+ params: params,
1299
+ config: config)
1300
+ context[:gem_name] = 'aws-sdk-dataexchange'
1301
+ context[:gem_version] = '1.0.0'
1302
+ Seahorse::Client::Request.new(handlers, context)
1303
+ end
1304
+
1305
+ # @api private
1306
+ # @deprecated
1307
+ def waiter_names
1308
+ []
1309
+ end
1310
+
1311
+ class << self
1312
+
1313
+ # @api private
1314
+ attr_reader :identifier
1315
+
1316
+ # @api private
1317
+ def errors_module
1318
+ Errors
1319
+ end
1320
+
1321
+ end
1322
+ end
1323
+ end