aws-sdk-s3control 1.47.0 → 1.50.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
2
  SHA256:
3
- metadata.gz: be9cc5fc7abd5c6f15ca35f4bede07c93029c8de0177749070cd97a6e3419ed0
4
- data.tar.gz: e2b515c9b921a1a8183549cf48bdf7d0f26b33361764de4183cc8e170b5a3b5c
3
+ metadata.gz: 3c35775c66b37a125f838c847c0108756c4e260660a93ada6f192d714d78a46d
4
+ data.tar.gz: 20b75cf0c85eb2c0dede56a2440316f7c74821c3882bbda78ee0205bfcdd42ba
5
5
  SHA512:
6
- metadata.gz: 23d0713a7db9da6a6cb2895b2d8c5a414d01749a1e1e08d62b735685e93f218f1186dc1cd1b64fc3a3209cce835bd6424616f999151b3d8ef3f3a4e781ae638a
7
- data.tar.gz: 0c86df3538976a952de01b94522af3bf401e38adee67a21860fa239b159ba02dd3e6f63bc677dee2fb46f939cf59c10945f88f15b3ff119b4c3b6f4178ff4d4f
6
+ metadata.gz: a775410a0f73800e99735a3605465b1d5cff99381b8e2d36c73deb01855e3d0ff4437c2279ed8b15eab6907b1ca1f193e5d4edfe5d6c27cfd83449cf2d16a998
7
+ data.tar.gz: 6ccf05ad16481f4c49abe3f33c34afae02b23445a09ea4a97ff9bf112149462d65c226a67eb8abcef5421c608f79cfe20f6c9bd66940aa6af765c260af752d92
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.50.0 (2022-04-05)
5
+ ------------------
6
+
7
+ * Feature - Documentation-only update for doc bug fixes for the S3 Control API docs.
8
+
9
+ 1.49.0 (2022-02-24)
10
+ ------------------
11
+
12
+ * Feature - Amazon S3 Batch Operations adds support for new integrity checking capabilities in Amazon S3.
13
+
14
+ 1.48.0 (2022-02-08)
15
+ ------------------
16
+
17
+ * Feature - This release adds support for S3 Batch Replication. Batch Replication lets you replicate existing objects, already replicated objects to new destinations, and objects that previously failed to replicate. Customers will receive object-level visibility of progress and a detailed completion report.
18
+
4
19
  1.47.0 (2022-02-03)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.47.0
1
+ 1.50.0
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
30
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
31
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
32
33
  require 'aws-sdk-core/plugins/protocols/rest_xml.rb'
@@ -78,6 +79,7 @@ module Aws::S3Control
78
79
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
79
80
  add_plugin(Aws::Plugins::TransferEncoding)
80
81
  add_plugin(Aws::Plugins::HttpChecksum)
82
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
81
83
  add_plugin(Aws::Plugins::DefaultsMode)
82
84
  add_plugin(Aws::Plugins::RecursionDetection)
83
85
  add_plugin(Aws::Plugins::Protocols::RestXml)
@@ -726,7 +728,7 @@ module Aws::S3Control
726
728
  #
727
729
  #
728
730
  #
729
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-basics.html
731
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html
730
732
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html
731
733
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html
732
734
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobPriority.html
@@ -760,7 +762,7 @@ module Aws::S3Control
760
762
  # **A suitable default value is auto-generated.** You should normally
761
763
  # not need to pass this option.**
762
764
  #
763
- # @option params [required, Types::JobManifest] :manifest
765
+ # @option params [Types::JobManifest] :manifest
764
766
  # Configuration parameters for the manifest.
765
767
  #
766
768
  # @option params [String] :description
@@ -781,6 +783,11 @@ module Aws::S3Control
781
783
  # A set of tags to associate with the S3 Batch Operations job. This is
782
784
  # an optional parameter.
783
785
  #
786
+ # @option params [Types::JobManifestGenerator] :manifest_generator
787
+ # The attribute container for the ManifestGenerator details. Jobs must
788
+ # be created with either a manifest file or a ManifestGenerator, but not
789
+ # both.
790
+ #
784
791
  # @return [Types::CreateJobResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
785
792
  #
786
793
  # * {Types::CreateJobResult#job_id #job_id} => String
@@ -832,7 +839,7 @@ module Aws::S3Control
832
839
  # ],
833
840
  # redirect_location: "NonEmptyMaxLength2048String",
834
841
  # requester_pays: false,
835
- # storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE
842
+ # storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
836
843
  # un_modified_since_constraint: Time.now,
837
844
  # sse_aws_kms_key_id: "KmsKeyArnString",
838
845
  # target_key_prefix: "NonEmptyMaxLength1024String",
@@ -840,6 +847,7 @@ module Aws::S3Control
840
847
  # object_lock_mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE
841
848
  # object_lock_retain_until_date: Time.now,
842
849
  # bucket_key_enabled: false,
850
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
843
851
  # },
844
852
  # s3_put_object_acl: {
845
853
  # access_control_policy: {
@@ -888,6 +896,8 @@ module Aws::S3Control
888
896
  # mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE
889
897
  # },
890
898
  # },
899
+ # s3_replicate_object: {
900
+ # },
891
901
  # },
892
902
  # report: { # required
893
903
  # bucket: "S3BucketArnString",
@@ -897,7 +907,7 @@ module Aws::S3Control
897
907
  # report_scope: "AllTasks", # accepts AllTasks, FailedTasksOnly
898
908
  # },
899
909
  # client_request_token: "NonEmptyMaxLength64String", # required
900
- # manifest: { # required
910
+ # manifest: {
901
911
  # spec: { # required
902
912
  # format: "S3BatchOperations_CSV_20180820", # required, accepts S3BatchOperations_CSV_20180820, S3InventoryReport_CSV_20161130
903
913
  # fields: ["Ignore"], # accepts Ignore, Bucket, Key, VersionId
@@ -917,6 +927,32 @@ module Aws::S3Control
917
927
  # value: "TagValueString", # required
918
928
  # },
919
929
  # ],
930
+ # manifest_generator: {
931
+ # s3_job_manifest_generator: {
932
+ # expected_bucket_owner: "AccountId",
933
+ # source_bucket: "S3BucketArnString", # required
934
+ # manifest_output_location: {
935
+ # expected_manifest_bucket_owner: "AccountId",
936
+ # bucket: "S3BucketArnString", # required
937
+ # manifest_prefix: "ManifestPrefixString",
938
+ # manifest_encryption: {
939
+ # sses3: {
940
+ # },
941
+ # ssekms: {
942
+ # key_id: "KmsKeyArnString", # required
943
+ # },
944
+ # },
945
+ # manifest_format: "S3InventoryReport_CSV_20211130", # required, accepts S3InventoryReport_CSV_20211130
946
+ # },
947
+ # filter: {
948
+ # eligible_for_replication: false,
949
+ # created_after: Time.now,
950
+ # created_before: Time.now,
951
+ # object_replication_statuses: ["COMPLETED"], # accepts COMPLETED, FAILED, REPLICA, NONE
952
+ # },
953
+ # enable_manifest_output: false, # required
954
+ # },
955
+ # },
920
956
  # })
921
957
  #
922
958
  # @example Response structure
@@ -1797,7 +1833,7 @@ module Aws::S3Control
1797
1833
  #
1798
1834
  #
1799
1835
  #
1800
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-basics.html
1836
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html
1801
1837
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html
1802
1838
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html
1803
1839
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobPriority.html
@@ -1861,7 +1897,7 @@ module Aws::S3Control
1861
1897
  # resp.job.operation.s3_put_object_copy.new_object_tagging[0].value #=> String
1862
1898
  # resp.job.operation.s3_put_object_copy.redirect_location #=> String
1863
1899
  # resp.job.operation.s3_put_object_copy.requester_pays #=> Boolean
1864
- # resp.job.operation.s3_put_object_copy.storage_class #=> String, one of "STANDARD", "STANDARD_IA", "ONEZONE_IA", "GLACIER", "INTELLIGENT_TIERING", "DEEP_ARCHIVE"
1900
+ # resp.job.operation.s3_put_object_copy.storage_class #=> String, one of "STANDARD", "STANDARD_IA", "ONEZONE_IA", "GLACIER", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "GLACIER_IR"
1865
1901
  # resp.job.operation.s3_put_object_copy.un_modified_since_constraint #=> Time
1866
1902
  # resp.job.operation.s3_put_object_copy.sse_aws_kms_key_id #=> String
1867
1903
  # resp.job.operation.s3_put_object_copy.target_key_prefix #=> String
@@ -1869,6 +1905,7 @@ module Aws::S3Control
1869
1905
  # resp.job.operation.s3_put_object_copy.object_lock_mode #=> String, one of "COMPLIANCE", "GOVERNANCE"
1870
1906
  # resp.job.operation.s3_put_object_copy.object_lock_retain_until_date #=> Time
1871
1907
  # resp.job.operation.s3_put_object_copy.bucket_key_enabled #=> Boolean
