aws-sdk-s3control 1.14.0 → 1.16.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: ca70ea437e8a961369c29153ac01180d9b1dd592
4
- data.tar.gz: bff7a51ff32eb071f5328723d7a33f3ed871f62d
2
+ SHA256:
3
+ metadata.gz: b77b3155d338ce53618cc127a75d8108ae1883fdbbb04aeb8d407f2ae4fcb855
4
+ data.tar.gz: fc003749388e91543473cbed732ffd69c477e9b968f61b104e8e275a3bf01e9c
5
5
  SHA512:
6
- metadata.gz: 11db881115462ef1fd6d527a0150e6a784f9eae1da211bb5ff44d09508b8d7e50891146f1da714a5b5266bb0a18e6fe7ec0ec23136d07964b87b9c800bcfce39
7
- data.tar.gz: 9c5717c2e21d2b6e12a7bf5e1ee519fe8edb158b658e743939954855df10a94e4780003207f4456589c7cb42c2979e85e5691b6566f6446d6750a92be963997d
6
+ metadata.gz: 534a95fac2e138d1a2ff52be1687d4ae3039708a96feaeaa98a0096090eb2fbd9d52bb992b5abf4bacad73c1702038d6d5ac849ff084bece4ab9fb2bc77af23d
7
+ data.tar.gz: a531b3c7153c7df9420db7ae0a6026a305d5bb0e93f9441a59998a8897ada354d10bf44889bee2709b39d0ab558c6e2be0162f83535a9c52b22aef26f38a4325
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-s3control/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # s3_control = Aws::S3Control::Client.new
28
+ # resp = s3_control.create_access_point(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from AWS S3 Control all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from AWS S3 Control are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
33
36
  #
34
37
  # begin
35
38
  # # do stuff
36
39
  # rescue Aws::S3Control::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all AWS S3 Control API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-s3control/customizations'
42
45
  # @service
43
46
  module Aws::S3Control
44
47
 
45
- GEM_VERSION = '1.14.0'
48
+ GEM_VERSION = '1.16.0'
46
49
 
47
50
  end
@@ -33,6 +33,18 @@ require 'aws-sdk-s3control/plugins/s3_host_id.rb'
33
33
  Aws::Plugins::GlobalConfiguration.add_identifier(:s3control)
34
34
 
35
35
  module Aws::S3Control
36
+ # An API client for S3Control. To construct a client, you need to configure a `:region` and `:credentials`.
37
+ #
38
+ # client = Aws::S3Control::Client.new(
39
+ # region: region_name,
40
+ # credentials: credentials,
41
+ # # ...
42
+ # )
43
+ #
44
+ # For details on configuring region and credentials see
45
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
46
+ #
47
+ # See {#initialize} for a full list of supported configuration options.
36
48
  class Client < Seahorse::Client::Base
37
49
 
38
50
  include Aws::ClientStubs
@@ -114,6 +126,12 @@ module Aws::S3Control
114
126
  # When set to `true`, a thread polling for endpoints will be running in
115
127
  # the background every 60 secs (default). Defaults to `false`.
116
128
  #
129
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
130
+ # Used only in `adaptive` retry mode. When true, the request will sleep
131
+ # until there is sufficent client side capacity to retry the request.
132
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
133
+ # not retry instead of sleeping.
134
+ #
117
135
  # @option options [Boolean] :client_side_monitoring (false)
118
136
  # When `true`, client-side metrics will be collected for all API requests from
119
137
  # this client.
@@ -138,6 +156,10 @@ module Aws::S3Control
138
156
  # When `true`, an attempt is made to coerce request parameters into
139
157
  # the required types.
140
158
  #
159
+ # @option options [Boolean] :correct_clock_skew (true)
160
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
161
+ # a clock skew correction and retry requests with skewed client clocks.
162
+ #
141
163
  # @option options [Boolean] :disable_host_prefix_injection (false)
142
164
  # Set to true to disable SDK automatically adding host prefix
143
165
  # to default service endpoint when available.
@@ -172,15 +194,29 @@ module Aws::S3Control
172
194
  # The Logger instance to send log messages to. If this option
173
195
  # is not set, logging will be disabled.
174
196
  #
197
+ # @option options [Integer] :max_attempts (3)
198
+ # An integer representing the maximum number attempts that will be made for
199
+ # a single request, including the initial attempt. For example,
200
+ # setting this value to 5 will result in a request being retried up to
201
+ # 4 times. Used in `standard` and `adaptive` retry modes.
202
+ #
175
203
  # @option options [String] :profile ("default")
176
204
  # Used when loading credentials from the shared credentials file
