Struct aws_sdk_devicefarm::model::rule::Builder
source · pub struct Builder { /* private fields */ }Expand description
A builder for Rule.
Implementations§
source§impl Builder
impl Builder
sourcepub fn attribute(self, input: DeviceAttribute) -> Self
pub fn attribute(self, input: DeviceAttribute) -> Self
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:
EQUALSBecause remote debugging is no longer supported, this filter is ignored.
sourcepub fn set_attribute(self, input: Option<DeviceAttribute>) -> Self
pub fn set_attribute(self, input: Option<DeviceAttribute>) -> Self
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:
EQUALSBecause remote debugging is no longer supported, this filter is ignored.
Examples found in repository?
9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362
pub(crate) fn deser_structure_crate_model_rule<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<Option<crate::model::Rule>, aws_smithy_json::deserialize::error::DeserializeError>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::rule::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"attribute" => {
builder = builder.set_attribute(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| {
s.to_unescaped().map(|u| {
crate::model::DeviceAttribute::from(u.as_ref())
})
})
.transpose()?,
);
}
"operator" => {
builder = builder.set_operator(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| {
s.to_unescaped()
.map(|u| crate::model::RuleOperator::from(u.as_ref()))
})
.transpose()?,
);
}
"value" => {
builder = builder.set_value(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}sourcepub fn operator(self, input: RuleOperator) -> Self
pub fn operator(self, input: RuleOperator) -> Self
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.
sourcepub fn set_operator(self, input: Option<RuleOperator>) -> Self
pub fn set_operator(self, input: Option<RuleOperator>) -> Self
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.
Examples found in repository?
9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362
pub(crate) fn deser_structure_crate_model_rule<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<Option<crate::model::Rule>, aws_smithy_json::deserialize::error::DeserializeError>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::rule::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"attribute" => {
builder = builder.set_attribute(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| {
s.to_unescaped().map(|u| {
crate::model::DeviceAttribute::from(u.as_ref())
})
})
.transpose()?,
);
}
"operator" => {
builder = builder.set_operator(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| {
s.to_unescaped()
.map(|u| crate::model::RuleOperator::from(u.as_ref()))
})
.transpose()?,
);
}
"value" => {
builder = builder.set_value(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}sourcepub fn set_value(self, input: Option<String>) -> Self
pub fn set_value(self, input: Option<String>) -> Self
The rule's value.
Examples found in repository?
9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362
pub(crate) fn deser_structure_crate_model_rule<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<Option<crate::model::Rule>, aws_smithy_json::deserialize::error::DeserializeError>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::rule::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"attribute" => {
builder = builder.set_attribute(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| {
s.to_unescaped().map(|u| {
crate::model::DeviceAttribute::from(u.as_ref())
})
})
.transpose()?,
);
}
"operator" => {
builder = builder.set_operator(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| {
s.to_unescaped()
.map(|u| crate::model::RuleOperator::from(u.as_ref()))
})
.transpose()?,
);
}
"value" => {
builder = builder.set_value(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}sourcepub fn build(self) -> Rule
pub fn build(self) -> Rule
Consumes the builder and constructs a Rule.
Examples found in repository?
9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362
pub(crate) fn deser_structure_crate_model_rule<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<Option<crate::model::Rule>, aws_smithy_json::deserialize::error::DeserializeError>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::rule::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"attribute" => {
builder = builder.set_attribute(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| {
s.to_unescaped().map(|u| {
crate::model::DeviceAttribute::from(u.as_ref())
})
})
.transpose()?,
);
}
"operator" => {
builder = builder.set_operator(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| {
s.to_unescaped()
.map(|u| crate::model::RuleOperator::from(u.as_ref()))
})
.transpose()?,
);
}
"value" => {
builder = builder.set_value(
aws_smithy_json::deserialize::token::expect_string_or_null(
tokens.next(),
)?
.map(|s| s.to_unescaped().map(|u| u.into_owned()))
.transpose()?,
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}