1908
+ # resp.job.operation.s3_put_object_copy.checksum_algorithm #=> String, one of "CRC32", "CRC32C", "SHA1", "SHA256"
1872
1909
  # resp.job.operation.s3_put_object_acl.access_control_policy.access_control_list.owner.id #=> String
1873
1910
  # resp.job.operation.s3_put_object_acl.access_control_policy.access_control_list.owner.display_name #=> String
1874
1911
  # resp.job.operation.s3_put_object_acl.access_control_policy.access_control_list.grants #=> Array
@@ -1890,6 +1927,7 @@ module Aws::S3Control
1890
1927
  # resp.job.progress_summary.total_number_of_tasks #=> Integer
1891
1928
  # resp.job.progress_summary.number_of_tasks_succeeded #=> Integer
1892
1929
  # resp.job.progress_summary.number_of_tasks_failed #=> Integer
1930
+ # resp.job.progress_summary.timers.elapsed_time_in_active_seconds #=> Integer
1893
1931
  # resp.job.status_update_reason #=> String
1894
1932
  # resp.job.failure_reasons #=> Array
1895
1933
  # resp.job.failure_reasons[0].failure_code #=> String
@@ -1904,6 +1942,23 @@ module Aws::S3Control
1904
1942
  # resp.job.role_arn #=> String
1905
1943
  # resp.job.suspended_date #=> Time
1906
1944
  # resp.job.suspended_cause #=> String
1945
+ # resp.job.manifest_generator.s3_job_manifest_generator.expected_bucket_owner #=> String
1946
+ # resp.job.manifest_generator.s3_job_manifest_generator.source_bucket #=> String
1947
+ # resp.job.manifest_generator.s3_job_manifest_generator.manifest_output_location.expected_manifest_bucket_owner #=> String
1948
+ # resp.job.manifest_generator.s3_job_manifest_generator.manifest_output_location.bucket #=> String
1949
+ # resp.job.manifest_generator.s3_job_manifest_generator.manifest_output_location.manifest_prefix #=> String
1950
+ # resp.job.manifest_generator.s3_job_manifest_generator.manifest_output_location.manifest_encryption.ssekms.key_id #=> String
1951
+ # resp.job.manifest_generator.s3_job_manifest_generator.manifest_output_location.manifest_format #=> String, one of "S3InventoryReport_CSV_20211130"
1952
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.eligible_for_replication #=> Boolean
1953
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.created_after #=> Time
1954
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.created_before #=> Time
1955
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.object_replication_statuses #=> Array
1956
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.object_replication_statuses[0] #=> String, one of "COMPLETED", "FAILED", "REPLICA", "NONE"
1957
+ # resp.job.manifest_generator.s3_job_manifest_generator.enable_manifest_output #=> Boolean
1958
+ # resp.job.generated_manifest_descriptor.format #=> String, one of "S3InventoryReport_CSV_20211130"
1959
+ # resp.job.generated_manifest_descriptor.location.object_arn #=> String
1960
+ # resp.job.generated_manifest_descriptor.location.object_version_id #=> String
1961
+ # resp.job.generated_manifest_descriptor.location.etag #=> String
1907
1962
  #
1908
1963
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DescribeJob AWS API Documentation
1909
1964
  #
@@ -3277,10 +3332,9 @@ module Aws::S3Control
3277
3332
  req.send_request(options)
3278
3333
  end
3279
3334
 
3280
- # Returns a list of the access points associated with the Object Lambda
3281
- # Access Point. You can retrieve up to 1000 access points per call. If
3282
- # there are more than 1,000 access points (or the number specified in
3283
- # `maxResults`, whichever is less), the response will include a
3335
+ # Returns some or all (up to 1,000) access points associated with the
3336
+ # Object Lambda Access Point per call. If there are more access points
3337
+ # than what can be returned in one call, the response will include a
3284
3338
  # continuation token that you can use to list the additional access
3285
3339
  # points.
3286
3340
  #
@@ -3311,9 +3365,10 @@ module Aws::S3Control
3311
3365
  #
3312
3366
  # @option params [Integer] :max_results
3313
3367
  # The maximum number of access points that you want to include in the
3314
- # list. If there are more than this number of access points, then the
3315
- # response will include a continuation token in the `NextToken` field
3316
- # that you can use to retrieve the next page of access points.
3368
+ # list. The response may contain fewer access points but will never
3369
+ # contain more. If there are more than this number of access points,
3370
+ # then the response will include a continuation token in the `NextToken`
3371
+ # field that you can use to retrieve the next page of access points.
3317
3372
  #
3318
3373
  # @return [Types::ListAccessPointsForObjectLambdaResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3319
3374
  #
@@ -3365,7 +3420,7 @@ module Aws::S3Control
3365
3420
  #
3366
3421
  #
3367
3422
  #
3368
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-basics.html
3423
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html
3369
3424
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html
3370
3425
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html
3371
3426
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_UpdateJobPriority.html
@@ -3412,7 +3467,7 @@ module Aws::S3Control
3412
3467
  # resp.jobs #=> Array
3413
3468
  # resp.jobs[0].job_id #=> String
3414
3469
  # resp.jobs[0].description #=> String
3415
- # resp.jobs[0].operation #=> String, one of "LambdaInvoke", "S3PutObjectCopy", "S3PutObjectAcl", "S3PutObjectTagging", "S3DeleteObjectTagging", "S3InitiateRestoreObject", "S3PutObjectLegalHold", "S3PutObjectRetention"
3470
+ # resp.jobs[0].operation #=> String, one of "LambdaInvoke", "S3PutObjectCopy", "S3PutObjectAcl", "S3PutObjectTagging", "S3DeleteObjectTagging", "S3InitiateRestoreObject", "S3PutObjectLegalHold", "S3PutObjectRetention", "S3ReplicateObject"
3416
3471
  # resp.jobs[0].priority #=> Integer
3417
3472
  # resp.jobs[0].status #=> String, one of "Active", "Cancelled", "Cancelling", "Complete", "Completing", "Failed", "Failing", "New", "Paused", "Pausing", "Preparing", "Ready", "Suspended"
3418
3473
  # resp.jobs[0].creation_time #=> Time
@@ -3420,6 +3475,7 @@ module Aws::S3Control
3420
3475
  # resp.jobs[0].progress_summary.total_number_of_tasks #=> Integer
3421
3476
  # resp.jobs[0].progress_summary.number_of_tasks_succeeded #=> Integer
3422
3477
  # resp.jobs[0].progress_summary.number_of_tasks_failed #=> Integer
3478
+ # resp.jobs[0].progress_summary.timers.elapsed_time_in_active_seconds #=> Integer
3423
3479
  #
3424
3480
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListJobs AWS API Documentation
3425
3481
  #
@@ -4204,7 +4260,7 @@ module Aws::S3Control
4204
4260
  #
4205
4261
  # Related actions include:
4206
4262
  #
4207
- # * [CreatJob][6]
4263
+ # * [CreateJob][6]
4208
4264
  #
4209
4265
  # * [GetJobTagging][1]
4210
4266
  #
@@ -4320,8 +4376,9 @@ module Aws::S3Control
4320
4376
  end
4321
4377
 
4322
4378
  # Creates or modifies the `PublicAccessBlock` configuration for an
4323
- # Amazon Web Services account. For more information, see [ Using Amazon
4324
- # S3 block public access][1].
4379
+ # Amazon Web Services account. For this operation, users must have the
4380
+ # `s3:PutBucketPublicAccessBlock` permission. For more information, see
4381
+ # [ Using Amazon S3 block public access][1].
4325
4382
  #
4326
4383
  # Related actions include:
4327
4384
  #
@@ -4549,7 +4606,7 @@ module Aws::S3Control
4549
4606
  #
4550
4607
  #
4551
4608
  #
4552
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-basics.html
4609
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html
4553
4610
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html
4554
4611
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html
4555
4612
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html
@@ -4611,7 +4668,7 @@ module Aws::S3Control
4611
4668
  #
4612
4669
  #
4613
4670
  #
4614
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-basics.html
4671
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops.html
4615
4672
  # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html
4616
4673
  # [3]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListJobs.html
4617
4674
  # [4]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html
@@ -4674,7 +4731,7 @@ module Aws::S3Control
4674
4731
  params: params,
4675
4732
  config: config)
4676
4733
  context[:gem_name] = 'aws-sdk-s3control'
4677
- context[:gem_version] = '1.47.0'
4734
+ context[:gem_version] = '1.50.0'
4678
4735
  Seahorse::Client::Request.new(handlers, context)
4679
4736
  end
4680
4737
 
@@ -92,6 +92,8 @@ module Aws::S3Control
92
92
  ExpiredObjectDeleteMarker = Shapes::BooleanShape.new(name: 'ExpiredObjectDeleteMarker')
93
93
  Format = Shapes::StringShape.new(name: 'Format')
94
94
  FunctionArnString = Shapes::StringShape.new(name: 'FunctionArnString')