177
205
  # at HOME/.aws/credentials. When not specified, 'default' is used.
178
206
  #
207
+ # @option options [Proc] :retry_backoff
208
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
209
+ # This option is only used in the `legacy` retry mode.
210
+ #
179
211
  # @option options [Float] :retry_base_delay (0.3)
180
- # The base delay in seconds used by the default backoff function.
212
+ # The base delay in seconds used by the default backoff function. This option
213
+ # is only used in the `legacy` retry mode.
181
214
  #
182
215
  # @option options [Symbol] :retry_jitter (:none)
183
- # 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.
216
+ # A delay randomiser function used by the default backoff function.
217
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
218
+ # otherwise a Proc that takes and returns a number. This option is only used
219
+ # in the `legacy` retry mode.
184
220
  #
185
221
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
186
222
  #
@@ -188,11 +224,30 @@ module Aws::S3Control
188
224
  # The maximum number of times to retry failed requests. Only
189
225
  # ~ 500 level server errors and certain ~ 400 level client errors
190
226
  # are retried. Generally, these are throttling errors, data
191
- # checksum errors, networking errors, timeout errors and auth
192
- # errors from expired credentials.
227
+ # checksum errors, networking errors, timeout errors, auth errors,
228
+ # endpoint discovery, and errors from expired credentials.
229
+ # This option is only used in the `legacy` retry mode.
193
230
  #
194
231
  # @option options [Integer] :retry_max_delay (0)
195
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
232
+ # The maximum number of seconds to delay between retries (0 for no limit)
233
+ # used by the default backoff function. This option is only used in the
234
+ # `legacy` retry mode.
235
+ #
236
+ # @option options [String] :retry_mode ("legacy")
237
+ # Specifies which retry algorithm to use. Values are:
238
+ #
239
+ # * `legacy` - The pre-existing retry behavior. This is default value if
240
+ # no retry mode is provided.
241
+ #
242
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
243
+ # This includes support for retry quotas, which limit the number of
244
+ # unsuccessful retries a client can make.
245
+ #
246
+ # * `adaptive` - An experimental retry mode that includes all the
247
+ # functionality of `standard` mode along with automatic client side
248
+ # throttling. This is a provisional mode that may change behavior
249
+ # in the future.
250
+ #
196
251
  #
197
252
  # @option options [String] :secret_access_key
198
253
  #
@@ -219,16 +274,16 @@ module Aws::S3Control
219
274
  # requests through. Formatted like 'http://proxy.com:123'.
220
275
  #
221
276
  # @option options [Float] :http_open_timeout (15) The number of
222
- # seconds to wait when opening a HTTP session before rasing a
277
+ # seconds to wait when opening a HTTP session before raising a
223
278
  # `Timeout::Error`.
224
279
  #
225
280
  # @option options [Integer] :http_read_timeout (60) The default
226
281
  # number of seconds to wait for response data. This value can
227
282
  # safely be set
228
- # per-request on the session yeidled by {#session_for}.
283
+ # per-request on the session yielded by {#session_for}.
229
284
  #
230
285
  # @option options [Float] :http_idle_timeout (5) The number of
231
- # seconds a connection is allowed to sit idble before it is
286
+ # seconds a connection is allowed to sit idle before it is
232
287
  # considered stale. Stale connections are closed and removed
233
288
  # from the pool before making a request.
234
289
  #
@@ -237,7 +292,7 @@ module Aws::S3Control
237
292
  # request body. This option has no effect unless the request has
238
293
  # "Expect" header set to "100-continue". Defaults to `nil` which
239
294
  # disables this behaviour. This value can safely be set per
240
- # request on the session yeidled by {#session_for}.
295
+ # request on the session yielded by {#session_for}.
241
296
  #
242
297
  # @option options [Boolean] :http_wire_trace (false) When `true`,
243
298
  # HTTP debug output will be sent to the `:logger`.
@@ -366,6 +421,9 @@ module Aws::S3Control
366
421
  # (IAM) Role that batch operations will use to execute this job's
367
422
  # operation on each object in the manifest.
368
423
  #
424
+ # @option params [Array<Types::S3Tag>] :tags
425
+ # An optional set of tags to associate with the job when it is created.
426
+ #
369
427
  # @return [Types::CreateJobResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
370
428
  #
371
429
  # * {Types::CreateJobResult#job_id #job_id} => String
@@ -481,6 +539,12 @@ module Aws::S3Control
481
539
  # description: "NonEmptyMaxLength256String",
482
540
  # priority: 1, # required
483
541
  # role_arn: "IAMRoleArn", # required
