aws-sdk-s3 1.19.0 → 1.20.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
  SHA1:
3
- metadata.gz: aff058f11f247c8727655da79a54cbce44133e48
4
- data.tar.gz: 7b76df2c2f426bf66f51967df6064640d22881e6
3
+ metadata.gz: 7464f7ec0f0efe145e5e7102a76931497db3da16
4
+ data.tar.gz: 742c891e24d978353c74fcde32b8a58bde19abc2
5
5
  SHA512:
6
- metadata.gz: e4f64ccd95877ac42a6d1f0f22464d58a6984b95e8e8a454edd637c91820e99d3dcd45d31c6ef784e9325c7d9afc1d83fb2c36e449d1e765996c26e3a9f02cfd
7
- data.tar.gz: cf2e08606d283fa869fa972b4cc6895d4c0c9e126c2f15b8c003017cec3a89e7f0c58232f898a19eb2f230969a62b063e6a01abfe77bfde754bfb1918cf3a846
6
+ metadata.gz: e84323dc9d018f3b1b485b78545497c9adb2ce855dcb7bcee6023b8ea7b48c05eed0f27a52809a7b3a84e65bb45a22318874511d78abc1ccd20a6e6c75a1a4d4
7
+ data.tar.gz: 24c116f8ced5b7a079017eecbf68e34840e71d711c8f6189fde0dc4922adaa474ec985200614b02124e5329a2a3bd6fc2a9c410fe1a44872d9d0077d2c9f5cba
@@ -63,6 +63,6 @@ require_relative 'aws-sdk-s3/event_streams'
63
63
  # @service
64
64
  module Aws::S3
65
65
 
66
- GEM_VERSION = '1.19.0'
66
+ GEM_VERSION = '1.20.0'
67
67
 
68
68
  end
@@ -1116,6 +1116,17 @@ module Aws::S3
1116
1116
  # Deletes the replication configuration from the bucket.
1117
1117
  #
1118
1118
  # @option params [required, String] :bucket
1119
+ # Deletes the replication subresource associated with the specified
1120
+ # bucket.
1121
+ #
1122
+ # <note markdown="1"> There is usually some time lag before replication configuration
1123
+ # deletion is fully propagated to all the Amazon S3 systems.
1124
+ #
1125
+ # </note>
1126
+ #
1127
+ # For more information, see [Cross-Region Replication (CRR)](
1128
+ # https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) in the
1129
+ # Amazon S3 Developer Guide.
1119
1130
  #
1120
1131
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1121
1132
  #
@@ -2230,7 +2241,15 @@ module Aws::S3
2230
2241
  # resp.replication_configuration.role #=> String
2231
2242
  # resp.replication_configuration.rules #=> Array
2232
2243
  # resp.replication_configuration.rules[0].id #=> String
2244
+ # resp.replication_configuration.rules[0].priority #=> Integer
2233
2245
  # resp.replication_configuration.rules[0].prefix #=> String
2246
+ # resp.replication_configuration.rules[0].filter.prefix #=> String
2247
+ # resp.replication_configuration.rules[0].filter.tag.key #=> String
2248
+ # resp.replication_configuration.rules[0].filter.tag.value #=> String
2249
+ # resp.replication_configuration.rules[0].filter.and.prefix #=> String
2250
+ # resp.replication_configuration.rules[0].filter.and.tags #=> Array
2251
+ # resp.replication_configuration.rules[0].filter.and.tags[0].key #=> String
2252
+ # resp.replication_configuration.rules[0].filter.and.tags[0].value #=> String
2234
2253
  # resp.replication_configuration.rules[0].status #=> String, one of "Enabled", "Disabled"
2235
2254
  # resp.replication_configuration.rules[0].source_selection_criteria.sse_kms_encrypted_objects.status #=> String, one of "Enabled", "Disabled"
2236
2255
  # resp.replication_configuration.rules[0].destination.bucket #=> String
@@ -2238,6 +2257,7 @@ module Aws::S3
2238
2257
  # resp.replication_configuration.rules[0].destination.storage_class #=> String, one of "STANDARD", "REDUCED_REDUNDANCY", "STANDARD_IA", "ONEZONE_IA"
2239
2258
  # resp.replication_configuration.rules[0].destination.access_control_translation.owner #=> String, one of "Destination"