95
+ GeneratedManifestEncryption = Shapes::StructureShape.new(name: 'GeneratedManifestEncryption')
96
+ GeneratedManifestFormat = Shapes::StringShape.new(name: 'GeneratedManifestFormat')
95
97
  GetAccessPointConfigurationForObjectLambdaRequest = Shapes::StructureShape.new(name: 'GetAccessPointConfigurationForObjectLambdaRequest')
96
98
  GetAccessPointConfigurationForObjectLambdaResult = Shapes::StructureShape.new(name: 'GetAccessPointConfigurationForObjectLambdaResult')
97
99
  GetAccessPointForObjectLambdaRequest = Shapes::StructureShape.new(name: 'GetAccessPointForObjectLambdaRequest')
@@ -156,6 +158,8 @@ module Aws::S3Control
156
158
  JobManifestFieldList = Shapes::ListShape.new(name: 'JobManifestFieldList')
157
159
  JobManifestFieldName = Shapes::StringShape.new(name: 'JobManifestFieldName')
158
160
  JobManifestFormat = Shapes::StringShape.new(name: 'JobManifestFormat')
161
+ JobManifestGenerator = Shapes::UnionShape.new(name: 'JobManifestGenerator')
162
+ JobManifestGeneratorFilter = Shapes::StructureShape.new(name: 'JobManifestGeneratorFilter')
159
163
  JobManifestLocation = Shapes::StructureShape.new(name: 'JobManifestLocation')
160
164
  JobManifestSpec = Shapes::StructureShape.new(name: 'JobManifestSpec')
161
165
  JobNumberOfTasksFailed = Shapes::IntegerShape.new(name: 'JobNumberOfTasksFailed')
@@ -171,6 +175,8 @@ module Aws::S3Control
171
175
  JobStatusList = Shapes::ListShape.new(name: 'JobStatusList')
172
176
  JobStatusUpdateReason = Shapes::StringShape.new(name: 'JobStatusUpdateReason')
173
177
  JobTerminationDate = Shapes::TimestampShape.new(name: 'JobTerminationDate')
178
+ JobTimeInStateSeconds = Shapes::IntegerShape.new(name: 'JobTimeInStateSeconds')
179
+ JobTimers = Shapes::StructureShape.new(name: 'JobTimers')
174
180
  JobTotalNumberOfTasks = Shapes::IntegerShape.new(name: 'JobTotalNumberOfTasks')
175
181
  KmsKeyArnString = Shapes::StringShape.new(name: 'KmsKeyArnString')
176
182
  LambdaInvokeOperation = Shapes::StructureShape.new(name: 'LambdaInvokeOperation')
@@ -194,6 +200,7 @@ module Aws::S3Control
194
200
  ListStorageLensConfigurationsRequest = Shapes::StructureShape.new(name: 'ListStorageLensConfigurationsRequest')
195
201
  ListStorageLensConfigurationsResult = Shapes::StructureShape.new(name: 'ListStorageLensConfigurationsResult')
196
202
  Location = Shapes::StringShape.new(name: 'Location')
203
+ ManifestPrefixString = Shapes::StringShape.new(name: 'ManifestPrefixString')
197
204
  MaxLength1024String = Shapes::StringShape.new(name: 'MaxLength1024String')
198
205
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
199
206
  MinStorageBytesPercentage = Shapes::FloatShape.new(name: 'MinStorageBytesPercentage')
@@ -218,6 +225,7 @@ module Aws::S3Control
218
225
  NoncurrentVersionTransition = Shapes::StructureShape.new(name: 'NoncurrentVersionTransition')
219
226
  NoncurrentVersionTransitionList = Shapes::ListShape.new(name: 'NoncurrentVersionTransitionList')
220
227
  NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
228
+ ObjectCreationTime = Shapes::TimestampShape.new(name: 'ObjectCreationTime')
221
229
  ObjectLambdaAccessPoint = Shapes::StructureShape.new(name: 'ObjectLambdaAccessPoint')
222
230
  ObjectLambdaAccessPointArn = Shapes::StringShape.new(name: 'ObjectLambdaAccessPointArn')
223
231
  ObjectLambdaAccessPointList = Shapes::ListShape.new(name: 'ObjectLambdaAccessPointList')
@@ -266,6 +274,8 @@ module Aws::S3Control
266
274
  RegionalBucket = Shapes::StructureShape.new(name: 'RegionalBucket')
267
275
  RegionalBucketList = Shapes::ListShape.new(name: 'RegionalBucketList')
268
276
  Regions = Shapes::ListShape.new(name: 'Regions')
277
+ ReplicationStatus = Shapes::StringShape.new(name: 'ReplicationStatus')
278
+ ReplicationStatusFilterList = Shapes::ListShape.new(name: 'ReplicationStatusFilterList')
269
279
  ReportPrefixString = Shapes::StringShape.new(name: 'ReportPrefixString')
270
280
  RequestedJobStatus = Shapes::StringShape.new(name: 'RequestedJobStatus')
271
281
  S3AWSRegion = Shapes::StringShape.new(name: 'S3AWSRegion')
@@ -275,17 +285,21 @@ module Aws::S3Control
275
285
  S3BucketArnString = Shapes::StringShape.new(name: 'S3BucketArnString')
276
286
  S3BucketDestination = Shapes::StructureShape.new(name: 'S3BucketDestination')
277
287
  S3CannedAccessControlList = Shapes::StringShape.new(name: 'S3CannedAccessControlList')
288
+ S3ChecksumAlgorithm = Shapes::StringShape.new(name: 'S3ChecksumAlgorithm')
278
289
  S3ContentLength = Shapes::IntegerShape.new(name: 'S3ContentLength')
279
290
  S3CopyObjectOperation = Shapes::StructureShape.new(name: 'S3CopyObjectOperation')
280
291
  S3DeleteObjectTaggingOperation = Shapes::StructureShape.new(name: 'S3DeleteObjectTaggingOperation')
281
292
  S3ExpirationInDays = Shapes::IntegerShape.new(name: 'S3ExpirationInDays')
293
+ S3GeneratedManifestDescriptor = Shapes::StructureShape.new(name: 'S3GeneratedManifestDescriptor')
282
294
  S3GlacierJobTier = Shapes::StringShape.new(name: 'S3GlacierJobTier')
283
295
  S3Grant = Shapes::StructureShape.new(name: 'S3Grant')
284
296
  S3GrantList = Shapes::ListShape.new(name: 'S3GrantList')
285
297
  S3Grantee = Shapes::StructureShape.new(name: 'S3Grantee')
286
298
  S3GranteeTypeIdentifier = Shapes::StringShape.new(name: 'S3GranteeTypeIdentifier')
287
299
  S3InitiateRestoreObjectOperation = Shapes::StructureShape.new(name: 'S3InitiateRestoreObjectOperation')
300
+ S3JobManifestGenerator = Shapes::StructureShape.new(name: 'S3JobManifestGenerator')
288
301
  S3KeyArnString = Shapes::StringShape.new(name: 'S3KeyArnString')
302
+ S3ManifestOutputLocation = Shapes::StructureShape.new(name: 'S3ManifestOutputLocation')
289
303
  S3MetadataDirective = Shapes::StringShape.new(name: 'S3MetadataDirective')
290
304
  S3ObjectLockLegalHold = Shapes::StructureShape.new(name: 'S3ObjectLockLegalHold')
291
305
  S3ObjectLockLegalHoldStatus = Shapes::StringShape.new(name: 'S3ObjectLockLegalHoldStatus')
@@ -296,6 +310,7 @@ module Aws::S3Control
296
310
  S3ObjectVersionId = Shapes::StringShape.new(name: 'S3ObjectVersionId')
297
311
  S3Permission = Shapes::StringShape.new(name: 'S3Permission')
298
312
  S3RegionalBucketArn = Shapes::StringShape.new(name: 'S3RegionalBucketArn')
313
+ S3ReplicateObjectOperation = Shapes::StructureShape.new(name: 'S3ReplicateObjectOperation')
299
314
  S3Retention = Shapes::StructureShape.new(name: 'S3Retention')
300
315
  S3SSEAlgorithm = Shapes::StringShape.new(name: 'S3SSEAlgorithm')
301
316
  S3SetObjectAclOperation = Shapes::StructureShape.new(name: 'S3SetObjectAclOperation')
@@ -307,8 +322,10 @@ module Aws::S3Control
307
322
  S3TagSet = Shapes::ListShape.new(name: 'S3TagSet')
308
323
  S3UserMetadata = Shapes::MapShape.new(name: 'S3UserMetadata')
309
324
  SSEKMS = Shapes::StructureShape.new(name: 'SSEKMS')
325
+ SSEKMSEncryption = Shapes::StructureShape.new(name: 'SSEKMSEncryption')
310
326
  SSEKMSKeyId = Shapes::StringShape.new(name: 'SSEKMSKeyId')
311
327
  SSES3 = Shapes::StructureShape.new(name: 'SSES3')
328
+ SSES3Encryption = Shapes::StructureShape.new(name: 'SSES3Encryption')
312
329
  SelectionCriteria = Shapes::StructureShape.new(name: 'SelectionCriteria')
313
330
  Setting = Shapes::BooleanShape.new(name: 'Setting')
