Class CfnBucket.ReplicationRuleProperty
Specifies which Amazon S3 objects to replicate and where to store the replicas.
Inheritance
Implements
Namespace: Amazon.CDK.AWS.S3
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class ReplicationRuleProperty : Object, CfnBucket.IReplicationRuleProperty
Syntax (vb)
Public Class ReplicationRuleProperty
Inherits Object
Implements CfnBucket.IReplicationRuleProperty
Remarks
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.S3;
var replicationRuleProperty = new ReplicationRuleProperty {
Destination = new ReplicationDestinationProperty {
Bucket = "bucket",
// the properties below are optional
AccessControlTranslation = new AccessControlTranslationProperty {
Owner = "owner"
},
Account = "account",
EncryptionConfiguration = new EncryptionConfigurationProperty {
ReplicaKmsKeyId = "replicaKmsKeyId"
},
Metrics = new MetricsProperty {
Status = "status",
// the properties below are optional
EventThreshold = new ReplicationTimeValueProperty {
Minutes = 123
}
},
ReplicationTime = new ReplicationTimeProperty {
Status = "status",
Time = new ReplicationTimeValueProperty {
Minutes = 123
}
},
StorageClass = "storageClass"
},
Status = "status",
// the properties below are optional
DeleteMarkerReplication = new DeleteMarkerReplicationProperty {
Status = "status"
},
Filter = new ReplicationRuleFilterProperty {
And = new ReplicationRuleAndOperatorProperty {
Prefix = "prefix",
TagFilters = new [] { new TagFilterProperty {
Key = "key",
Value = "value"
} }
},
Prefix = "prefix",
TagFilter = new TagFilterProperty {
Key = "key",
Value = "value"
}
},
Id = "id",
Prefix = "prefix",
Priority = 123,
SourceSelectionCriteria = new SourceSelectionCriteriaProperty {
ReplicaModifications = new ReplicaModificationsProperty {
Status = "status"
},
SseKmsEncryptedObjects = new SseKmsEncryptedObjectsProperty {
Status = "status"
}
}
};
Synopsis
Constructors
ReplicationRuleProperty() |
Properties
DeleteMarkerReplication | Specifies whether Amazon S3 replicates delete markers. |
Destination | A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC). |
Filter | A filter that identifies the subset of objects to which the replication rule applies. |
Id | A unique identifier for the rule. |
Prefix | An object key name prefix that identifies the object or objects to which the rule applies. |
Priority | The priority indicates which rule has precedence whenever two or more replication rules conflict. |
SourceSelectionCriteria | A container that describes additional filters for identifying the source objects that you want to replicate. |
Status | Specifies whether the rule is enabled. |
Constructors
ReplicationRuleProperty()
public ReplicationRuleProperty()
Properties
DeleteMarkerReplication
Specifies whether Amazon S3 replicates delete markers.
public object DeleteMarkerReplication { get; set; }
Property Value
System.Object
Remarks
If you specify a Filter
in your replication configuration, you must also include a DeleteMarkerReplication
element. If your Filter
includes a Tag
element, the DeleteMarkerReplication
Status
must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see Basic Rule Configuration .
For more information about delete marker replication, see Basic Rule Configuration .
If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see Backward Compatibility .
Destination
A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC).
public object Destination { get; set; }
Property Value
System.Object
Remarks
Filter
A filter that identifies the subset of objects to which the replication rule applies.
public object Filter { get; set; }
Property Value
System.Object
Remarks
A Filter
must specify exactly one Prefix
, TagFilter
, or an And
child element. The use of the filter field indicates that this is a V2 replication configuration. This field isn't supported in a V1 replication configuration.
V1 replication configuration only supports filtering by key prefix. To filter using a V1 replication configuration, add the Prefix
directly as a child element of the Rule
element.
Id
A unique identifier for the rule.
public string Id { get; set; }
Property Value
System.String
Remarks
The maximum value is 255 characters. If you don't specify a value, AWS CloudFormation generates a random ID. When using a V2 replication configuration this property is capitalized as "ID".
Prefix
An object key name prefix that identifies the object or objects to which the rule applies.
public string Prefix { get; set; }
Property Value
System.String
Remarks
The maximum prefix length is 1,024 characters. To include all objects in a bucket, specify an empty string. To filter using a V1 replication configuration, add the Prefix
directly as a child element of the Rule
element.
Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see XML related object key constraints .
Priority
The priority indicates which rule has precedence whenever two or more replication rules conflict.
public Nullable<double> Priority { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
Amazon S3 will attempt to replicate objects according to all replication rules. However, if there are two or more rules with the same destination bucket, then objects will be replicated according to the rule with the highest priority. The higher the number, the higher the priority.
For more information, see Replication in the Amazon S3 User Guide .
SourceSelectionCriteria
A container that describes additional filters for identifying the source objects that you want to replicate.
public object SourceSelectionCriteria { get; set; }
Property Value
System.Object
Remarks
You can choose to enable or disable the replication of these objects.
Status
Specifies whether the rule is enabled.
public string Status { get; set; }
Property Value
System.String