542
+ # tags: [
543
+ # {
544
+ # key: "NonEmptyMaxLength1024String", # required
545
+ # value: "MaxLength1024String", # required
546
+ # },
547
+ # ],
484
548
  # })
485
549
  #
486
550
  # @example Response structure
@@ -548,6 +612,33 @@ module Aws::S3Control
548
612
  req.send_request(options)
549
613
  end
550
614
 
615
+ # Delete the tags on a Amazon S3 batch operations job, if any.
616
+ #
617
+ # @option params [required, String] :account_id
618
+ # The account ID for the Amazon Web Services account associated with the
619
+ # Amazon S3 batch operations job you want to remove tags from.
620
+ #
621
+ # @option params [required, String] :job_id
622
+ # The ID for the job whose tags you want to delete.
623
+ #
624
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
625
+ #
626
+ # @example Request syntax with placeholder values
627
+ #
628
+ # resp = client.delete_job_tagging({
629
+ # account_id: "AccountId", # required
630
+ # job_id: "JobId", # required
631
+ # })
632
+ #
633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteJobTagging AWS API Documentation
634
+ #
635
+ # @overload delete_job_tagging(params = {})
636
+ # @param [Hash] params ({})
637
+ def delete_job_tagging(params = {}, options = {})
638
+ req = build_request(:delete_job_tagging, params)
639
+ req.send_request(options)
640
+ end
641
+
551
642
  # Removes the `PublicAccessBlock` configuration for an Amazon Web
552
643
  # Services account.
553
644
  #
@@ -797,6 +888,41 @@ module Aws::S3Control
797
888
  req.send_request(options)
798
889
  end
799
890
 
891
+ # Retrieve the tags on a Amazon S3 batch operations job.
892
+ #
893
+ # @option params [required, String] :account_id
894
+ # The account ID for the Amazon Web Services account associated with the
895
+ # Amazon S3 batch operations job you want to retrieve tags for.
896
+ #
897
+ # @option params [required, String] :job_id
898
+ # The ID for the job whose tags you want to retrieve.
899
+ #
900
+ # @return [Types::GetJobTaggingResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
901
+ #
902
+ # * {Types::GetJobTaggingResult#tags #tags} => Array&lt;Types::S3Tag&gt;
903
+ #
904
+ # @example Request syntax with placeholder values
905
+ #
906
+ # resp = client.get_job_tagging({
907
+ # account_id: "AccountId", # required
908
+ # job_id: "JobId", # required
909
+ # })
910
+ #
911
+ # @example Response structure
912
+ #
913
+ # resp.tags #=> Array
914
+ # resp.tags[0].key #=> String
915
+ # resp.tags[0].value #=> String
916
+ #
917
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetJobTagging AWS API Documentation
918
+ #
919
+ # @overload get_job_tagging(params = {})
920
+ # @param [Hash] params ({})
921
+ def get_job_tagging(params = {}, options = {})
922
+ req = build_request(:get_job_tagging, params)
923
+ req.send_request(options)
924
+ end
925
+
800
926
  # Retrieves the `PublicAccessBlock` configuration for an Amazon Web
801
927
  # Services account.
802
928
  #
@@ -989,6 +1115,42 @@ module Aws::S3Control
989
1115
  req.send_request(options)
990
1116
  end
991
1117
 
1118
+ # Replace the set of tags on a Amazon S3 batch operations job.
1119
+ #
1120
+ # @option params [required, String] :account_id
1121
+ # The account ID for the Amazon Web Services account associated with the
1122
+ # Amazon S3 batch operations job you want to replace tags on.
1123
+ #
1124
+ # @option params [required, String] :job_id
1125
+ # The ID for the job whose tags you want to replace.
1126
+ #
1127
+ # @option params [required, Array<Types::S3Tag>] :tags
1128
+ # The set of tags to associate with the job.
1129
+ #
1130
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1131
+ #
1132
+ # @example Request syntax with placeholder values
1133
+ #
1134
+ # resp = client.put_job_tagging({
1135
+ # account_id: "AccountId", # required
1136
+ # job_id: "JobId", # required
1137
+ # tags: [ # required
1138
+ # {
1139
+ # key: "NonEmptyMaxLength1024String", # required
1140
+ # value: "MaxLength1024String", # required
1141
+ # },
1142
+ # ],
1143
+ # })
1144
+ #
1145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutJobTagging AWS API Documentation
1146
+ #
1147
+ # @overload put_job_tagging(params = {})
1148
+ # @param [Hash] params ({})
1149
+ def put_job_tagging(params = {}, options = {})
1150
+ req = build_request(:put_job_tagging, params)
1151
+ req.send_request(options)
1152
+ end
1153
+
992
1154
  # Creates or modifies the `PublicAccessBlock` configuration for an