314
331
  StorageLensArn = Shapes::StringShape.new(name: 'StorageLensArn')
@@ -448,11 +465,12 @@ module Aws::S3Control
448
465
  CreateJobRequest.add_member(:operation, Shapes::ShapeRef.new(shape: JobOperation, required: true, location_name: "Operation"))
449
466
  CreateJobRequest.add_member(:report, Shapes::ShapeRef.new(shape: JobReport, required: true, location_name: "Report"))
450
467
  CreateJobRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: NonEmptyMaxLength64String, required: true, location_name: "ClientRequestToken", metadata: {"idempotencyToken"=>true}))
451
- CreateJobRequest.add_member(:manifest, Shapes::ShapeRef.new(shape: JobManifest, required: true, location_name: "Manifest"))
468
+ CreateJobRequest.add_member(:manifest, Shapes::ShapeRef.new(shape: JobManifest, location_name: "Manifest"))
452
469
  CreateJobRequest.add_member(:description, Shapes::ShapeRef.new(shape: NonEmptyMaxLength256String, location_name: "Description"))
453
470
  CreateJobRequest.add_member(:priority, Shapes::ShapeRef.new(shape: JobPriority, required: true, location_name: "Priority", metadata: {"box"=>true}))
454
471
  CreateJobRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, required: true, location_name: "RoleArn"))
455
472
  CreateJobRequest.add_member(:tags, Shapes::ShapeRef.new(shape: S3TagSet, location_name: "Tags"))
473
+ CreateJobRequest.add_member(:manifest_generator, Shapes::ShapeRef.new(shape: JobManifestGenerator, location_name: "ManifestGenerator"))
456
474
  CreateJobRequest.struct_class = Types::CreateJobRequest
457
475
 
458
476
  CreateJobResult.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "JobId"))
@@ -557,6 +575,10 @@ module Aws::S3Control
557
575
  Exclude.add_member(:regions, Shapes::ShapeRef.new(shape: Regions, location_name: "Regions"))
558
576
  Exclude.struct_class = Types::Exclude
559
577
 
578
+ GeneratedManifestEncryption.add_member(:sses3, Shapes::ShapeRef.new(shape: SSES3Encryption, location_name: "SSE-S3"))
579
+ GeneratedManifestEncryption.add_member(:ssekms, Shapes::ShapeRef.new(shape: SSEKMSEncryption, location_name: "SSE-KMS"))
580
+ GeneratedManifestEncryption.struct_class = Types::GeneratedManifestEncryption
581
+
560
582
  GetAccessPointConfigurationForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
561
583
  GetAccessPointConfigurationForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
562
584
  GetAccessPointConfigurationForObjectLambdaRequest.struct_class = Types::GetAccessPointConfigurationForObjectLambdaRequest
@@ -731,6 +753,8 @@ module Aws::S3Control
731
753
  JobDescriptor.add_member(:role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, location_name: "RoleArn", metadata: {"box"=>true}))
732
754
  JobDescriptor.add_member(:suspended_date, Shapes::ShapeRef.new(shape: SuspendedDate, location_name: "SuspendedDate", metadata: {"box"=>true}))
733
755
  JobDescriptor.add_member(:suspended_cause, Shapes::ShapeRef.new(shape: SuspendedCause, location_name: "SuspendedCause", metadata: {"box"=>true}))
756
+ JobDescriptor.add_member(:manifest_generator, Shapes::ShapeRef.new(shape: JobManifestGenerator, location_name: "ManifestGenerator"))
757
+ JobDescriptor.add_member(:generated_manifest_descriptor, Shapes::ShapeRef.new(shape: S3GeneratedManifestDescriptor, location_name: "GeneratedManifestDescriptor"))
734
758
  JobDescriptor.struct_class = Types::JobDescriptor
735
759
 
736
760
  JobFailure.add_member(:failure_code, Shapes::ShapeRef.new(shape: JobFailureCode, location_name: "FailureCode"))
@@ -757,6 +781,18 @@ module Aws::S3Control
757
781
 
758
782
  JobManifestFieldList.member = Shapes::ShapeRef.new(shape: JobManifestFieldName)
759
783
 
784
+ JobManifestGenerator.add_member(:s3_job_manifest_generator, Shapes::ShapeRef.new(shape: S3JobManifestGenerator, location_name: "S3JobManifestGenerator"))
785
+ JobManifestGenerator.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
786
+ JobManifestGenerator.add_member_subclass(:s3_job_manifest_generator, Types::JobManifestGenerator::S3JobManifestGenerator)
787
+ JobManifestGenerator.add_member_subclass(:unknown, Types::JobManifestGenerator::Unknown)
788
+ JobManifestGenerator.struct_class = Types::JobManifestGenerator
789
+
790
+ JobManifestGeneratorFilter.add_member(:eligible_for_replication, Shapes::ShapeRef.new(shape: Boolean, location_name: "EligibleForReplication", metadata: {"box"=>true}))
791
+ JobManifestGeneratorFilter.add_member(:created_after, Shapes::ShapeRef.new(shape: ObjectCreationTime, location_name: "CreatedAfter"))
792
+ JobManifestGeneratorFilter.add_member(:created_before, Shapes::ShapeRef.new(shape: ObjectCreationTime, location_name: "CreatedBefore"))
793
+ JobManifestGeneratorFilter.add_member(:object_replication_statuses, Shapes::ShapeRef.new(shape: ReplicationStatusFilterList, location_name: "ObjectReplicationStatuses"))
794
+ JobManifestGeneratorFilter.struct_class = Types::JobManifestGeneratorFilter
795
+
760
796
  JobManifestLocation.add_member(:object_arn, Shapes::ShapeRef.new(shape: S3KeyArnString, required: true, location_name: "ObjectArn"))
761
797
  JobManifestLocation.add_member(:object_version_id, Shapes::ShapeRef.new(shape: S3ObjectVersionId, location_name: "ObjectVersionId", metadata: {"box"=>true}))
762
798
  JobManifestLocation.add_member(:etag, Shapes::ShapeRef.new(shape: NonEmptyMaxLength1024String, required: true, location_name: "ETag"))
@@ -774,11 +810,13 @@ module Aws::S3Control
774
810
  JobOperation.add_member(:s3_initiate_restore_object, Shapes::ShapeRef.new(shape: S3InitiateRestoreObjectOperation, location_name: "S3InitiateRestoreObject", metadata: {"box"=>true}))
775
811
  JobOperation.add_member(:s3_put_object_legal_hold, Shapes::ShapeRef.new(shape: S3SetObjectLegalHoldOperation, location_name: "S3PutObjectLegalHold", metadata: {"box"=>true}))
776
812
  JobOperation.add_member(:s3_put_object_retention, Shapes::ShapeRef.new(shape: S3SetObjectRetentionOperation, location_name: "S3PutObjectRetention", metadata: {"box"=>true}))
813
+ JobOperation.add_member(:s3_replicate_object, Shapes::ShapeRef.new(shape: S3ReplicateObjectOperation, location_name: "S3ReplicateObject", metadata: {"box"=>true}))
777
814
  JobOperation.struct_class = Types::JobOperation
778
815
 
779
816
  JobProgressSummary.add_member(:total_number_of_tasks, Shapes::ShapeRef.new(shape: JobTotalNumberOfTasks, location_name: "TotalNumberOfTasks", metadata: {"box"=>true}))
780
817
  JobProgressSummary.add_member(:number_of_tasks_succeeded, Shapes::ShapeRef.new(shape: JobNumberOfTasksSucceeded, location_name: "NumberOfTasksSucceeded", metadata: {"box"=>true}))
781
818
  JobProgressSummary.add_member(:number_of_tasks_failed, Shapes::ShapeRef.new(shape: JobNumberOfTasksFailed, location_name: "NumberOfTasksFailed", metadata: {"box"=>true}))
819
+ JobProgressSummary.add_member(:timers, Shapes::ShapeRef.new(shape: JobTimers, location_name: "Timers"))
782
820
  JobProgressSummary.struct_class = Types::JobProgressSummary
783
821
 
784
822
  JobReport.add_member(:bucket, Shapes::ShapeRef.new(shape: S3BucketArnString, location_name: "Bucket", metadata: {"box"=>true}))
@@ -793,6 +831,9 @@ module Aws::S3Control
793
831
 
794
832
  JobStatusList.member = Shapes::ShapeRef.new(shape: JobStatus)
795
833
 
834
+ JobTimers.add_member(:elapsed_time_in_active_seconds, Shapes::ShapeRef.new(shape: JobTimeInStateSeconds, location_name: "ElapsedTimeInActiveSeconds", metadata: {"box"=>true}))
835
+ JobTimers.struct_class = Types::JobTimers
836
+
796
837
  LambdaInvokeOperation.add_member(:function_arn, Shapes::ShapeRef.new(shape: FunctionArnString, location_name: "FunctionArn"))
797
838
  LambdaInvokeOperation.struct_class = Types::LambdaInvokeOperation
798
839
 
@@ -1067,6 +1108,8 @@ module Aws::S3Control
1067
1108
 
