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

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

Represents a condition for a device pool.

See Also:
  • Method Details

    • attribute

      public final DeviceAttribute attribute()

      The rule's stringified attribute. For example, specify the value as "\"abc\"".

      The supported operators for each attribute are provided in the following list.

      APPIUM_VERSION

      The Appium version for the test.

      Supported operators: CONTAINS

      ARN

      The Amazon Resource Name (ARN) of the device (for example, arn:aws:devicefarm:us-west-2::device:12345Example.

      Supported operators: EQUALS, IN, NOT_IN

      AVAILABILITY

      The current availability of the device. Valid values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.

      Supported operators: EQUALS

      FLEET_TYPE

      The fleet type. Valid values are PUBLIC or PRIVATE.

      Supported operators: EQUALS

      FORM_FACTOR

      The device form factor. Valid values are PHONE or TABLET.

      Supported operators: EQUALS, IN, NOT_IN

      INSTANCE_ARN

      The Amazon Resource Name (ARN) of the device instance.

      Supported operators: IN, NOT_IN

      INSTANCE_LABELS

      The label of the device instance.

      Supported operators: CONTAINS

      MANUFACTURER

      The device manufacturer (for example, Apple).

      Supported operators: EQUALS, IN, NOT_IN

      MODEL

      The device model, such as Apple iPad Air 2 or Google Pixel.

      Supported operators: CONTAINS, EQUALS, IN, NOT_IN

      OS_VERSION

      The operating system version (for example, 10.3.2).

      Supported operators: EQUALS, GREATER_THAN, GREATER_THAN_OR_EQUALS, IN, LESS_THAN, LESS_THAN_OR_EQUALS, NOT_IN

      PLATFORM

      The device platform. Valid values are ANDROID or IOS.

      Supported operators: EQUALS, IN, NOT_IN

      REMOTE_ACCESS_ENABLED

      Whether the device is enabled for remote access. Valid values are TRUE or FALSE.

      Supported operators: EQUALS

      REMOTE_DEBUG_ENABLED

      Whether the device is enabled for remote debugging. Valid values are TRUE or FALSE.

      Supported operators: EQUALS

      Because remote debugging is no longer supported, this filter is ignored.

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

      Returns:
      The rule's stringified attribute. For example, specify the value as "\"abc\"".

      The supported operators for each attribute are provided in the following list.

      APPIUM_VERSION

      The Appium version for the test.

      Supported operators: CONTAINS

      ARN

      The Amazon Resource Name (ARN) of the device (for example, arn:aws:devicefarm:us-west-2::device:12345Example.

      Supported operators: EQUALS, IN, NOT_IN

      AVAILABILITY

      The current availability of the device. Valid values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.

      Supported operators: EQUALS

      FLEET_TYPE

      The fleet type. Valid values are PUBLIC or PRIVATE.

      Supported operators: EQUALS

      FORM_FACTOR

      The device form factor. Valid values are PHONE or TABLET.

      Supported operators: EQUALS, IN, NOT_IN

      INSTANCE_ARN

      The Amazon Resource Name (ARN) of the device instance.

      Supported operators: IN, NOT_IN

      INSTANCE_LABELS

      The label of the device instance.

      Supported operators: CONTAINS

      MANUFACTURER

      The device manufacturer (for example, Apple).

      Supported operators: EQUALS, IN, NOT_IN

      MODEL

      The device model, such as Apple iPad Air 2 or Google Pixel.

      Supported operators: CONTAINS, EQUALS, IN, NOT_IN

      OS_VERSION

      The operating system version (for example, 10.3.2).

      Supported operators: EQUALS, GREATER_THAN, GREATER_THAN_OR_EQUALS, IN, LESS_THAN, LESS_THAN_OR_EQUALS, NOT_IN

      PLATFORM

      The device platform. Valid values are ANDROID or IOS.

      Supported operators: EQUALS, IN, NOT_IN

      REMOTE_ACCESS_ENABLED

      Whether the device is enabled for remote access. Valid values are TRUE or FALSE.

      Supported operators: EQUALS

      REMOTE_DEBUG_ENABLED

      Whether the device is enabled for remote debugging. Valid values are TRUE or FALSE.

      Supported operators: EQUALS

      Because remote debugging is no longer supported, this filter is ignored.

      See Also:
    • attributeAsString

      public final String attributeAsString()

      The rule's stringified attribute. For example, specify the value as "\"abc\"".

      The supported operators for each attribute are provided in the following list.

      APPIUM_VERSION

      The Appium version for the test.

      Supported operators: CONTAINS

      ARN

      The Amazon Resource Name (ARN) of the device (for example, arn:aws:devicefarm:us-west-2::device:12345Example.

      Supported operators: EQUALS, IN, NOT_IN

      AVAILABILITY

      The current availability of the device. Valid values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.

      Supported operators: EQUALS

      FLEET_TYPE

      The fleet type. Valid values are PUBLIC or PRIVATE.

      Supported operators: EQUALS

      FORM_FACTOR

      The device form factor. Valid values are PHONE or TABLET.

      Supported operators: EQUALS, IN, NOT_IN

      INSTANCE_ARN

      The Amazon Resource Name (ARN) of the device instance.

      Supported operators: IN, NOT_IN

      INSTANCE_LABELS

      The label of the device instance.

      Supported operators: CONTAINS

      MANUFACTURER

      The device manufacturer (for example, Apple).

      Supported operators: EQUALS, IN, NOT_IN

      MODEL

      The device model, such as Apple iPad Air 2 or Google Pixel.

      Supported operators: CONTAINS, EQUALS, IN, NOT_IN

      OS_VERSION

      The operating system version (for example, 10.3.2).

      Supported operators: EQUALS, GREATER_THAN, GREATER_THAN_OR_EQUALS, IN, LESS_THAN, LESS_THAN_OR_EQUALS, NOT_IN

      PLATFORM

      The device platform. Valid values are ANDROID or IOS.

      Supported operators: EQUALS, IN, NOT_IN

      REMOTE_ACCESS_ENABLED

      Whether the device is enabled for remote access. Valid values are TRUE or FALSE.

      Supported operators: EQUALS

      REMOTE_DEBUG_ENABLED

      Whether the device is enabled for remote debugging. Valid values are TRUE or FALSE.

      Supported operators: EQUALS

      Because remote debugging is no longer supported, this filter is ignored.

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

      Returns:
      The rule's stringified attribute. For example, specify the value as "\"abc\"".

      The supported operators for each attribute are provided in the following list.

      APPIUM_VERSION

      The Appium version for the test.

      Supported operators: CONTAINS

      ARN

      The Amazon Resource Name (ARN) of the device (for example, arn:aws:devicefarm:us-west-2::device:12345Example.

      Supported operators: EQUALS, IN, NOT_IN

      AVAILABILITY

      The current availability of the device. Valid values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.

      Supported operators: EQUALS

      FLEET_TYPE

      The fleet type. Valid values are PUBLIC or PRIVATE.

      Supported operators: EQUALS

      FORM_FACTOR

      The device form factor. Valid values are PHONE or TABLET.

      Supported operators: EQUALS, IN, NOT_IN

      INSTANCE_ARN

      The Amazon Resource Name (ARN) of the device instance.

      Supported operators: IN, NOT_IN

      INSTANCE_LABELS

      The label of the device instance.

      Supported operators: CONTAINS

      MANUFACTURER

      The device manufacturer (for example, Apple).

      Supported operators: EQUALS, IN, NOT_IN

      MODEL

      The device model, such as Apple iPad Air 2 or Google Pixel.

      Supported operators: CONTAINS, EQUALS, IN, NOT_IN

      OS_VERSION

      The operating system version (for example, 10.3.2).

      Supported operators: EQUALS, GREATER_THAN, GREATER_THAN_OR_EQUALS, IN, LESS_THAN, LESS_THAN_OR_EQUALS, NOT_IN

      PLATFORM

      The device platform. Valid values are ANDROID or IOS.

      Supported operators: EQUALS, IN, NOT_IN

      REMOTE_ACCESS_ENABLED

      Whether the device is enabled for remote access. Valid values are TRUE or FALSE.

      Supported operators: EQUALS

      REMOTE_DEBUG_ENABLED

      Whether the device is enabled for remote debugging. Valid values are TRUE or FALSE.

      Supported operators: EQUALS

      Because remote debugging is no longer supported, this filter is ignored.

      See Also:
    • operator

      public final RuleOperator operator()

      Specifies how Device Farm compares the rule's attribute to the value. For the operators that are supported by each attribute, see the attribute descriptions.

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

      Returns:
      Specifies how Device Farm compares the rule's attribute to the value. For the operators that are supported by each attribute, see the attribute descriptions.
      See Also:
    • operatorAsString

      public final String operatorAsString()

      Specifies how Device Farm compares the rule's attribute to the value. For the operators that are supported by each attribute, see the attribute descriptions.

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

      Returns:
      Specifies how Device Farm compares the rule's attribute to the value. For the operators that are supported by each attribute, see the attribute descriptions.
      See Also:
    • value

      public final String value()

      The rule's value.

      Returns:
      The rule's value.
    • toBuilder

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

      public static Rule.Builder builder()
    • serializableBuilderClass

      public static Class<? extends Rule.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.