993
1155
  # Amazon Web Services account.
994
1156
  #
@@ -1118,7 +1280,7 @@ module Aws::S3Control
1118
1280
  params: params,
1119
1281
  config: config)
1120
1282
  context[:gem_name] = 'aws-sdk-s3control'
1121
- context[:gem_version] = '1.14.0'
1283
+ context[:gem_version] = '1.16.0'
1122
1284
  Seahorse::Client::Request.new(handlers, context)
1123
1285
  end
1124
1286
 
@@ -25,6 +25,8 @@ module Aws::S3Control
25
25
  CreationDate = Shapes::TimestampShape.new(name: 'CreationDate')
26
26
  DeleteAccessPointPolicyRequest = Shapes::StructureShape.new(name: 'DeleteAccessPointPolicyRequest')
27
27
  DeleteAccessPointRequest = Shapes::StructureShape.new(name: 'DeleteAccessPointRequest')
28
+ DeleteJobTaggingRequest = Shapes::StructureShape.new(name: 'DeleteJobTaggingRequest')
29
+ DeleteJobTaggingResult = Shapes::StructureShape.new(name: 'DeleteJobTaggingResult')
28
30
  DeletePublicAccessBlockRequest = Shapes::StructureShape.new(name: 'DeletePublicAccessBlockRequest')
29
31
  DescribeJobRequest = Shapes::StructureShape.new(name: 'DescribeJobRequest')
30
32
  DescribeJobResult = Shapes::StructureShape.new(name: 'DescribeJobResult')
@@ -35,6 +37,8 @@ module Aws::S3Control
35
37
  GetAccessPointPolicyStatusResult = Shapes::StructureShape.new(name: 'GetAccessPointPolicyStatusResult')
36
38
  GetAccessPointRequest = Shapes::StructureShape.new(name: 'GetAccessPointRequest')
37
39
  GetAccessPointResult = Shapes::StructureShape.new(name: 'GetAccessPointResult')
40
+ GetJobTaggingRequest = Shapes::StructureShape.new(name: 'GetJobTaggingRequest')
41
+ GetJobTaggingResult = Shapes::StructureShape.new(name: 'GetJobTaggingResult')
38
42
  GetPublicAccessBlockOutput = Shapes::StructureShape.new(name: 'GetPublicAccessBlockOutput')
39
43
  GetPublicAccessBlockRequest = Shapes::StructureShape.new(name: 'GetPublicAccessBlockRequest')
40
44
  IAMRoleArn = Shapes::StringShape.new(name: 'IAMRoleArn')
@@ -94,6 +98,8 @@ module Aws::S3Control
94
98
  PolicyStatus = Shapes::StructureShape.new(name: 'PolicyStatus')
95
99
  PublicAccessBlockConfiguration = Shapes::StructureShape.new(name: 'PublicAccessBlockConfiguration')
96
100
  PutAccessPointPolicyRequest = Shapes::StructureShape.new(name: 'PutAccessPointPolicyRequest')
101
+ PutJobTaggingRequest = Shapes::StructureShape.new(name: 'PutJobTaggingRequest')
102
+ PutJobTaggingResult = Shapes::StructureShape.new(name: 'PutJobTaggingResult')
97
103
  PutPublicAccessBlockRequest = Shapes::StructureShape.new(name: 'PutPublicAccessBlockRequest')
98
104
  ReportPrefixString = Shapes::StringShape.new(name: 'ReportPrefixString')
99
105
  RequestedJobStatus = Shapes::StringShape.new(name: 'RequestedJobStatus')
@@ -130,6 +136,7 @@ module Aws::S3Control
130
136
  SuspendedDate = Shapes::TimestampShape.new(name: 'SuspendedDate')
131
137
  TimeStamp = Shapes::TimestampShape.new(name: 'TimeStamp')
132
138
  TooManyRequestsException = Shapes::StructureShape.new(name: 'TooManyRequestsException')
139
+ TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
133
140
  UpdateJobPriorityRequest = Shapes::StructureShape.new(name: 'UpdateJobPriorityRequest')
134
141
  UpdateJobPriorityResult = Shapes::StructureShape.new(name: 'UpdateJobPriorityResult')
135
142
  UpdateJobStatusRequest = Shapes::StructureShape.new(name: 'UpdateJobStatusRequest')
@@ -164,6 +171,7 @@ module Aws::S3Control
164
171
  CreateJobRequest.add_member(:description, Shapes::ShapeRef.new(shape: NonEmptyMaxLength256String, location_name: "Description"))