1068
1109
  Regions.member = Shapes::ShapeRef.new(shape: S3AWSRegion, location_name: "Region")
1069
1110
 
1111
+ ReplicationStatusFilterList.member = Shapes::ShapeRef.new(shape: ReplicationStatus)
1112
+
1070
1113
  S3AccessControlList.add_member(:owner, Shapes::ShapeRef.new(shape: S3ObjectOwner, required: true, location_name: "Owner"))
1071
1114
  S3AccessControlList.add_member(:grants, Shapes::ShapeRef.new(shape: S3GrantList, location_name: "Grants"))
1072
1115
  S3AccessControlList.struct_class = Types::S3AccessControlList
@@ -1100,10 +1143,15 @@ module Aws::S3Control
1100
1143
  S3CopyObjectOperation.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: S3ObjectLockMode, location_name: "ObjectLockMode"))
1101
1144
  S3CopyObjectOperation.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "ObjectLockRetainUntilDate"))
1102
1145
  S3CopyObjectOperation.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "BucketKeyEnabled"))
1146
+ S3CopyObjectOperation.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: S3ChecksumAlgorithm, location_name: "ChecksumAlgorithm"))
1103
1147
  S3CopyObjectOperation.struct_class = Types::S3CopyObjectOperation
1104
1148
 
1105
1149
  S3DeleteObjectTaggingOperation.struct_class = Types::S3DeleteObjectTaggingOperation
1106
1150
 
1151
+ S3GeneratedManifestDescriptor.add_member(:format, Shapes::ShapeRef.new(shape: GeneratedManifestFormat, location_name: "Format"))
1152
+ S3GeneratedManifestDescriptor.add_member(:location, Shapes::ShapeRef.new(shape: JobManifestLocation, location_name: "Location"))
1153
+ S3GeneratedManifestDescriptor.struct_class = Types::S3GeneratedManifestDescriptor
1154
+
1107
1155
  S3Grant.add_member(:grantee, Shapes::ShapeRef.new(shape: S3Grantee, location_name: "Grantee"))
1108
1156
  S3Grant.add_member(:permission, Shapes::ShapeRef.new(shape: S3Permission, location_name: "Permission"))
1109
1157
  S3Grant.struct_class = Types::S3Grant
@@ -1119,6 +1167,20 @@ module Aws::S3Control
1119
1167
  S3InitiateRestoreObjectOperation.add_member(:glacier_job_tier, Shapes::ShapeRef.new(shape: S3GlacierJobTier, location_name: "GlacierJobTier"))
1120
1168
  S3InitiateRestoreObjectOperation.struct_class = Types::S3InitiateRestoreObjectOperation
1121
1169
 
1170
+ S3JobManifestGenerator.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location_name: "ExpectedBucketOwner"))
1171
+ S3JobManifestGenerator.add_member(:source_bucket, Shapes::ShapeRef.new(shape: S3BucketArnString, required: true, location_name: "SourceBucket"))
1172
+ S3JobManifestGenerator.add_member(:manifest_output_location, Shapes::ShapeRef.new(shape: S3ManifestOutputLocation, location_name: "ManifestOutputLocation"))
1173
+ S3JobManifestGenerator.add_member(:filter, Shapes::ShapeRef.new(shape: JobManifestGeneratorFilter, location_name: "Filter"))
1174
+ S3JobManifestGenerator.add_member(:enable_manifest_output, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "EnableManifestOutput"))
1175
+ S3JobManifestGenerator.struct_class = Types::S3JobManifestGenerator
1176
+
1177
+ S3ManifestOutputLocation.add_member(:expected_manifest_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location_name: "ExpectedManifestBucketOwner"))
1178
+ S3ManifestOutputLocation.add_member(:bucket, Shapes::ShapeRef.new(shape: S3BucketArnString, required: true, location_name: "Bucket"))
1179
+ S3ManifestOutputLocation.add_member(:manifest_prefix, Shapes::ShapeRef.new(shape: ManifestPrefixString, location_name: "ManifestPrefix"))
1180
+ S3ManifestOutputLocation.add_member(:manifest_encryption, Shapes::ShapeRef.new(shape: GeneratedManifestEncryption, location_name: "ManifestEncryption"))
1181
+ S3ManifestOutputLocation.add_member(:manifest_format, Shapes::ShapeRef.new(shape: GeneratedManifestFormat, required: true, location_name: "ManifestFormat"))
1182
+ S3ManifestOutputLocation.struct_class = Types::S3ManifestOutputLocation
1183
+
1122
1184
  S3ObjectLockLegalHold.add_member(:status, Shapes::ShapeRef.new(shape: S3ObjectLockLegalHoldStatus, required: true, location_name: "Status"))
1123
1185
  S3ObjectLockLegalHold.struct_class = Types::S3ObjectLockLegalHold
1124
1186
 
@@ -1139,6 +1201,8 @@ module Aws::S3Control
1139
1201
  S3ObjectOwner.add_member(:display_name, Shapes::ShapeRef.new(shape: NonEmptyMaxLength1024String, location_name: "DisplayName"))
1140
1202
  S3ObjectOwner.struct_class = Types::S3ObjectOwner
1141
1203
 
1204
+ S3ReplicateObjectOperation.struct_class = Types::S3ReplicateObjectOperation
1205
+
1142
1206
  S3Retention.add_member(:retain_until_date, Shapes::ShapeRef.new(shape: TimeStamp, location_name: "RetainUntilDate"))
1143
1207
  S3Retention.add_member(:mode, Shapes::ShapeRef.new(shape: S3ObjectLockRetentionMode, location_name: "Mode"))
1144
1208
  S3Retention.struct_class = Types::S3Retention
@@ -1168,8 +1232,13 @@ module Aws::S3Control
1168
1232
  SSEKMS.add_member(:key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, required: true, location_name: "KeyId"))
1169
1233
  SSEKMS.struct_class = Types::SSEKMS
1170
1234
 
1235
+ SSEKMSEncryption.add_member(:key_id, Shapes::ShapeRef.new(shape: KmsKeyArnString, required: true, location_name: "KeyId"))
1236
+ SSEKMSEncryption.struct_class = Types::SSEKMSEncryption
1237
+
1171
1238
  SSES3.struct_class = Types::SSES3
1172
1239
 
1240
+ SSES3Encryption.struct_class = Types::SSES3Encryption
1241
+
1173
1242
  SelectionCriteria.add_member(:delimiter, Shapes::ShapeRef.new(shape: StorageLensPrefixLevelDelimiter, location_name: "Delimiter"))
1174
1243
  SelectionCriteria.add_member(:max_depth, Shapes::ShapeRef.new(shape: StorageLensPrefixLevelMaxDepth, location_name: "MaxDepth"))
1175
1244
  SelectionCriteria.add_member(:min_storage_bytes_percentage, Shapes::ShapeRef.new(shape: MinStorageBytesPercentage, location_name: "MinStorageBytesPercentage"))
@@ -777,7 +777,7 @@ module Aws::S3Control
777
777
  # ],
778
778
  # redirect_location: "NonEmptyMaxLength2048String",
779
779
  # requester_pays: false,
780
- # storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE
780
+ # storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
781
781
  # un_modified_since_constraint: Time.now,
782
782
  # sse_aws_kms_key_id: "KmsKeyArnString",
783
783
  # target_key_prefix: "NonEmptyMaxLength1024String",
@@ -785,6 +785,7 @@ module Aws::S3Control
785
785
  # object_lock_mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE
786
786
  # object_lock_retain_until_date: Time.now,
787
787
  # bucket_key_enabled: false,
788
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
788
789
  # },
789
790
  # s3_put_object_acl: {
790
791
  # access_control_policy: {
@@ -833,6 +834,8 @@ module Aws::S3Control
833
834
  # mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE
834
835
  # },
835
836
  # },
837
+ # s3_replicate_object: {
838
+ # },
836
839
  # },
837
840
  # report: { # required
838
841
  # bucket: "S3BucketArnString",
@@ -842,7 +845,7 @@ module Aws::S3Control
842
845
  # report_scope: "AllTasks", # accepts AllTasks, FailedTasksOnly
843
846
  # },
844
847
  # client_request_token: "NonEmptyMaxLength64String", # required
845
- # manifest: { # required
848
+ # manifest: {
846
849
  # spec: { # required
847
850
  # format: "S3BatchOperations_CSV_20180820", # required, accepts S3BatchOperations_CSV_20180820, S3InventoryReport_CSV_20161130
848
851
  # fields: ["Ignore"], # accepts Ignore, Bucket, Key, VersionId
@@ -862,6 +865,32 @@ module Aws::S3Control
862
865
  # value: "TagValueString", # required
863
866
  # },
864
867
  # ],