2240
2259
  # resp.replication_configuration.rules[0].destination.encryption_configuration.replica_kms_key_id #=> String
2260
+ # resp.replication_configuration.rules[0].delete_marker_replication.status #=> String, one of "Enabled", "Disabled"
2241
2261
  #
2242
2262
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketReplication AWS API Documentation
2243
2263
  #
@@ -4897,7 +4917,9 @@ module Aws::S3
4897
4917
  end
4898
4918
 
4899
4919
  # Creates a new replication configuration (or replaces an existing one,
4900
- # if present).
4920
+ # if present). For more information, see [Cross-Region Replication
4921
+ # (CRR)]( https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) in
4922
+ # the Amazon S3 Developer Guide.
4901
4923
  #
4902
4924
  # @option params [required, String] :bucket
4903
4925
  #
@@ -4941,7 +4963,24 @@ module Aws::S3
4941
4963
  # rules: [ # required
4942
4964
  # {
4943
4965
  # id: "ID",
4944
- # prefix: "Prefix", # required
4966
+ # priority: 1,
4967
+ # prefix: "Prefix",
4968
+ # filter: {
4969
+ # prefix: "Prefix",
4970
+ # tag: {
4971
+ # key: "ObjectKey", # required
4972
+ # value: "Value", # required
4973
+ # },
4974
+ # and: {
4975
+ # prefix: "Prefix",
4976
+ # tags: [
4977
+ # {
4978
+ # key: "ObjectKey", # required
4979
+ # value: "Value", # required
4980
+ # },
4981
+ # ],
4982
+ # },
4983
+ # },
4945
4984
  # status: "Enabled", # required, accepts Enabled, Disabled
4946
4985
  # source_selection_criteria: {
4947
4986
  # sse_kms_encrypted_objects: {
@@ -4959,6 +4998,9 @@ module Aws::S3
4959
4998
  # replica_kms_key_id: "ReplicaKmsKeyID",
4960
4999
  # },
4961
5000
  # },
5001
+ # delete_marker_replication: {
5002
+ # status: "Enabled", # accepts Enabled, Disabled
5003
+ # },
4962
5004
  # },
4963
5005
  # ],
4964
5006
  # },
@@ -6408,7 +6450,7 @@ module Aws::S3
6408
6450
  params: params,
6409
6451
  config: config)
6410
6452
  context[:gem_name] = 'aws-sdk-s3'
6411
- context[:gem_version] = '1.19.0'
6453
+ context[:gem_version] = '1.20.0'
6412
6454
  Seahorse::Client::Request.new(handlers, context)
6413
6455
  end
6414
6456
 
@@ -118,6 +118,8 @@ module Aws::S3
118
118
  DeleteBucketWebsiteRequest = Shapes::StructureShape.new(name: 'DeleteBucketWebsiteRequest')
119
119
  DeleteMarker = Shapes::BooleanShape.new(name: 'DeleteMarker')
120
120
  DeleteMarkerEntry = Shapes::StructureShape.new(name: 'DeleteMarkerEntry')
121
+ DeleteMarkerReplication = Shapes::StructureShape.new(name: 'DeleteMarkerReplication')
122
+ DeleteMarkerReplicationStatus = Shapes::StringShape.new(name: 'DeleteMarkerReplicationStatus')
121
123
  DeleteMarkerVersionId = Shapes::StringShape.new(name: 'DeleteMarkerVersionId')
122
124
  DeleteMarkers = Shapes::ListShape.new(name: 'DeleteMarkers', flattened: true)
123
125
  DeleteObjectOutput = Shapes::StructureShape.new(name: 'DeleteObjectOutput')
@@ -346,6 +348,7 @@ module Aws::S3
346
348
  Permission = Shapes::StringShape.new(name: 'Permission')
347
349
  Policy = Shapes::StringShape.new(name: 'Policy')
348
350
  Prefix = Shapes::StringShape.new(name: 'Prefix')
351
+ Priority = Shapes::IntegerShape.new(name: 'Priority')
349
352
  Progress = Shapes::StructureShape.new(name: 'Progress')
350
353
  ProgressEvent = Shapes::StructureShape.new(name: 'ProgressEvent')
351
354
  Protocol = Shapes::StringShape.new(name: 'Protocol')