165
172
  CreateJobRequest.add_member(:priority, Shapes::ShapeRef.new(shape: JobPriority, required: true, location_name: "Priority", metadata: {"box"=>true}))
166
173
  CreateJobRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, required: true, location_name: "RoleArn"))
174
+ CreateJobRequest.add_member(:tags, Shapes::ShapeRef.new(shape: S3TagSet, location_name: "Tags"))
167
175
  CreateJobRequest.struct_class = Types::CreateJobRequest
168
176
 
169
177
  CreateJobResult.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "JobId"))
@@ -177,6 +185,12 @@ module Aws::S3Control
177
185
  DeleteAccessPointRequest.add_member(:name, Shapes::ShapeRef.new(shape: AccessPointName, required: true, location: "uri", location_name: "name"))
178
186
  DeleteAccessPointRequest.struct_class = Types::DeleteAccessPointRequest
179
187
 
188
+ DeleteJobTaggingRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id"))
189
+ DeleteJobTaggingRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, required: true, location: "uri", location_name: "id"))
190
+ DeleteJobTaggingRequest.struct_class = Types::DeleteJobTaggingRequest
191
+
192
+ DeleteJobTaggingResult.struct_class = Types::DeleteJobTaggingResult
193
+
180
194
  DeletePublicAccessBlockRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id"))
181
195
  DeletePublicAccessBlockRequest.struct_class = Types::DeletePublicAccessBlockRequest
182
196
 
@@ -213,6 +227,13 @@ module Aws::S3Control
213
227
  GetAccessPointResult.add_member(:creation_date, Shapes::ShapeRef.new(shape: CreationDate, location_name: "CreationDate"))
214
228
  GetAccessPointResult.struct_class = Types::GetAccessPointResult
215
229
 
230
+ GetJobTaggingRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id"))
231
+ GetJobTaggingRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, required: true, location: "uri", location_name: "id"))
232
+ GetJobTaggingRequest.struct_class = Types::GetJobTaggingRequest
233
+
234
+ GetJobTaggingResult.add_member(:tags, Shapes::ShapeRef.new(shape: S3TagSet, location_name: "Tags"))
235
+ GetJobTaggingResult.struct_class = Types::GetJobTaggingResult
236
+
216
237
  GetPublicAccessBlockOutput.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, location_name: "PublicAccessBlockConfiguration"))
217
238
  GetPublicAccessBlockOutput.struct_class = Types::GetPublicAccessBlockOutput
218
239
  GetPublicAccessBlockOutput[:payload] = :public_access_block_configuration
@@ -352,6 +373,13 @@ module Aws::S3Control
352
373
  PutAccessPointPolicyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, required: true, location_name: "Policy"))
353
374
  PutAccessPointPolicyRequest.struct_class = Types::PutAccessPointPolicyRequest
354
375
 
376
+ PutJobTaggingRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id"))
377
+ PutJobTaggingRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, required: true, location: "uri", location_name: "id"))
378
+ PutJobTaggingRequest.add_member(:tags, Shapes::ShapeRef.new(shape: S3TagSet, required: true, location_name: "Tags"))
379
+ PutJobTaggingRequest.struct_class = Types::PutJobTaggingRequest
380
+
381
+ PutJobTaggingResult.struct_class = Types::PutJobTaggingResult
382
+
355
383
  PutPublicAccessBlockRequest.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, required: true, location_name: "PublicAccessBlockConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://awss3control.amazonaws.com/doc/2018-08-20/"}}))
356
384
  PutPublicAccessBlockRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id"))
357
385
  PutPublicAccessBlockRequest.struct_class = Types::PutPublicAccessBlockRequest
@@ -434,6 +462,9 @@ module Aws::S3Control
434
462
  TooManyRequestsException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
435
463
  TooManyRequestsException.struct_class = Types::TooManyRequestsException
436
464
 
465
+ TooManyTagsException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
466
+ TooManyTagsException.struct_class = Types::TooManyTagsException
467
+
437
468
  UpdateJobPriorityRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id"))
438
469
  UpdateJobPriorityRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, required: true, location: "uri", location_name: "id"))
439
470
  UpdateJobPriorityRequest.add_member(:priority, Shapes::ShapeRef.new(shape: JobPriority, required: true, location: "querystring", location_name: "priority"))
@@ -520,6 +551,17 @@ module Aws::S3Control
520
551
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
521
552
  end)
522
553
 