868
+ # manifest_generator: {
869
+ # s3_job_manifest_generator: {
870
+ # expected_bucket_owner: "AccountId",
871
+ # source_bucket: "S3BucketArnString", # required
872
+ # manifest_output_location: {
873
+ # expected_manifest_bucket_owner: "AccountId",
874
+ # bucket: "S3BucketArnString", # required
875
+ # manifest_prefix: "ManifestPrefixString",
876
+ # manifest_encryption: {
877
+ # sses3: {
878
+ # },
879
+ # ssekms: {
880
+ # key_id: "KmsKeyArnString", # required
881
+ # },
882
+ # },
883
+ # manifest_format: "S3InventoryReport_CSV_20211130", # required, accepts S3InventoryReport_CSV_20211130
884
+ # },
885
+ # filter: {
886
+ # eligible_for_replication: false,
887
+ # created_after: Time.now,
888
+ # created_before: Time.now,
889
+ # object_replication_statuses: ["COMPLETED"], # accepts COMPLETED, FAILED, REPLICA, NONE
890
+ # },
891
+ # enable_manifest_output: false, # required
892
+ # },
893
+ # },
865
894
  # }
866
895
  #
867
896
  # @!attribute [rw] account_id
@@ -923,6 +952,12 @@ module Aws::S3Control
923
952
  # an optional parameter.
924
953
  # @return [Array<Types::S3Tag>]
925
954
  #
955
+ # @!attribute [rw] manifest_generator
956
+ # The attribute container for the ManifestGenerator details. Jobs must
957
+ # be created with either a manifest file or a ManifestGenerator, but
958
+ # not both.
959
+ # @return [Types::JobManifestGenerator]
960
+ #
926
961
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateJobRequest AWS API Documentation
927
962
  #
928
963
  class CreateJobRequest < Struct.new(
@@ -935,7 +970,8 @@ module Aws::S3Control
935
970
  :description,
936
971
  :priority,
937
972
  :role_arn,
938
- :tags)
973
+ :tags,
974
+ :manifest_generator)
939
975
  SENSITIVE = []
940
976
  include Aws::Structure
941
977
  end
@@ -1681,6 +1717,38 @@ module Aws::S3Control
1681
1717
  include Aws::Structure
1682
1718
  end
1683
1719
 
1720
+ # The encryption configuration to use when storing the generated
1721
+ # manifest.
1722
+ #
1723
+ # @note When making an API call, you may pass GeneratedManifestEncryption
1724
+ # data as a hash:
1725
+ #
1726
+ # {
1727
+ # sses3: {
1728
+ # },
1729
+ # ssekms: {
1730
+ # key_id: "KmsKeyArnString", # required
1731
+ # },
1732
+ # }
1733
+ #
1734
+ # @!attribute [rw] sses3
1735
+ # Specifies the use of SSE-S3 to encrypt generated manifest objects.
1736
+ # @return [Types::SSES3Encryption]
1737
+ #
1738
+ # @!attribute [rw] ssekms
1739
+ # Configuration details on how SSE-KMS is used to encrypt generated
1740
+ # manifest objects.
1741
+ # @return [Types::SSEKMSEncryption]
1742
+ #
1743
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GeneratedManifestEncryption AWS API Documentation
1744
+ #
1745
+ class GeneratedManifestEncryption < Struct.new(
1746
+ :sses3,
1747
+ :ssekms)
1748
+ SENSITIVE = []
1749
+ include Aws::Structure
1750
+ end
1751
+
1684
1752
  # @note When making an API call, you may pass GetAccessPointConfigurationForObjectLambdaRequest
1685
1753
  # data as a hash:
1686
1754
  #
@@ -2715,6 +2783,16 @@ module Aws::S3Control
2715
2783
  # automatically exits the `Suspended` state.
2716
2784
  # @return [String]
2717
2785
  #
2786
+ # @!attribute [rw] manifest_generator
2787
+ # The manifest generator that was used to generate a job manifest for
2788
+ # this job.
2789
+ # @return [Types::JobManifestGenerator]
2790
+ #
2791
+ # @!attribute [rw] generated_manifest_descriptor
2792
+ # The attribute of the JobDescriptor containing details about the
2793
+ # job's generated manifest.
2794
+ # @return [Types::S3GeneratedManifestDescriptor]
2795
+ #
2718
2796
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/JobDescriptor AWS API Documentation
2719
2797
  #
2720
2798
  class JobDescriptor < Struct.new(
@@ -2734,7 +2812,9 @@ module Aws::S3Control
2734
2812
  :termination_date,
2735
2813
  :role_arn,
2736
2814
  :suspended_date,
2737
- :suspended_cause)
2815
+ :suspended_cause,
2816
+ :manifest_generator,
2817
+ :generated_manifest_descriptor)
2738
2818
  SENSITIVE = []
2739
2819
  include Aws::Structure
2740
2820
  end
@@ -2851,6 +2931,73 @@ module Aws::S3Control
2851
2931
  include Aws::Structure
2852
2932
  end
2853
2933
 
2934
+ # Configures the type of the job's ManifestGenerator.
2935
+ #
2936
+ # @note JobManifestGenerator is a union - when making an API calls you must set exactly one of the members.
2937
+ #
2938
+ # @note JobManifestGenerator is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of JobManifestGenerator corresponding to the set member.
2939
+ #
2940
+ # @!attribute [rw] s3_job_manifest_generator
2941
+ # The S3 job ManifestGenerator's configuration details.
2942
+ # @return [Types::S3JobManifestGenerator]
2943
+ #
2944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/JobManifestGenerator AWS API Documentation
2945
+ #
2946
+ class JobManifestGenerator < Struct.new(
2947
+ :s3_job_manifest_generator,
2948
+ :unknown)
2949
+ SENSITIVE = []
2950
+ include Aws::Structure
2951
+ include Aws::Structure::Union
2952
+
2953
+ class S3JobManifestGenerator < JobManifestGenerator; end
2954
+ class Unknown < JobManifestGenerator; end
2955
+ end
2956
+
2957
+ # The filter used to describe a set of objects for the job's manifest.
2958
+ #
2959
+ # @note When making an API call, you may pass JobManifestGeneratorFilter
2960
+ # data as a hash:
2961
+ #
2962
+ # {
2963
+ # eligible_for_replication: false,
2964
+ # created_after: Time.now,
2965
+ # created_before: Time.now,
2966
+ # object_replication_statuses: ["COMPLETED"], # accepts COMPLETED, FAILED, REPLICA, NONE
2967
+ # }
2968
+ #
2969
+ # @!attribute [rw] eligible_for_replication
2970
+ # Include objects in the generated manifest only if they are eligible
2971
+ # for replication according to the Replication configuration on the
2972
+ # source bucket.
2973
+ # @return [Boolean]
2974
+ #
2975
+ # @!attribute [rw] created_after
2976
+ # If provided, the generated manifest should include only source
2977
+ # bucket objects that were created after this time.
2978
+ # @return [Time]
2979
+ #
2980
+ # @!attribute [rw] created_before
2981
+ # If provided, the generated manifest should include only source
2982
+ # bucket objects that were created before this time.
2983
+ # @return [Time]
2984
+ #
2985
+ # @!attribute [rw] object_replication_statuses
2986
+ # If provided, the generated manifest should include only source
2987
+ # bucket objects that have one of the specified Replication statuses.
2988
+ # @return [Array<String>]
2989
+ #
2990
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/JobManifestGeneratorFilter AWS API Documentation
2991
+ #
2992
+ class JobManifestGeneratorFilter < Struct.new(
2993
+ :eligible_for_replication,
2994
+ :created_after,
2995
+ :created_before,
2996
+ :object_replication_statuses)
2997
+ SENSITIVE = []
2998
+ include Aws::Structure
2999
+ end
3000
+
2854
3001
  # Contains the information required to locate a manifest object.
2855
3002
  #
2856
3003
  # @note When making an API call, you may pass JobManifestLocation
@@ -2977,7 +3124,7 @@ module Aws::S3Control
2977
3124
  # ],
2978
3125
  # redirect_location: "NonEmptyMaxLength2048String",
2979
3126
  # requester_pays: false,
2980
- # storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE
3127
+ # storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
2981
3128
  # un_modified_since_constraint: Time.now,
2982
3129
  # sse_aws_kms_key_id: "KmsKeyArnString",
2983
3130
  # target_key_prefix: "NonEmptyMaxLength1024String",
@@ -2985,6 +3132,7 @@ module Aws::S3Control
2985
3132
  # object_lock_mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE
2986
3133
  # object_lock_retain_until_date: Time.now,
2987
3134
  # bucket_key_enabled: false,
3135
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
2988
3136
  # },
2989
3137
  # s3_put_object_acl: {
2990
3138
  # access_control_policy: {
@@ -3033,6 +3181,8 @@ module Aws::S3Control
3033
3181
  # mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE
3034
3182
  # },
3035
3183
  # },
3184
+ # s3_replicate_object: {
3185
+ # },
3036
3186
  # }
3037
3187
  #
3038
3188
  # @!attribute [rw] lambda_invoke
@@ -3089,6 +3239,11 @@ module Aws::S3Control
3089
3239
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-retention-date.html
3090
3240
  # @return [Types::S3SetObjectRetentionOperation]
3091
3241
  #