@@ -391,6 +394,8 @@ module Aws::S3
391
394
  ReplicaKmsKeyID = Shapes::StringShape.new(name: 'ReplicaKmsKeyID')
392
395
  ReplicationConfiguration = Shapes::StructureShape.new(name: 'ReplicationConfiguration')
393
396
  ReplicationRule = Shapes::StructureShape.new(name: 'ReplicationRule')
397
+ ReplicationRuleAndOperator = Shapes::StructureShape.new(name: 'ReplicationRuleAndOperator')
398
+ ReplicationRuleFilter = Shapes::StructureShape.new(name: 'ReplicationRuleFilter')
394
399
  ReplicationRuleStatus = Shapes::StringShape.new(name: 'ReplicationRuleStatus')
395
400
  ReplicationRules = Shapes::ListShape.new(name: 'ReplicationRules', flattened: true)
396
401
  ReplicationStatus = Shapes::StringShape.new(name: 'ReplicationStatus')
@@ -775,6 +780,9 @@ module Aws::S3
775
780
  DeleteMarkerEntry.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location_name: "LastModified"))
776
781
  DeleteMarkerEntry.struct_class = Types::DeleteMarkerEntry
777
782
 
783
+ DeleteMarkerReplication.add_member(:status, Shapes::ShapeRef.new(shape: DeleteMarkerReplicationStatus, location_name: "Status"))
784
+ DeleteMarkerReplication.struct_class = Types::DeleteMarkerReplication
785
+
778
786
  DeleteMarkers.member = Shapes::ShapeRef.new(shape: DeleteMarkerEntry)
779
787
 
780
788
  DeleteObjectOutput.add_member(:delete_marker, Shapes::ShapeRef.new(shape: DeleteMarker, location: "header", location_name: "x-amz-delete-marker"))
@@ -1720,12 +1728,24 @@ module Aws::S3
1720
1728
  ReplicationConfiguration.struct_class = Types::ReplicationConfiguration
1721
1729
 
1722
1730
  ReplicationRule.add_member(:id, Shapes::ShapeRef.new(shape: ID, location_name: "ID"))
1723
- ReplicationRule.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, required: true, location_name: "Prefix"))
1731
+ ReplicationRule.add_member(:priority, Shapes::ShapeRef.new(shape: Priority, location_name: "Priority"))
1732
+ ReplicationRule.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, deprecated: true, location_name: "Prefix"))
1733
+ ReplicationRule.add_member(:filter, Shapes::ShapeRef.new(shape: ReplicationRuleFilter, location_name: "Filter"))
1724
1734
  ReplicationRule.add_member(:status, Shapes::ShapeRef.new(shape: ReplicationRuleStatus, required: true, location_name: "Status"))
1725
1735
  ReplicationRule.add_member(:source_selection_criteria, Shapes::ShapeRef.new(shape: SourceSelectionCriteria, location_name: "SourceSelectionCriteria"))
1726
1736
  ReplicationRule.add_member(:destination, Shapes::ShapeRef.new(shape: Destination, required: true, location_name: "Destination"))
1737
+ ReplicationRule.add_member(:delete_marker_replication, Shapes::ShapeRef.new(shape: DeleteMarkerReplication, location_name: "DeleteMarkerReplication"))
1727
1738
  ReplicationRule.struct_class = Types::ReplicationRule
1728
1739
 
1740
+ ReplicationRuleAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1741
+ ReplicationRuleAndOperator.add_member(:tags, Shapes::ShapeRef.new(shape: TagSet, location_name: "Tag", metadata: {"flattened"=>true}))
1742
+ ReplicationRuleAndOperator.struct_class = Types::ReplicationRuleAndOperator
1743
+
1744
+ ReplicationRuleFilter.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1745
+ ReplicationRuleFilter.add_member(:tag, Shapes::ShapeRef.new(shape: Tag, location_name: "Tag"))
1746
+ ReplicationRuleFilter.add_member(:and, Shapes::ShapeRef.new(shape: ReplicationRuleAndOperator, location_name: "And"))
1747
+ ReplicationRuleFilter.struct_class = Types::ReplicationRuleFilter
1748
+
1729
1749
  ReplicationRules.member = Shapes::ShapeRef.new(shape: ReplicationRule)
1730
1750
 