554
+ api.add_operation(:delete_job_tagging, Seahorse::Model::Operation.new.tap do |o|
555
+ o.name = "DeleteJobTagging"
556
+ o.http_method = "DELETE"
557
+ o.http_request_uri = "/v20180820/jobs/{id}/tagging"
558
+ o.input = Shapes::ShapeRef.new(shape: DeleteJobTaggingRequest)
559
+ o.output = Shapes::ShapeRef.new(shape: DeleteJobTaggingResult)
560
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
561
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
562
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
563
+ end)
564
+
523
565
  api.add_operation(:delete_public_access_block, Seahorse::Model::Operation.new.tap do |o|
524
566
  o.name = "DeletePublicAccessBlock"
525
567
  o.http_method = "DELETE"
@@ -564,6 +606,17 @@ module Aws::S3Control
564
606
  o.output = Shapes::ShapeRef.new(shape: GetAccessPointPolicyStatusResult)
565
607
  end)
566
608
 
609
+ api.add_operation(:get_job_tagging, Seahorse::Model::Operation.new.tap do |o|
610
+ o.name = "GetJobTagging"
611
+ o.http_method = "GET"
612
+ o.http_request_uri = "/v20180820/jobs/{id}/tagging"
613
+ o.input = Shapes::ShapeRef.new(shape: GetJobTaggingRequest)
614
+ o.output = Shapes::ShapeRef.new(shape: GetJobTaggingResult)
615
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
616
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
617
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
618
+ end)
619
+
567
620
  api.add_operation(:get_public_access_block, Seahorse::Model::Operation.new.tap do |o|
568
621
  o.name = "GetPublicAccessBlock"
569
622
  o.http_method = "GET"
@@ -617,6 +670,23 @@ module Aws::S3Control
617
670
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
618
671
  end)
619
672
 