3242
+ # @!attribute [rw] s3_replicate_object
3243
+ # Directs the specified job to invoke `ReplicateObject` on every
3244
+ # object in the job's manifest.
3245
+ # @return [Types::S3ReplicateObjectOperation]
3246
+ #
3092
3247
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/JobOperation AWS API Documentation
3093
3248
  #
3094
3249
  class JobOperation < Struct.new(
@@ -3099,7 +3254,8 @@ module Aws::S3Control
3099
3254
  :s3_delete_object_tagging,
3100
3255
  :s3_initiate_restore_object,
3101
3256
  :s3_put_object_legal_hold,
3102
- :s3_put_object_retention)
3257
+ :s3_put_object_retention,
3258
+ :s3_replicate_object)
3103
3259
  SENSITIVE = []
3104
3260
  include Aws::Structure
3105
3261
  end
@@ -3117,12 +3273,17 @@ module Aws::S3Control
3117
3273
  # @!attribute [rw] number_of_tasks_failed
3118
3274
  # @return [Integer]
3119
3275
  #
3276
+ # @!attribute [rw] timers
3277
+ # The JobTimers attribute of a job's progress summary.
3278
+ # @return [Types::JobTimers]
3279
+ #
3120
3280
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/JobProgressSummary AWS API Documentation
3121
3281
  #
3122
3282
  class JobProgressSummary < Struct.new(
3123
3283
  :total_number_of_tasks,
3124
3284
  :number_of_tasks_succeeded,
3125
- :number_of_tasks_failed)
3285
+ :number_of_tasks_failed,
3286
+ :timers)
3126
3287
  SENSITIVE = []
3127
3288
  include Aws::Structure
3128
3289
  end
@@ -3188,6 +3349,21 @@ module Aws::S3Control
3188
3349
  include Aws::Structure
3189
3350
  end
3190
3351
 
3352
+ # Provides timing details for the job.
3353
+ #
3354
+ # @!attribute [rw] elapsed_time_in_active_seconds
3355
+ # Indicates the elapsed time in seconds the job has been in the Active
3356
+ # job state.
3357
+ # @return [Integer]
3358
+ #
3359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/JobTimers AWS API Documentation
3360
+ #
3361
+ class JobTimers < Struct.new(
3362
+ :elapsed_time_in_active_seconds)
3363
+ SENSITIVE = []
3364
+ include Aws::Structure
3365
+ end
3366
+
3191
3367
  # Contains the configuration parameters for a `Lambda Invoke` operation.
3192
3368
  #
3193
3369
  # @note When making an API call, you may pass LambdaInvokeOperation
@@ -3547,9 +3723,11 @@ module Aws::S3Control
3547
3723
  #
3548
3724
  # @!attribute [rw] max_results
3549
3725
  # The maximum number of access points that you want to include in the
3550
- # list. If there are more than this number of access points, then the
3551
- # response will include a continuation token in the `NextToken` field
3552
- # that you can use to retrieve the next page of access points.
3726
+ # list. The response may contain fewer access points but will never
3727
+ # contain more. If there are more than this number of access points,
3728
+ # then the response will include a continuation token in the
3729
+ # `NextToken` field that you can use to retrieve the next page of
3730
+ # access points.
3553
3731
  # @return [Integer]
3554
3732
  #
3555
3733
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessPointsForObjectLambdaRequest AWS API Documentation
@@ -5331,7 +5509,7 @@ module Aws::S3Control
5331
5509
  # ],
5332
5510
  # redirect_location: "NonEmptyMaxLength2048String",
5333
5511
  # requester_pays: false,
5334
- # storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE
5512
+ # storage_class: "STANDARD", # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
5335
5513
  # un_modified_since_constraint: Time.now,
5336
5514
  # sse_aws_kms_key_id: "KmsKeyArnString",
5337
5515
  # target_key_prefix: "NonEmptyMaxLength1024String",
@@ -5339,6 +5517,7 @@ module Aws::S3Control
5339
5517
  # object_lock_mode: "COMPLIANCE", # accepts COMPLIANCE, GOVERNANCE
5340
5518
  # object_lock_retain_until_date: Time.now,
5341
5519
  # bucket_key_enabled: false,
5520
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
5342
5521
  # }
5343
5522
  #
5344
5523
  # @!attribute [rw] target_resource
@@ -5361,6 +5540,10 @@ module Aws::S3Control
5361
5540
  # @return [Time]
5362
5541
  #
5363
5542
  # @!attribute [rw] new_object_metadata
5543
+ # If you don't provide this parameter, Amazon S3 copies all the
5544
+ # metadata from the original objects. If you specify an empty set, the
5545
+ # new objects will have no tags. Otherwise, Amazon S3 assigns the
5546
+ # supplied tags to the new objects.
5364
5547
  # @return [Types::S3ObjectMetadata]
5365
5548
  #
5366
5549
  # @!attribute [rw] new_object_tagging
@@ -5387,8 +5570,8 @@ module Aws::S3Control
5387
5570
  # @!attribute [rw] target_key_prefix
5388
5571
  # Specifies the folder prefix into which you would like the objects to
5389
5572
  # be copied. For example, to copy objects into a folder named
5390
- # "Folder1" in the destination bucket, set the TargetKeyPrefix to
5391
- # "Folder1/".
5573
+ # `Folder1` in the destination bucket, set the TargetKeyPrefix to
5574
+ # `Folder1`.
5392
5575
  # @return [String]
5393
5576
  #
5394
5577
  # @!attribute [rw] object_lock_legal_hold_status
@@ -5416,6 +5599,16 @@ module Aws::S3Control
5416
5599
  # *bucket-level* settings for S3 Bucket Key.
5417
5600
  # @return [Boolean]
5418
5601
  #
5602
+ # @!attribute [rw] checksum_algorithm
5603
+ # Indicates the algorithm you want Amazon S3 to use to create the
5604
+ # checksum. For more information see [ Checking object integrity][1]
5605
+ # in the *Amazon S3 User Guide*.
5606
+ #
5607
+ #
5608
+ #
5609
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/CheckingObjectIntegrity.xml
5610
+ # @return [String]
5611
+ #
5419
5612
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/S3CopyObjectOperation AWS API Documentation
5420
5613
  #
5421
5614
  class S3CopyObjectOperation < Struct.new(
@@ -5435,7 +5628,8 @@ module Aws::S3Control
5435
5628
  :object_lock_legal_hold_status,
5436
5629
  :object_lock_mode,
5437
5630
  :object_lock_retain_until_date,
5438
- :bucket_key_enabled)
5631
+ :bucket_key_enabled,
5632
+ :checksum_algorithm)
5439
5633
  SENSITIVE = []
5440
5634
  include Aws::Structure
5441
5635
  end
@@ -5450,6 +5644,27 @@ module Aws::S3Control
5450
5644
  #
5451
5645
  class S3DeleteObjectTaggingOperation < Aws::EmptyStructure; end
5452
5646
 
5647
+ # Describes the specified job's generated manifest. Batch Operations
5648
+ # jobs created with a ManifestGenerator populate details of this
5649
+ # descriptor after execution of the ManifestGenerator.
5650
+ #
5651
+ # @!attribute [rw] format
5652
+ # The format of the generated manifest.
5653
+ # @return [String]
5654
+ #
5655
+ # @!attribute [rw] location
5656
+ # Contains the information required to locate a manifest object.
5657
+ # @return [Types::JobManifestLocation]
5658
+ #
5659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/S3GeneratedManifestDescriptor AWS API Documentation
5660
+ #
5661
+ class S3GeneratedManifestDescriptor < Struct.new(
5662
+ :format,
5663
+ :location)
5664
+ SENSITIVE = []
5665
+ include Aws::Structure
5666
+ end
5667
+
5453
5668
  # @note When making an API call, you may pass S3Grant
5454
5669
  # data as a hash:
5455
5670
  #
@@ -5523,11 +5738,10 @@ module Aws::S3Control
5523
5738
  # }
5524
5739
  #
5525
5740
  # @!attribute [rw] expiration_in_days
5526
- # This argument specifies how long the S3 Glacier Flexible Retrieval
5527
- # or S3 Glacier Deep Archive object remains available in Amazon S3. S3
5528
- # Initiate Restore Object jobs that target S3 Glacier Flexible
5529
- # Retrieval and S3 Glacier Deep Archive objects require
5530
- # `ExpirationInDays` set to 1 or greater.
5741
+ # This argument specifies how long the S3 Glacier or S3 Glacier Deep
5742
+ # Archive object remains available in Amazon S3. S3 Initiate Restore
5743
+ # Object jobs that target S3 Glacier and S3 Glacier Deep Archive
5744
+ # objects require `ExpirationInDays` set to 1 or greater.
5531
5745
  #
5532
5746
  # Conversely, do *not* set `ExpirationInDays` when creating S3
5533
5747
  # Initiate Restore Object jobs that target S3 Intelligent-Tiering
@@ -5536,8 +5750,8 @@ module Aws::S3Control
5536
5750
  # expiry, so specifying `ExpirationInDays` results in restore request
5537
5751
  # failure.
5538
5752
  #