1731
1751
  RequestPaymentConfiguration.add_member(:payer, Shapes::ShapeRef.new(shape: Payer, required: true, location_name: "Payer"))
@@ -1971,7 +1991,6 @@ module Aws::S3
1971
1991
  "serviceAbbreviation" => "Amazon S3",
1972
1992
  "serviceFullName" => "Amazon Simple Storage Service",
1973
1993
  "serviceId" => "S3",
1974
- "timestampFormat" => "rfc822",
1975
1994
  "uid" => "s3-2006-03-01",
1976
1995
  }
1977
1996
 
@@ -1731,6 +1731,17 @@ module Aws::S3
1731
1731
  # }
1732
1732
  #
1733
1733
  # @!attribute [rw] bucket
1734
+ # Deletes the replication subresource associated with the specified
1735
+ # bucket.
1736
+ #
1737
+ # <note markdown="1"> There is usually some time lag before replication configuration
1738
+ # deletion is fully propagated to all the Amazon S3 systems.
1739
+ #
1740
+ # </note>
1741
+ #
1742
+ # For more information, see [Cross-Region Replication (CRR)](
1743
+ # https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) in the
1744
+ # Amazon S3 Developer Guide.
1734
1745
  # @return [String]
1735
1746
  #
1736
1747
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketReplicationRequest AWS API Documentation
@@ -1822,6 +1833,31 @@ module Aws::S3
1822
1833
  include Aws::Structure
1823
1834
  end
1824
1835
 
1836
+ # Specifies whether Amazon S3 should replicate delete makers.
1837
+ #
1838
+ # @note When making an API call, you may pass DeleteMarkerReplication
1839
+ # data as a hash:
1840
+ #
1841
+ # {
1842
+ # status: "Enabled", # accepts Enabled, Disabled
1843
+ # }
1844
+ #
1845
+ # @!attribute [rw] status
1846
+ # The status of the delete marker replication.
1847
+ #
1848
+ # <note markdown="1"> In the current implementation, Amazon S3 does not replicate the
1849
+ # delete markers. Therefore, the status must be `Disabled`.
1850
+ #
1851
+ # </note>
1852
+ # @return [String]
1853
+ #
1854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteMarkerReplication AWS API Documentation
1855
+ #
1856
+ class DeleteMarkerReplication < Struct.new(
1857
+ :status)
1858
+ include Aws::Structure
1859
+ end
1860
+
1825
1861
  # @!attribute [rw] delete_marker
1826
1862
  # Specifies whether the versioned object that was permanently deleted
1827
1863
  # was (true) or was not (false) a delete marker.
@@ -2041,11 +2077,20 @@ module Aws::S3
2041
2077
  # @!attribute [rw] bucket
2042
2078
  # Amazon resource name (ARN) of the bucket where you want Amazon S3 to
2043
2079
  # store replicas of the object identified by the rule.
2080
+ #
2081
+ # If you have multiple rules in your replication configuration, all
2082
+ # rules must specify the same bucket as the destination. A replication
2083
+ # configuration can replicate objects only to one destination bucket.
2044
2084
  # @return [String]
2045
2085
  #
2046
2086
  # @!attribute [rw] account
2047
- # Account ID of the destination bucket. Currently this is only being
2048
- # verified if Access Control Translation is enabled
2087
+ # Account ID of the destination bucket. Currently Amazon S3 verifies
2088
+ # this value only if Access Control Translation is enabled.
2089
+ #
2090
+ # In a cross-account scenario, if you tell Amazon S3 to change replica
2091
+ # ownership to the AWS account that owns the destination bucket by
2092
+ # adding the `AccessControlTranslation` element, this is the account
2093
+ # ID of the destination bucket owner.
2049
2094
  # @return [String]
2050
2095
  #
2051
2096
  # @!attribute [rw] storage_class
@@ -2054,11 +2099,17 @@ module Aws::S3
2054
2099
  #
2055
2100
  # @!attribute [rw] access_control_translation
2056
2101
  # Container for information regarding the access control for replicas.
2102
+ #
2103
+ # Use only in a cross-account scenario, where source and destination
2104
+ # bucket owners are not the same, when you want to change replica
2105
+ # ownership to the AWS account that owns the destination bucket. If
2106
+ # you don't add this element to the replication configuration, the
2107
+ # replicas are owned by same AWS account that owns the source object.
2057
2108
  # @return [Types::AccessControlTranslation]
