Class MetricsFilter

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

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

Specifies a metrics configuration filter. The metrics configuration only includes objects that meet the filter's criteria. A filter must be a prefix, an object tag, an access point ARN, or a conjunction (MetricsAndOperator). For more information, see PutBucketMetricsConfiguration.

See Also:
  • Method Details

    • prefix

      public final String prefix()

      The prefix used when evaluating a metrics filter.

      Returns:
      The prefix used when evaluating a metrics filter.
    • tag

      public final Tag tag()

      The tag used when evaluating a metrics filter.

      Returns:
      The tag used when evaluating a metrics filter.
    • accessPointArn

      public final String accessPointArn()

      The access point ARN used when evaluating a metrics filter.

      Returns:
      The access point ARN used when evaluating a metrics filter.
    • and

      public final MetricsAndOperator and()

      A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The operator must have at least two predicates, and an object must match all of the predicates in order for the filter to apply.

      Returns:
      A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The operator must have at least two predicates, and an object must match all of the predicates in order for the filter to apply.
    • toBuilder

      public MetricsFilter.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<MetricsFilter.Builder,MetricsFilter>
      Returns:
      a builder for type T
    • builder

      public static MetricsFilter.Builder builder()
    • serializableBuilderClass

      public static Class<? extends MetricsFilter.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)
    • fromPrefix

      public static MetricsFilter fromPrefix(String prefix)
      Create an instance of this class with prefix() initialized to the given value.

      The prefix used when evaluating a metrics filter.

      Parameters:
      prefix - The prefix used when evaluating a metrics filter.
    • fromTag

      public static MetricsFilter fromTag(Tag tag)
      Create an instance of this class with tag() initialized to the given value.

      The tag used when evaluating a metrics filter.

      Parameters:
      tag - The tag used when evaluating a metrics filter.
    • fromTag

      public static MetricsFilter fromTag(Consumer<Tag.Builder> tag)
      Create an instance of this class with tag() initialized to the given value.

      The tag used when evaluating a metrics filter.

      Parameters:
      tag - The tag used when evaluating a metrics filter.
    • fromAccessPointArn

      public static MetricsFilter fromAccessPointArn(String accessPointArn)
      Create an instance of this class with accessPointArn() initialized to the given value.

      The access point ARN used when evaluating a metrics filter.

      Parameters:
      accessPointArn - The access point ARN used when evaluating a metrics filter.
    • fromAnd

      public static MetricsFilter fromAnd(MetricsAndOperator and)
      Create an instance of this class with and() initialized to the given value.

      A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The operator must have at least two predicates, and an object must match all of the predicates in order for the filter to apply.

      Parameters:
      and - A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The operator must have at least two predicates, and an object must match all of the predicates in order for the filter to apply.
    • fromAnd

      public static MetricsFilter fromAnd(Consumer<MetricsAndOperator.Builder> and)
      Create an instance of this class with and() initialized to the given value.

      A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The operator must have at least two predicates, and an object must match all of the predicates in order for the filter to apply.

      Parameters:
      and - A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The operator must have at least two predicates, and an object must match all of the predicates in order for the filter to apply.
    • type

      public MetricsFilter.Type type()
      Retrieve an enum value representing which member of this object is populated. When this class is returned in a service response, this will be MetricsFilter.Type.UNKNOWN_TO_SDK_VERSION if the service returned a member that is only known to a newer SDK version. When this class is created directly in your code, this will be MetricsFilter.Type.UNKNOWN_TO_SDK_VERSION if zero members are set, and null if more than one member is set.
    • 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.