/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a condition for a device pool.See Also:
AWS API
* Reference
The rule's stringified attribute. For example, specify the value as
* "\"abc\""
.
The supported operators for each attribute are * provided in the following list.
The * Appium version for the test.
Supported operators: CONTAINS
*
The Amazon Resource Name (ARN) of the device
* (for example,
* arn:aws:devicefarm:us-west-2::device:12345Example
.
Supported
* operators: EQUALS
, IN
, NOT_IN
The current availability of the device. Valid * values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.
*Supported operators: EQUALS
The fleet type. Valid values are PUBLIC or PRIVATE.
Supported
* operators: EQUALS
The * device form factor. Valid values are PHONE or TABLET.
Supported
* operators: EQUALS
, IN
, NOT_IN
The Amazon Resource Name (ARN) of the device * instance.
Supported operators: IN
, NOT_IN
The label of the device instance.
*Supported operators: CONTAINS
The device manufacturer (for example, Apple).
Supported
* operators: EQUALS
, IN
, NOT_IN
The device model, such as Apple iPad Air 2 or Google * Pixel.
Supported operators: CONTAINS
, EQUALS
,
* IN
, NOT_IN
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
The device platform. Valid values are ANDROID or * IOS.
Supported operators: EQUALS
, IN
,
* NOT_IN
Whether * the device is enabled for remote access. Valid values are TRUE or FALSE.
*Supported operators: EQUALS
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.
The rule's stringified attribute. For example, specify the value as
* "\"abc\""
.
The supported operators for each attribute are * provided in the following list.
The * Appium version for the test.
Supported operators: CONTAINS
*
The Amazon Resource Name (ARN) of the device
* (for example,
* arn:aws:devicefarm:us-west-2::device:12345Example
.
Supported
* operators: EQUALS
, IN
, NOT_IN
The current availability of the device. Valid * values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.
*Supported operators: EQUALS
The fleet type. Valid values are PUBLIC or PRIVATE.
Supported
* operators: EQUALS
The * device form factor. Valid values are PHONE or TABLET.
Supported
* operators: EQUALS
, IN
, NOT_IN
The Amazon Resource Name (ARN) of the device * instance.
Supported operators: IN
, NOT_IN
The label of the device instance.
*Supported operators: CONTAINS
The device manufacturer (for example, Apple).
Supported
* operators: EQUALS
, IN
, NOT_IN
The device model, such as Apple iPad Air 2 or Google * Pixel.
Supported operators: CONTAINS
, EQUALS
,
* IN
, NOT_IN
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
The device platform. Valid values are ANDROID or * IOS.
Supported operators: EQUALS
, IN
,
* NOT_IN
Whether * the device is enabled for remote access. Valid values are TRUE or FALSE.
*Supported operators: EQUALS
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.
The rule's stringified attribute. For example, specify the value as
* "\"abc\""
.
The supported operators for each attribute are * provided in the following list.
The * Appium version for the test.
Supported operators: CONTAINS
*
The Amazon Resource Name (ARN) of the device
* (for example,
* arn:aws:devicefarm:us-west-2::device:12345Example
.
Supported
* operators: EQUALS
, IN
, NOT_IN
The current availability of the device. Valid * values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.
*Supported operators: EQUALS
The fleet type. Valid values are PUBLIC or PRIVATE.
Supported
* operators: EQUALS
The * device form factor. Valid values are PHONE or TABLET.
Supported
* operators: EQUALS
, IN
, NOT_IN
The Amazon Resource Name (ARN) of the device * instance.
Supported operators: IN
, NOT_IN
The label of the device instance.
*Supported operators: CONTAINS
The device manufacturer (for example, Apple).
Supported
* operators: EQUALS
, IN
, NOT_IN
The device model, such as Apple iPad Air 2 or Google * Pixel.
Supported operators: CONTAINS
, EQUALS
,
* IN
, NOT_IN
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
The device platform. Valid values are ANDROID or * IOS.
Supported operators: EQUALS
, IN
,
* NOT_IN
Whether * the device is enabled for remote access. Valid values are TRUE or FALSE.
*Supported operators: EQUALS
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.
The rule's stringified attribute. For example, specify the value as
* "\"abc\""
.
The supported operators for each attribute are * provided in the following list.
The * Appium version for the test.
Supported operators: CONTAINS
*
The Amazon Resource Name (ARN) of the device
* (for example,
* arn:aws:devicefarm:us-west-2::device:12345Example
.
Supported
* operators: EQUALS
, IN
, NOT_IN
The current availability of the device. Valid * values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.
*Supported operators: EQUALS
The fleet type. Valid values are PUBLIC or PRIVATE.
Supported
* operators: EQUALS
The * device form factor. Valid values are PHONE or TABLET.
Supported
* operators: EQUALS
, IN
, NOT_IN
The Amazon Resource Name (ARN) of the device * instance.
Supported operators: IN
, NOT_IN
The label of the device instance.
*Supported operators: CONTAINS
The device manufacturer (for example, Apple).
Supported
* operators: EQUALS
, IN
, NOT_IN
The device model, such as Apple iPad Air 2 or Google * Pixel.
Supported operators: CONTAINS
, EQUALS
,
* IN
, NOT_IN
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
The device platform. Valid values are ANDROID or * IOS.
Supported operators: EQUALS
, IN
,
* NOT_IN
Whether * the device is enabled for remote access. Valid values are TRUE or FALSE.
*Supported operators: EQUALS
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.
The rule's stringified attribute. For example, specify the value as
* "\"abc\""
.
The supported operators for each attribute are * provided in the following list.
The * Appium version for the test.
Supported operators: CONTAINS
*
The Amazon Resource Name (ARN) of the device
* (for example,
* arn:aws:devicefarm:us-west-2::device:12345Example
.
Supported
* operators: EQUALS
, IN
, NOT_IN
The current availability of the device. Valid * values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.
*Supported operators: EQUALS
The fleet type. Valid values are PUBLIC or PRIVATE.
Supported
* operators: EQUALS
The * device form factor. Valid values are PHONE or TABLET.
Supported
* operators: EQUALS
, IN
, NOT_IN
The Amazon Resource Name (ARN) of the device * instance.
Supported operators: IN
, NOT_IN
The label of the device instance.
*Supported operators: CONTAINS
The device manufacturer (for example, Apple).
Supported
* operators: EQUALS
, IN
, NOT_IN
The device model, such as Apple iPad Air 2 or Google * Pixel.
Supported operators: CONTAINS
, EQUALS
,
* IN
, NOT_IN
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
The device platform. Valid values are ANDROID or * IOS.
Supported operators: EQUALS
, IN
,
* NOT_IN
Whether * the device is enabled for remote access. Valid values are TRUE or FALSE.
*Supported operators: EQUALS
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.
The rule's stringified attribute. For example, specify the value as
* "\"abc\""
.
The supported operators for each attribute are * provided in the following list.
The * Appium version for the test.
Supported operators: CONTAINS
*
The Amazon Resource Name (ARN) of the device
* (for example,
* arn:aws:devicefarm:us-west-2::device:12345Example
.
Supported
* operators: EQUALS
, IN
, NOT_IN
The current availability of the device. Valid * values are AVAILABLE, HIGHLY_AVAILABLE, BUSY, or TEMPORARY_NOT_AVAILABLE.
*Supported operators: EQUALS
The fleet type. Valid values are PUBLIC or PRIVATE.
Supported
* operators: EQUALS
The * device form factor. Valid values are PHONE or TABLET.
Supported
* operators: EQUALS
, IN
, NOT_IN
The Amazon Resource Name (ARN) of the device * instance.
Supported operators: IN
, NOT_IN
The label of the device instance.
*Supported operators: CONTAINS
The device manufacturer (for example, Apple).
Supported
* operators: EQUALS
, IN
, NOT_IN
The device model, such as Apple iPad Air 2 or Google * Pixel.
Supported operators: CONTAINS
, EQUALS
,
* IN
, NOT_IN
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
The device platform. Valid values are ANDROID or * IOS.
Supported operators: EQUALS
, IN
,
* NOT_IN
Whether * the device is enabled for remote access. Valid values are TRUE or FALSE.
*Supported operators: EQUALS
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.
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.
*/ inline const RuleOperator& GetOperator() const{ return m_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.
*/ inline bool OperatorHasBeenSet() const { return m_operatorHasBeenSet; } /** *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.
*/ inline void SetOperator(const RuleOperator& value) { m_operatorHasBeenSet = true; m_operator = value; } /** *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.
*/ inline void SetOperator(RuleOperator&& value) { m_operatorHasBeenSet = true; m_operator = std::move(value); } /** *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.
*/ inline Rule& WithOperator(const RuleOperator& value) { SetOperator(value); return *this;} /** *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.
*/ inline Rule& WithOperator(RuleOperator&& value) { SetOperator(std::move(value)); return *this;} /** *The rule's value.
*/ inline const Aws::String& GetValue() const{ return m_value; } /** *The rule's value.
*/ inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; } /** *The rule's value.
*/ inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; } /** *The rule's value.
*/ inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = std::move(value); } /** *The rule's value.
*/ inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); } /** *The rule's value.
*/ inline Rule& WithValue(const Aws::String& value) { SetValue(value); return *this;} /** *The rule's value.
*/ inline Rule& WithValue(Aws::String&& value) { SetValue(std::move(value)); return *this;} /** *The rule's value.
*/ inline Rule& WithValue(const char* value) { SetValue(value); return *this;} private: DeviceAttribute m_attribute; bool m_attributeHasBeenSet = false; RuleOperator m_operator; bool m_operatorHasBeenSet = false; Aws::String m_value; bool m_valueHasBeenSet = false; }; } // namespace Model } // namespace DeviceFarm } // namespace Aws