2058
2109
  #
2059
2110
  # @!attribute [rw] encryption_configuration
2060
- # Container for information regarding encryption based configuration
2061
- # for replicas.
2111
+ # Container that provides encryption-related information. You must
2112
+ # specify this element if the `SourceSelectionCriteria` is specified.
2062
2113
  # @return [Types::EncryptionConfiguration]
2063
2114
  #
2064
2115
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Destination AWS API Documentation
@@ -2119,7 +2170,9 @@ module Aws::S3
2119
2170
  # }
2120
2171
  #
2121
2172
  # @!attribute [rw] replica_kms_key_id
2122
- # The id of the KMS key used to encrypt the replica object.
2173
+ # The ID of the AWS KMS key for the region where the destination
2174
+ # bucket resides. Amazon S3 uses this key to encrypt the replica
2175
+ # object.
2123
2176
  # @return [String]
2124
2177
  #
2125
2178
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/EncryptionConfiguration AWS API Documentation
@@ -6549,7 +6602,24 @@ module Aws::S3
6549
6602
  # rules: [ # required
6550
6603
  # {
6551
6604
  # id: "ID",
6552
- # prefix: "Prefix", # required
6605
+ # priority: 1,
6606
+ # prefix: "Prefix",
6607
+ # filter: {
6608
+ # prefix: "Prefix",
6609
+ # tag: {
6610
+ # key: "ObjectKey", # required
6611
+ # value: "Value", # required
6612
+ # },
6613
+ # and: {
6614
+ # prefix: "Prefix",
6615
+ # tags: [
6616
+ # {
6617
+ # key: "ObjectKey", # required
6618
+ # value: "Value", # required
6619
+ # },
6620
+ # ],
6621
+ # },
6622
+ # },
6553
6623
  # status: "Enabled", # required, accepts Enabled, Disabled
6554
6624
  # source_selection_criteria: {
6555
6625
  # sse_kms_encrypted_objects: {
@@ -6567,6 +6637,9 @@ module Aws::S3
6567
6637
  # replica_kms_key_id: "ReplicaKmsKeyID",
6568
6638
  # },
6569
6639
  # },
6640
+ # delete_marker_replication: {
6641
+ # status: "Enabled", # accepts Enabled, Disabled
6642
+ # },
6570
6643
  # },
6571
6644
  # ],
6572
6645
  # },
@@ -7358,7 +7431,24 @@ module Aws::S3
7358
7431
  # rules: [ # required
7359
7432
  # {
7360
7433
  # id: "ID",
7361
- # prefix: "Prefix", # required
7434
+ # priority: 1,
7435
+ # prefix: "Prefix",
7436
+ # filter: {
7437
+ # prefix: "Prefix",
7438
+ # tag: {
7439
+ # key: "ObjectKey", # required
7440
+ # value: "Value", # required
7441
+ # },
7442
+ # and: {
7443
+ # prefix: "Prefix",
7444
+ # tags: [
7445
+ # {
7446
+ # key: "ObjectKey", # required
7447
+ # value: "Value", # required
7448
+ # },
7449
+ # ],
7450
+ # },
7451
+ # },
7362
7452
  # status: "Enabled", # required, accepts Enabled, Disabled
7363
7453
  # source_selection_criteria: {
7364
7454
  # sse_kms_encrypted_objects: {
@@ -7376,6 +7466,9 @@ module Aws::S3
7376
7466
  # replica_kms_key_id: "ReplicaKmsKeyID",
7377
7467
  # },
7378
7468
  # },
7469
+ # delete_marker_replication: {
7470
+ # status: "Enabled", # accepts Enabled, Disabled
7471
+ # },
7379
7472
  # },
7380
7473
  # ],
7381
7474
  # }
@@ -7386,9 +7479,9 @@ module Aws::S3
7386
7479
  # @return [String]
7387
7480
  #
7388
7481
  # @!attribute [rw] rules
7389
- # Container for information about a particular replication rule.
7390
- # Replication configuration must have at least one rule and can
7391
- # contain up to 1,000 rules.
7482
+ # Container for one or more replication rules. Replication
7483
+ # configuration must have at least one rule and can contain up to
7484
+ # 1,000 rules.
7392
7485
  # @return [Array<Types::ReplicationRule>]
