#[non_exhaustive]pub struct RuleCondition {
pub field: Option<String>,
pub values: Option<Vec<String>>,
pub host_header_config: Option<HostHeaderConditionConfig>,
pub path_pattern_config: Option<PathPatternConditionConfig>,
pub http_header_config: Option<HttpHeaderConditionConfig>,
pub query_string_config: Option<QueryStringConditionConfig>,
pub http_request_method_config: Option<HttpRequestMethodConditionConfig>,
pub source_ip_config: Option<SourceIpConditionConfig>,
}Expand description
Information about a condition for a rule.
Each rule can optionally include up to one of each of the following conditions: http-request-method, host-header, path-pattern, and source-ip. Each rule can also optionally include one or more of each of the following conditions: http-header and query-string. Note that the value for a condition cannot be empty.
For more information, see Quotas for your Application Load Balancers.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.field: Option<String>The field in the HTTP request. The following are the possible values:
-
http-header -
http-request-method -
host-header -
path-pattern -
query-string -
source-ip
values: Option<Vec<String>>The condition value. Specify only when Field is host-header or path-pattern. Alternatively, to specify multiple host names or multiple path patterns, use HostHeaderConfig or PathPatternConfig.
If Field is host-header and you are not using HostHeaderConfig, you can specify a single host name (for example, my.example.com) in Values. A host name is case insensitive, can be up to 128 characters in length, and can contain any of the following characters.
-
A-Z, a-z, 0-9
-
- .
-
* (matches 0 or more characters)
-
? (matches exactly 1 character)
If Field is path-pattern and you are not using PathPatternConfig, you can specify a single path pattern (for example, /img/*) in Values. A path pattern is case-sensitive, can be up to 128 characters in length, and can contain any of the following characters.
-
A-Z, a-z, 0-9
-
_ - . $ / ~ " ' @ : +
-
& (using &)
-
* (matches 0 or more characters)
-
? (matches exactly 1 character)
host_header_config: Option<HostHeaderConditionConfig>Information for a host header condition. Specify only when Field is host-header.
path_pattern_config: Option<PathPatternConditionConfig>Information for a path pattern condition. Specify only when Field is path-pattern.
http_header_config: Option<HttpHeaderConditionConfig>Information for an HTTP header condition. Specify only when Field is http-header.
query_string_config: Option<QueryStringConditionConfig>Information for a query string condition. Specify only when Field is query-string.
http_request_method_config: Option<HttpRequestMethodConditionConfig>Information for an HTTP method condition. Specify only when Field is http-request-method.
source_ip_config: Option<SourceIpConditionConfig>Information for a source IP condition. Specify only when Field is source-ip.
Implementations§
source§impl RuleCondition
impl RuleCondition
sourcepub fn field(&self) -> Option<&str>
pub fn field(&self) -> Option<&str>
The field in the HTTP request. The following are the possible values:
-
http-header -
http-request-method -
host-header -
path-pattern -
query-string -
source-ip
sourcepub fn values(&self) -> Option<&[String]>
pub fn values(&self) -> Option<&[String]>
The condition value. Specify only when Field is host-header or path-pattern. Alternatively, to specify multiple host names or multiple path patterns, use HostHeaderConfig or PathPatternConfig.
If Field is host-header and you are not using HostHeaderConfig, you can specify a single host name (for example, my.example.com) in Values. A host name is case insensitive, can be up to 128 characters in length, and can contain any of the following characters.
-
A-Z, a-z, 0-9
-
- .
-
* (matches 0 or more characters)
-
? (matches exactly 1 character)
If Field is path-pattern and you are not using PathPatternConfig, you can specify a single path pattern (for example, /img/*) in Values. A path pattern is case-sensitive, can be up to 128 characters in length, and can contain any of the following characters.
-
A-Z, a-z, 0-9
-
_ - . $ / ~ " ' @ : +
-
& (using &)
-
* (matches 0 or more characters)
-
? (matches exactly 1 character)
sourcepub fn host_header_config(&self) -> Option<&HostHeaderConditionConfig>
pub fn host_header_config(&self) -> Option<&HostHeaderConditionConfig>
Information for a host header condition. Specify only when Field is host-header.
sourcepub fn path_pattern_config(&self) -> Option<&PathPatternConditionConfig>
pub fn path_pattern_config(&self) -> Option<&PathPatternConditionConfig>
Information for a path pattern condition. Specify only when Field is path-pattern.
sourcepub fn http_header_config(&self) -> Option<&HttpHeaderConditionConfig>
pub fn http_header_config(&self) -> Option<&HttpHeaderConditionConfig>
Information for an HTTP header condition. Specify only when Field is http-header.
sourcepub fn query_string_config(&self) -> Option<&QueryStringConditionConfig>
pub fn query_string_config(&self) -> Option<&QueryStringConditionConfig>
Information for a query string condition. Specify only when Field is query-string.
sourcepub fn http_request_method_config(
&self
) -> Option<&HttpRequestMethodConditionConfig>
pub fn http_request_method_config( &self ) -> Option<&HttpRequestMethodConditionConfig>
Information for an HTTP method condition. Specify only when Field is http-request-method.
sourcepub fn source_ip_config(&self) -> Option<&SourceIpConditionConfig>
pub fn source_ip_config(&self) -> Option<&SourceIpConditionConfig>
Information for a source IP condition. Specify only when Field is source-ip.
source§impl RuleCondition
impl RuleCondition
sourcepub fn builder() -> RuleConditionBuilder
pub fn builder() -> RuleConditionBuilder
Creates a new builder-style object to manufacture RuleCondition.
Trait Implementations§
source§impl Clone for RuleCondition
impl Clone for RuleCondition
source§fn clone(&self) -> RuleCondition
fn clone(&self) -> RuleCondition
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for RuleCondition
impl Debug for RuleCondition
source§impl PartialEq for RuleCondition
impl PartialEq for RuleCondition
source§fn eq(&self, other: &RuleCondition) -> bool
fn eq(&self, other: &RuleCondition) -> bool
self and other values to be equal, and is used
by ==.