#[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
.
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
sourceimpl 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
.
sourceimpl RuleCondition
impl RuleCondition
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture RuleCondition
Trait Implementations
sourceimpl Clone for RuleCondition
impl Clone for RuleCondition
sourcefn clone(&self) -> RuleCondition
fn clone(&self) -> RuleCondition
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for RuleCondition
impl Debug for RuleCondition
sourceimpl PartialEq<RuleCondition> for RuleCondition
impl PartialEq<RuleCondition> for RuleCondition
sourcefn eq(&self, other: &RuleCondition) -> bool
fn eq(&self, other: &RuleCondition) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &RuleCondition) -> bool
fn ne(&self, other: &RuleCondition) -> bool
This method tests for !=
.
impl StructuralPartialEq for RuleCondition
Auto Trait Implementations
impl RefUnwindSafe for RuleCondition
impl Send for RuleCondition
impl Sync for RuleCondition
impl Unpin for RuleCondition
impl UnwindSafe for RuleCondition
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more