7393
7486
  #
7394
7487
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationConfiguration AWS API Documentation
@@ -7406,7 +7499,24 @@ module Aws::S3
7406
7499
  #
7407
7500
  # {
7408
7501
  # id: "ID",
7409
- # prefix: "Prefix", # required
7502
+ # priority: 1,
7503
+ # prefix: "Prefix",
7504
+ # filter: {
7505
+ # prefix: "Prefix",
7506
+ # tag: {
7507
+ # key: "ObjectKey", # required
7508
+ # value: "Value", # required
7509
+ # },
7510
+ # and: {
7511
+ # prefix: "Prefix",
7512
+ # tags: [
7513
+ # {
7514
+ # key: "ObjectKey", # required
7515
+ # value: "Value", # required
7516
+ # },
7517
+ # ],
7518
+ # },
7519
+ # },
7410
7520
  # status: "Enabled", # required, accepts Enabled, Disabled
7411
7521
  # source_selection_criteria: {
7412
7522
  # sse_kms_encrypted_objects: {
@@ -7424,6 +7534,9 @@ module Aws::S3
7424
7534
  # replica_kms_key_id: "ReplicaKmsKeyID",
7425
7535
  # },
7426
7536
  # },
7537
+ # delete_marker_replication: {
7538
+ # status: "Enabled", # accepts Enabled, Disabled
7539
+ # },
7427
7540
  # }
7428
7541
  #
7429
7542
  # @!attribute [rw] id
@@ -7431,33 +7544,152 @@ module Aws::S3
7431
7544
  # characters.
7432
7545
  # @return [String]
7433
7546
  #
7547
+ # @!attribute [rw] priority
7548
+ # The priority associated with the rule. If you specify multiple rules
7549
+ # in a replication configuration, then Amazon S3 applies rule priority
7550
+ # in the event there are conflicts (two or more rules identify the
7551
+ # same object based on filter specified). The rule with higher
7552
+ # priority takes precedence. For example,
7553
+ #
7554
+ # * Same object quality prefix based filter criteria If prefixes you
7555
+ # specified in multiple rules overlap.
7556
+ #
7557
+ # * Same object qualify tag based filter criteria specified in
7558
+ # multiple rules
7559
+ #
7560
+ # For more information, see [Cross-Region Replication (CRR)](
7561
+ # https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) in the
7562
+ # Amazon S3 Developer Guide.
7563
+ # @return [Integer]
7564
+ #
7434
7565
  # @!attribute [rw] prefix
7435
7566
  # Object keyname prefix identifying one or more objects to which the
7436
7567
  # rule applies. Maximum prefix length can be up to 1,024 characters.
7437
- # Overlapping prefixes are not supported.
7438
7568
  # @return [String]
7439
7569
  #
7570
+ # @!attribute [rw] filter
7571
+ # Filter that identifies subset of objects to which the replication
7572
+ # rule applies. A `Filter` must specify exactly one `Prefix`, `Tag`,
7573
+ # or an `And` child element.
7574
+ # @return [Types::ReplicationRuleFilter]
7575
+ #
7440
7576
  # @!attribute [rw] status
7441
7577
  # The rule is ignored if status is not Enabled.
7442
7578
  # @return [String]
7443
7579
  #
7444
7580
  # @!attribute [rw] source_selection_criteria
7445
- # Container for filters that define which source objects should be
7446
- # replicated.
7581
+ # Container that describes additional filters in identifying source
7582
+ # objects that you want to replicate. Currently, Amazon S3 supports
7583
+ # only the filter that you can specify for objects created with
7584
+ # server-side encryption using an AWS KMS-managed key. You can choose
7585
+ # to enable or disable replication of these objects.
7586
+ #
7587
+ # if you want Amazon S3 to replicate objects created with server-side
7588
+ # encryption using AWS KMS-managed keys.
7447
7589
  # @return [Types::SourceSelectionCriteria]
7448
7590
  #
7449
7591
  # @!attribute [rw] destination
7450
7592
  # Container for replication destination information.
7451
7593
  # @return [Types::Destination]
7452
7594
  #