5539
- # S3 Batch Operations jobs can operate either on S3 Glacier Flexible
5540
- # Retrieval and S3 Glacier Deep Archive storage class objects or on S3
5753
+ # S3 Batch Operations jobs can operate either on S3 Glacier and S3
5754
+ # Glacier Deep Archive storage class objects or on S3
5541
5755
  # Intelligent-Tiering Archive Access and Deep Archive Access storage
5542
5756
  # tier objects, but not both types in the same job. If you need to
5543
5757
  # restore objects of both types you *must* create separate Batch
@@ -5558,6 +5772,128 @@ module Aws::S3Control
5558
5772
  include Aws::Structure
5559
5773
  end
5560
5774
 
5775
+ # The container for the service that will create the S3 manifest.
5776
+ #
5777
+ # @note When making an API call, you may pass S3JobManifestGenerator
5778
+ # data as a hash:
5779
+ #
5780
+ # {
5781
+ # expected_bucket_owner: "AccountId",
5782
+ # source_bucket: "S3BucketArnString", # required
5783
+ # manifest_output_location: {
5784
+ # expected_manifest_bucket_owner: "AccountId",
5785
+ # bucket: "S3BucketArnString", # required
5786
+ # manifest_prefix: "ManifestPrefixString",
5787
+ # manifest_encryption: {
5788
+ # sses3: {
5789
+ # },
5790
+ # ssekms: {
5791
+ # key_id: "KmsKeyArnString", # required
5792
+ # },
5793
+ # },
5794
+ # manifest_format: "S3InventoryReport_CSV_20211130", # required, accepts S3InventoryReport_CSV_20211130
5795
+ # },
5796
+ # filter: {
5797
+ # eligible_for_replication: false,
5798
+ # created_after: Time.now,
5799
+ # created_before: Time.now,
5800
+ # object_replication_statuses: ["COMPLETED"], # accepts COMPLETED, FAILED, REPLICA, NONE
5801
+ # },
5802
+ # enable_manifest_output: false, # required
5803
+ # }
5804
+ #
5805
+ # @!attribute [rw] expected_bucket_owner
5806
+ # The Amazon Web Services account ID that owns the bucket the
5807
+ # generated manifest is written to. If provided the generated manifest
5808
+ # bucket's owner Amazon Web Services account ID must match this
5809
+ # value, else the job fails.
5810
+ # @return [String]
5811
+ #
5812
+ # @!attribute [rw] source_bucket
5813
+ # The source bucket used by the ManifestGenerator.
5814
+ # @return [String]
5815
+ #
5816
+ # @!attribute [rw] manifest_output_location
5817
+ # Specifies the location the generated manifest will be written to.
5818
+ # @return [Types::S3ManifestOutputLocation]
5819
+ #
5820
+ # @!attribute [rw] filter
5821
+ # Specifies rules the S3JobManifestGenerator should use to use to
5822
+ # decide whether an object in the source bucket should or should not
5823
+ # be included in the generated job manifest.
5824
+ # @return [Types::JobManifestGeneratorFilter]
5825
+ #
5826
+ # @!attribute [rw] enable_manifest_output
5827
+ # Determines whether or not to write the job's generated manifest to
5828
+ # a bucket.
5829
+ # @return [Boolean]
5830
+ #
5831
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/S3JobManifestGenerator AWS API Documentation
5832
+ #
5833
+ class S3JobManifestGenerator < Struct.new(
5834
+ :expected_bucket_owner,
5835
+ :source_bucket,
5836
+ :manifest_output_location,
5837
+ :filter,
5838
+ :enable_manifest_output)
5839
+ SENSITIVE = []
5840
+ include Aws::Structure
5841
+ end
5842
+
5843
+ # Location details for where the generated manifest should be written.
5844
+ #
5845
+ # @note When making an API call, you may pass S3ManifestOutputLocation
5846
+ # data as a hash:
5847
+ #
5848
+ # {
5849
+ # expected_manifest_bucket_owner: "AccountId",
5850
+ # bucket: "S3BucketArnString", # required
5851
+ # manifest_prefix: "ManifestPrefixString",
5852
+ # manifest_encryption: {
5853
+ # sses3: {
5854
+ # },
5855
+ # ssekms: {
5856
+ # key_id: "KmsKeyArnString", # required
5857
+ # },
5858
+ # },
5859
+ # manifest_format: "S3InventoryReport_CSV_20211130", # required, accepts S3InventoryReport_CSV_20211130
5860
+ # }
5861
+ #
5862
+ # @!attribute [rw] expected_manifest_bucket_owner
5863
+ # The Account ID that owns the bucket the generated manifest is
5864
+ # written to.
5865
+ # @return [String]
5866
+ #
5867
+ # @!attribute [rw] bucket
5868
+ # The bucket ARN the generated manifest should be written to.
5869
+ # @return [String]
5870
+ #
5871
+ # @!attribute [rw] manifest_prefix
5872
+ # Prefix identifying one or more objects to which the manifest
5873
+ # applies.
5874
+ # @return [String]
5875
+ #
5876
+ # @!attribute [rw] manifest_encryption
5877
+ # Specifies what encryption should be used when the generated manifest
5878
+ # objects are written.
5879
+ # @return [Types::GeneratedManifestEncryption]
5880
+ #
5881
+ # @!attribute [rw] manifest_format
5882
+ # The format of the generated manifest.
5883
+ # @return [String]
5884
+ #
5885
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/S3ManifestOutputLocation AWS API Documentation
5886
+ #
5887
+ class S3ManifestOutputLocation < Struct.new(
5888
+ :expected_manifest_bucket_owner,
5889
+ :bucket,
5890
+ :manifest_prefix,
5891
+ :manifest_encryption,
5892
+ :manifest_format)
5893
+ SENSITIVE = []
5894
+ include Aws::Structure
5895
+ end
5896
+
5561
5897
  # Whether S3 Object Lock legal hold will be applied to objects in an S3
5562
5898
  # Batch Operations job.
5563
5899
  #
@@ -5674,6 +6010,15 @@ module Aws::S3Control
5674
6010
  include Aws::Structure
5675
6011
  end
5676
6012
 
6013
+ # Directs the specified job to invoke `ReplicateObject` on every object
6014
+ # in the job's manifest.
6015
+ #
6016
+ # @api private
6017
+ #
6018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/S3ReplicateObjectOperation AWS API Documentation
6019
+ #
6020
+ class S3ReplicateObjectOperation < Aws::EmptyStructure; end
6021
+
5677
6022
  # Contains the S3 Object Lock retention mode to be applied to all
5678
6023
  # objects in the S3 Batch Operations job. If you don't provide `Mode`
5679
6024
  # and `RetainUntilDate` data types in your operation, you will remove
@@ -5913,12 +6258,45 @@ module Aws::S3Control
5913
6258
  include Aws::Structure
5914
6259
  end
5915
6260
 
6261
+ # Configuration for the use of SSE-KMS to encrypt generated manifest
6262
+ # objects.
6263
+ #
6264
+ # @note When making an API call, you may pass SSEKMSEncryption
6265
+ # data as a hash:
6266
+ #
6267
+ # {
6268
+ # key_id: "KmsKeyArnString", # required
6269
+ # }
6270
+ #
6271
+ # @!attribute [rw] key_id
6272
+ # Specifies the ID of the Amazon Web Services Key Management Service
6273
+ # (Amazon Web Services KMS) symmetric customer managed key to use for
6274
+ # encrypting generated manifest objects.
6275
+ # @return [String]
6276
+ #
6277
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SSEKMSEncryption AWS API Documentation
6278
+ #
6279
+ class SSEKMSEncryption < Struct.new(
6280
+ :key_id)
6281
+ SENSITIVE = []
6282
+ include Aws::Structure
6283
+ end
6284
+
5916
6285
  # @api private
5917
6286
  #
5918
6287
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SSES3 AWS API Documentation
5919
6288
  #
5920
6289
  class SSES3 < Aws::EmptyStructure; end
5921
6290
 
6291
+ # Configuration for the use of SSE-S3 to encrypt generated manifest
6292
+ # objects.
6293
+ #
6294
+ # @api private
6295
+ #
6296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SSES3Encryption AWS API Documentation
6297
+ #
6298
+ class SSES3Encryption < Aws::EmptyStructure; end
6299
+
5922
6300
  # @note When making an API call, you may pass SelectionCriteria
5923
6301
  # data as a hash:
5924
6302
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-s3control/customizations'
48
48
  # @!group service
49
49
  module Aws::S3Control
50
50
 
51
- GEM_VERSION = '1.47.0'
51
+ GEM_VERSION = '1.50.0'
52
52
 
53
53
  end
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.47.0
4
+ version: 1.50.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: 2022-02-03 00:00:00.000000000 Z
11
+ date: 2022-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sigv4
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: '3'
34
34
  - - ">="
35
35
  - !ruby/object:Gem::Version
36
- version: 3.126.0
36
+ version: 3.127.0
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '3'
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
- version: 3.126.0
46
+ version: 3.127.0
47
47
  description: Official AWS Ruby gem for AWS S3 Control. This gem is part of the AWS
48
48
  SDK for Ruby.
49
49
  email: