aws-sdk-s3control 1.14.0 → 1.16.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.
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