Class ReplicationRule

java.lang.Object
software.amazon.awssdk.services.s3control.model.ReplicationRule
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<ReplicationRule.Builder,ReplicationRule>

@Generated("software.amazon.awssdk:codegen") public final class ReplicationRule extends Object implements SdkPojo, Serializable, ToCopyableBuilder<ReplicationRule.Builder,ReplicationRule>

Specifies which S3 on Outposts objects to replicate and where to store the replicas.

See Also:
  • Method Details

    • id

      public final String id()

      A unique identifier for the rule. The maximum value is 255 characters.

      Returns:
      A unique identifier for the rule. The maximum value is 255 characters.
    • priority

      public final Integer priority()

      The priority indicates which rule has precedence whenever two or more replication rules conflict. S3 on Outposts attempts to replicate objects according to all replication rules. However, if there are two or more rules with the same destination Outposts 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 Creating replication rules on Outposts in the Amazon S3 User Guide.

      Returns:
      The priority indicates which rule has precedence whenever two or more replication rules conflict. S3 on Outposts attempts to replicate objects according to all replication rules. However, if there are two or more rules with the same destination Outposts 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 Creating replication rules on Outposts in the Amazon S3 User Guide.

    • prefix

      @Deprecated public final String prefix()
      Deprecated.
      Prefix has been deprecated

      An object key name prefix that identifies the object or objects to which the rule applies. The maximum prefix length is 1,024 characters. To include all objects in an Outposts bucket, specify an empty string.

      When you're using XML requests, you must replace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. For more information, see XML-related object key constraints in the Amazon S3 User Guide.

      Returns:
      An object key name prefix that identifies the object or objects to which the rule applies. The maximum prefix length is 1,024 characters. To include all objects in an Outposts bucket, specify an empty string.

      When you're using XML requests, you must replace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. For more information, see XML-related object key constraints in the Amazon S3 User Guide.

    • filter

      public final ReplicationRuleFilter filter()

      A filter that identifies the subset of objects to which the replication rule applies. A Filter element must specify exactly one Prefix, Tag, or And child element.

      Returns:
      A filter that identifies the subset of objects to which the replication rule applies. A Filter element must specify exactly one Prefix, Tag, or And child element.
    • status

      public final ReplicationRuleStatus status()

      Specifies whether the rule is enabled.

      If the service returns an enum value that is not available in the current SDK version, status will return ReplicationRuleStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from statusAsString().

      Returns:
      Specifies whether the rule is enabled.
      See Also:
    • statusAsString

      public final String statusAsString()

      Specifies whether the rule is enabled.

      If the service returns an enum value that is not available in the current SDK version, status will return ReplicationRuleStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from statusAsString().

      Returns:
      Specifies whether the rule is enabled.
      See Also:
    • sourceSelectionCriteria

      public final SourceSelectionCriteria sourceSelectionCriteria()

      A container that describes additional filters for identifying the source Outposts objects that you want to replicate. You can choose to enable or disable the replication of these objects.

      Returns:
      A container that describes additional filters for identifying the source Outposts objects that you want to replicate. You can choose to enable or disable the replication of these objects.
    • existingObjectReplication

      public final ExistingObjectReplication existingObjectReplication()

      An optional configuration to replicate existing source bucket objects.

      This is not supported by Amazon S3 on Outposts buckets.

      Returns:
      An optional configuration to replicate existing source bucket objects.

      This is not supported by Amazon S3 on Outposts buckets.

    • destination

      public final Destination destination()

      A container for information about the replication destination and its configurations.

      Returns:
      A container for information about the replication destination and its configurations.
    • deleteMarkerReplication

      public final DeleteMarkerReplication deleteMarkerReplication()

      Specifies whether S3 on Outposts replicates delete markers. If you specify a Filter element in your replication configuration, you must also include a DeleteMarkerReplication element. If your Filter includes a Tag element, the DeleteMarkerReplication element's Status child element must be set to Disabled, because S3 on Outposts doesn't support replicating delete markers for tag-based rules.

      For more information about delete marker replication, see How delete operations affect replication in the Amazon S3 User Guide.

      Returns:
      Specifies whether S3 on Outposts replicates delete markers. If you specify a Filter element in your replication configuration, you must also include a DeleteMarkerReplication element. If your Filter includes a Tag element, the DeleteMarkerReplication element's Status child element must be set to Disabled, because S3 on Outposts doesn't support replicating delete markers for tag-based rules.

      For more information about delete marker replication, see How delete operations affect replication in the Amazon S3 User Guide.

    • bucket

      public final String bucket()

      The Amazon Resource Name (ARN) of the access point for the source Outposts bucket that you want S3 on Outposts to replicate the objects from.

      Returns:
      The Amazon Resource Name (ARN) of the access point for the source Outposts bucket that you want S3 on Outposts to replicate the objects from.
    • toBuilder

      public ReplicationRule.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<ReplicationRule.Builder,ReplicationRule>
      Returns:
      a builder for type T
    • builder

      public static ReplicationRule.Builder builder()
    • serializableBuilderClass

      public static Class<? extends ReplicationRule.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.