7595
+ # @!attribute [rw] delete_marker_replication
7596
+ # Specifies whether Amazon S3 should replicate delete makers.
7597
+ # @return [Types::DeleteMarkerReplication]
7598
+ #
7453
7599
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationRule AWS API Documentation
7454
7600
  #
7455
7601
  class ReplicationRule < Struct.new(
7456
7602
  :id,
7603
+ :priority,
7457
7604
  :prefix,
7605
+ :filter,
7458
7606
  :status,
7459
7607
  :source_selection_criteria,
7460
- :destination)
7608
+ :destination,
7609
+ :delete_marker_replication)
7610
+ include Aws::Structure
7611
+ end
7612
+
7613
+ # @note When making an API call, you may pass ReplicationRuleAndOperator
7614
+ # data as a hash:
7615
+ #
7616
+ # {
7617
+ # prefix: "Prefix",
7618
+ # tags: [
7619
+ # {
7620
+ # key: "ObjectKey", # required
7621
+ # value: "Value", # required
7622
+ # },
7623
+ # ],
7624
+ # }
7625
+ #
7626
+ # @!attribute [rw] prefix
7627
+ # @return [String]
7628
+ #
7629
+ # @!attribute [rw] tags
7630
+ # @return [Array<Types::Tag>]
7631
+ #
7632
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationRuleAndOperator AWS API Documentation
7633
+ #
7634
+ class ReplicationRuleAndOperator < Struct.new(
7635
+ :prefix,
7636
+ :tags)
7637
+ include Aws::Structure
7638
+ end
7639
+
7640
+ # Filter that identifies subset of objects to which the replication rule
7641
+ # applies. A `Filter` must specify exactly one `Prefix`, `Tag`, or an
7642
+ # `And` child element.
7643
+ #
7644
+ # @note When making an API call, you may pass ReplicationRuleFilter
7645
+ # data as a hash:
7646
+ #
7647
+ # {
7648
+ # prefix: "Prefix",
7649
+ # tag: {
7650
+ # key: "ObjectKey", # required
7651
+ # value: "Value", # required
7652
+ # },
7653
+ # and: {
7654
+ # prefix: "Prefix",
7655
+ # tags: [
7656
+ # {
7657
+ # key: "ObjectKey", # required
7658
+ # value: "Value", # required
7659
+ # },
7660
+ # ],
7661
+ # },
7662
+ # }
7663
+ #
7664
+ # @!attribute [rw] prefix
7665
+ # Object keyname prefix that identifies subset of objects to which the
7666
+ # rule applies.
7667
+ # @return [String]
7668
+ #
7669
+ # @!attribute [rw] tag
7670
+ # Container for specifying a tag key and value.
7671
+ #
7672
+ # The rule applies only to objects having the tag in its tagset.
7673
+ # @return [Types::Tag]
7674
+ #
7675
+ # @!attribute [rw] and
7676
+ # Container for specifying rule filters. These filters determine the
7677
+ # subset of objects to which the rule applies. The element is required
7678
+ # only if you specify more than one filter. For example:
7679
+ #
7680
+ # * You specify both a `Prefix` and a `Tag` filters. Then you wrap
7681
+ # these in an `And` tag.
7682
+ #
7683
+ # * You specify filter based on multiple tags. Then you wrap the `Tag`
7684
+ # elements in an `And` tag.
7685
+ # @return [Types::ReplicationRuleAndOperator]
7686
+ #
7687
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationRuleFilter AWS API Documentation
7688
+ #
7689
+ class ReplicationRuleFilter < Struct.new(
7690
+ :prefix,
7691
+ :tag,
7692
+ :and)
7461
7693
  include Aws::Structure
7462
7694
  end
7463
7695
 
@@ -8350,7 +8582,8 @@ module Aws::S3
8350
8582
  #
8351
8583
  # @!attribute [rw] sse_kms_encrypted_objects
8352
8584
  # Container for filter information of selection of KMS Encrypted S3
8353
- # objects.
8585
+ # objects. The element is required if you include
8586
+ # `SourceSelectionCriteria` in the replication configuration.
8354
8587
  # @return [Types::SseKmsEncryptedObjects]
8355
8588
  #
8356
8589
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SourceSelectionCriteria AWS API Documentation
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.19.0
4
+ version: 1.20.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: 2018-09-06 00:00:00.000000000 Z
11
+ date: 2018-09-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-kms