673
+ api.add_operation(:put_job_tagging, Seahorse::Model::Operation.new.tap do |o|
674
+ o.name = "PutJobTagging"
675
+ o.http_method = "PUT"
676
+ o.http_request_uri = "/v20180820/jobs/{id}/tagging"
677
+ o.input = Shapes::ShapeRef.new(shape: PutJobTaggingRequest,
678
+ location_name: "PutJobTaggingRequest",
679
+ metadata: {
680
+ "xmlNamespace" => {"uri"=>"http://awss3control.amazonaws.com/doc/2018-08-20/"}
681
+ }
682
+ )
683
+ o.output = Shapes::ShapeRef.new(shape: PutJobTaggingResult)
684
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
685
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
686
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
687
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
688
+ end)
689
+
620
690
  api.add_operation(:put_public_access_block, Seahorse::Model::Operation.new.tap do |o|
621
691
  o.name = "PutPublicAccessBlock"
622
692
  o.http_method = "PUT"
@@ -6,6 +6,38 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::S3Control
9
+
10
+ # When S3Control returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::S3Control::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all S3Control errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::S3Control::Errors::ServiceError
18
+ # # rescues all S3Control API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {BadRequestException}
29
+ # * {IdempotencyException}
30
+ # * {InternalServiceException}
31
+ # * {InvalidNextTokenException}
32
+ # * {InvalidRequestException}
33
+ # * {JobStatusException}
34
+ # * {NoSuchPublicAccessBlockConfiguration}
35
+ # * {NotFoundException}
36
+ # * {TooManyRequestsException}
37
+ # * {TooManyTagsException}
38
+ #
39
+ # Additionally, error classes are dynamically generated for service errors based on the error code
40
+ # if they are not defined above.
9
41
  module Errors
10
42
 
11
43
  extend Aws::Errors::DynamicErrors
@@ -23,7 +55,6 @@ module Aws::S3Control
23
55
  def message
24
56
  @message || @data[:message]
25
57
  end
26
-
27
58
  end
28
59
 
29
60
  class IdempotencyException < ServiceError
@@ -39,7 +70,6 @@ module Aws::S3Control
39
70
  def message
40
71
  @message || @data[:message]
41
72
  end
42
-
43
73
  end
44
74
 
45
75
  class InternalServiceException < ServiceError
@@ -55,7 +85,6 @@ module Aws::S3Control
55
85
  def message
56
86
  @message || @data[:message]
57
87
  end
58
-
59
88
  end
60
89
 
61
90
  class InvalidNextTokenException < ServiceError
@@ -71,7 +100,6 @@ module Aws::S3Control
71
100
  def message
72
101
  @message || @data[:message]
73
102
  end
74
-
75
103
  end
76
104
 
77
105
  class InvalidRequestException < ServiceError
@@ -87,7 +115,6 @@ module Aws::S3Control
87
115
  def message
88
116
  @message || @data[:message]
89
117
  end
90
-
91
118
  end
92
119
 
93
120
  class JobStatusException < ServiceError
@@ -103,7 +130,6 @@ module Aws::S3Control
103
130
  def message
104
131
  @message || @data[:message]
105
132
  end
106
-
107
133
  end
108
134
 
109
135
  class NoSuchPublicAccessBlockConfiguration < ServiceError
@@ -119,7 +145,6 @@ module Aws::S3Control
119
145
  def message
120
146
  @message || @data[:message]
121
147
  end
122
-
123
148
  end
124
149
 
125
150
  class NotFoundException < ServiceError
@@ -135,7 +160,6 @@ module Aws::S3Control
135
160
  def message
136
161
  @message || @data[:message]
137
162
  end
138
-
139
163
  end
140
164
 
141
165
  class TooManyRequestsException < ServiceError
@@ -151,7 +175,21 @@ module Aws::S3Control
151
175
  def message
152
176
  @message || @data[:message]
153
177
  end
178
+ end
179
+
180
+ class TooManyTagsException < ServiceError
154
181
 
182
+ # @param [Seahorse::Client::RequestContext] context
183
+ # @param [String] message
184
+ # @param [Aws::S3Control::Types::TooManyTagsException] data
185
+ def initialize(context, message, data = Aws::EmptyStructure.new)
186
+ super(context, message, data)
187
+ end
188
+
189
+ # @return [String]
190
+ def message
191
+ @message || @data[:message]
192
+ end
155
193
  end
156
194
 
157
195
  end
@@ -6,6 +6,13 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::S3Control
9
+ # This class provides a resource oriented interface for S3Control.
10
+ # To create a resource object:
11
+ # resource = Aws::S3Control::Resource.new(region: 'us-west-2')
12
+ # You can supply a client object with custom configuration that will be used for all resource operations.
13
+ # If you do not pass +:client+, a default client will be constructed.
14
+ # client = Aws::S3Control::Client.new(region: 'us-west-2')
15
+ # resource = Aws::S3Control::Resource.new(client: client)
9
16
  class Resource
10
17
 
11
18
  # @param options ({})
@@ -224,6 +224,12 @@ module Aws::S3Control
224
224
  # description: "NonEmptyMaxLength256String",
225
225
  # priority: 1, # required
226
226
  # role_arn: "IAMRoleArn", # required
227
+ # tags: [
228
+ # {
229
+ # key: "NonEmptyMaxLength1024String", # required
230
+ # value: "MaxLength1024String", # required
231
+ # },
232
+ # ],
227
233
  # }
228
234
  #
229
235
  # @!attribute [rw] account_id
@@ -280,6 +286,11 @@ module Aws::S3Control
280
286
  # job's operation on each object in the manifest.
281
287
  # @return [String]
282
288
  #
289
+ # @!attribute [rw] tags
290
+ # An optional set of tags to associate with the job when it is
291
+ # created.
292
+ # @return [Array<Types::S3Tag>]
293
+ #
283
294
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateJobRequest AWS API Documentation
284
295
  #
285
296
  class CreateJobRequest < Struct.new(
@@ -291,7 +302,8 @@ module Aws::S3Control
291
302
  :manifest,
292
303
  :description,
293
304
  :priority,
294
- :role_arn)
305
+ :role_arn,
306
+ :tags)
295
307
  include Aws::Structure
296
308
  end
297
309
 
@@ -355,6 +367,35 @@ module Aws::S3Control
355
367
  include Aws::Structure
356
368
  end
357
369
 
370
+ # @note When making an API call, you may pass DeleteJobTaggingRequest
371
+ # data as a hash:
372
+ #
373
+ # {
374
+ # account_id: "AccountId", # required
375
+ # job_id: "JobId", # required
376
+ # }
377
+ #
378
+ # @!attribute [rw] account_id
379
+ # The account ID for the Amazon Web Services account associated with
380
+ # the Amazon S3 batch operations job you want to remove tags from.
381
+ # @return [String]
382
+ #
383
+ # @!attribute [rw] job_id
384
+ # The ID for the job whose tags you want to delete.
385
+ # @return [String]
386
+ #
387
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteJobTaggingRequest AWS API Documentation
388
+ #
389
+ class DeleteJobTaggingRequest < Struct.new(
390
+ :account_id,
391
+ :job_id)
392
+ include Aws::Structure
393
+ end
394
+
395
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteJobTaggingResult AWS API Documentation
396
+ #
397
+ class DeleteJobTaggingResult < Aws::EmptyStructure; end
398
+
358
399
  # @note When making an API call, you may pass DeletePublicAccessBlockRequest
359
400
  # data as a hash:
360
401
  #
@@ -555,6 +596,42 @@ module Aws::S3Control
555
596
  include Aws::Structure
556
597
  end
557
598
 
599
+ # @note When making an API call, you may pass GetJobTaggingRequest
600
+ # data as a hash:
601
+ #
602
+ # {
603
+ # account_id: "AccountId", # required
604
+ # job_id: "JobId", # required
605
+ # }
606
+ #
607
+ # @!attribute [rw] account_id
608
+ # The account ID for the Amazon Web Services account associated with
609
+ # the Amazon S3 batch operations job you want to retrieve tags for.
610
+ # @return [String]
611
+ #
612
+ # @!attribute [rw] job_id
613
+ # The ID for the job whose tags you want to retrieve.
614
+ # @return [String]
615
+ #
616
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetJobTaggingRequest AWS API Documentation
617
+ #
618
+ class GetJobTaggingRequest < Struct.new(
619
+ :account_id,
620
+ :job_id)
621
+ include Aws::Structure
622
+ end
623
+
624
+ # @!attribute [rw] tags
625
+ # The set of tags associated with the job.
626
+ # @return [Array<Types::S3Tag>]
627
+ #
628
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetJobTaggingResult AWS API Documentation
629
+ #
630
+ class GetJobTaggingResult < Struct.new(
631
+ :tags)
632
+ include Aws::Structure
633
+ end
634
+
558
635
  # @!attribute [rw] public_access_block_configuration
559
636
  # The `PublicAccessBlock` configuration currently in effect for this
560
637
  # Amazon Web Services account.
@@ -1426,6 +1503,46 @@ module Aws::S3Control
1426
1503
  include Aws::Structure
1427
1504
  end
1428
1505
 
1506
+ # @note When making an API call, you may pass PutJobTaggingRequest
1507
+ # data as a hash:
1508
+ #
1509
+ # {
1510
+ # account_id: "AccountId", # required
1511
+ # job_id: "JobId", # required
1512
+ # tags: [ # required
1513
+ # {
1514
+ # key: "NonEmptyMaxLength1024String", # required
1515
+ # value: "MaxLength1024String", # required
1516
+ # },
1517
+ # ],
1518
+ # }
1519
+ #
1520
+ # @!attribute [rw] account_id
1521
+ # The account ID for the Amazon Web Services account associated with
1522
+ # the Amazon S3 batch operations job you want to replace tags on.
1523
+ # @return [String]
1524
+ #
1525
+ # @!attribute [rw] job_id
1526
+ # The ID for the job whose tags you want to replace.
1527
+ # @return [String]
1528
+ #
1529
+ # @!attribute [rw] tags
1530
+ # The set of tags to associate with the job.
1531
+ # @return [Array<Types::S3Tag>]
1532
+ #
1533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutJobTaggingRequest AWS API Documentation
1534
+ #
1535
+ class PutJobTaggingRequest < Struct.new(
1536
+ :account_id,
1537
+ :job_id,
1538
+ :tags)
1539
+ include Aws::Structure
1540
+ end
1541
+
1542
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutJobTaggingResult AWS API Documentation
1543
+ #
1544
+ class PutJobTaggingResult < Aws::EmptyStructure; end
1545
+
1429
1546
  # @note When making an API call, you may pass PutPublicAccessBlockRequest
1430
1547
  # data as a hash:
1431
1548
  #
@@ -1939,6 +2056,16 @@ module Aws::S3Control
1939
2056
  include Aws::Structure
1940
2057
  end
1941
2058
 
2059
+ # @!attribute [rw] message
2060
+ # @return [String]
2061
+ #
2062
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/TooManyTagsException AWS API Documentation
2063
+ #
2064
+ class TooManyTagsException < Struct.new(
2065
+ :message)
2066
+ include Aws::Structure
2067
+ end
2068
+
1942
2069
  # @note When making an API call, you may pass UpdateJobPriorityRequest
1943
2070
  # data as a hash:
1944
2071
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3control
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.14.0
4
+ version: 1.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-03 00:00:00.000000000 Z
11
+ date: 2020-03-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sigv4
@@ -84,8 +84,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
84
84
  - !ruby/object:Gem::Version
85
85
  version: '0'
86
86
  requirements: []
87
- rubyforge_project:
88
- rubygems_version: 2.5.2.3
87
+ rubygems_version: 3.0.3
89
88
  signing_key:
90
89
  specification_version: 4
91
90
  summary: AWS SDK for Ruby - AWS S3 Control