Struct aws_sdk_cloudwatch::error::PutInsightRuleError
source · #[non_exhaustive]pub struct PutInsightRuleError {
pub kind: PutInsightRuleErrorKind,
/* private fields */
}Expand description
Error type for the PutInsightRule operation.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.kind: PutInsightRuleErrorKindKind of error that occurred.
Implementations§
source§impl PutInsightRuleError
impl PutInsightRuleError
sourcepub fn new(kind: PutInsightRuleErrorKind, meta: Error) -> Self
pub fn new(kind: PutInsightRuleErrorKind, meta: Error) -> Self
Creates a new PutInsightRuleError.
sourcepub fn unhandled(err: impl Into<Box<dyn Error + Send + Sync + 'static>>) -> Self
pub fn unhandled(err: impl Into<Box<dyn Error + Send + Sync + 'static>>) -> Self
Creates the PutInsightRuleError::Unhandled variant from any error type.
Examples found in repository?
src/operation_deser.rs (line 2141)
2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201
pub fn parse_put_insight_rule_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<crate::output::PutInsightRuleOutput, crate::error::PutInsightRuleError> {
let generic = crate::xml_deser::parse_http_generic_error(response)
.map_err(crate::error::PutInsightRuleError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => return Err(crate::error::PutInsightRuleError::unhandled(generic)),
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"InvalidParameterValue" => crate::error::PutInsightRuleError {
meta: generic,
kind: crate::error::PutInsightRuleErrorKind::InvalidParameterValueException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::invalid_parameter_value_exception::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_invalid_parameter_value_exception_xml_err(response.body().as_ref(), output).map_err(crate::error::PutInsightRuleError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"LimitExceededException" => crate::error::PutInsightRuleError {
meta: generic,
kind: crate::error::PutInsightRuleErrorKind::LimitExceededException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::limit_exceeded_exception::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_limit_exceeded_exception_xml_err(response.body().as_ref(), output).map_err(crate::error::PutInsightRuleError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"MissingParameter" => crate::error::PutInsightRuleError {
meta: generic,
kind: crate::error::PutInsightRuleErrorKind::MissingRequiredParameterException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::missing_required_parameter_exception::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_missing_required_parameter_exception_xml_err(response.body().as_ref(), output).map_err(crate::error::PutInsightRuleError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::PutInsightRuleError::generic(generic),
})
}sourcepub fn generic(err: Error) -> Self
pub fn generic(err: Error) -> Self
Creates the PutInsightRuleError::Unhandled variant from a aws_smithy_types::Error.
Examples found in repository?
src/operation_deser.rs (line 2199)
2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201
pub fn parse_put_insight_rule_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<crate::output::PutInsightRuleOutput, crate::error::PutInsightRuleError> {
let generic = crate::xml_deser::parse_http_generic_error(response)
.map_err(crate::error::PutInsightRuleError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => return Err(crate::error::PutInsightRuleError::unhandled(generic)),
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"InvalidParameterValue" => crate::error::PutInsightRuleError {
meta: generic,
kind: crate::error::PutInsightRuleErrorKind::InvalidParameterValueException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::invalid_parameter_value_exception::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_invalid_parameter_value_exception_xml_err(response.body().as_ref(), output).map_err(crate::error::PutInsightRuleError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"LimitExceededException" => crate::error::PutInsightRuleError {
meta: generic,
kind: crate::error::PutInsightRuleErrorKind::LimitExceededException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::limit_exceeded_exception::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_limit_exceeded_exception_xml_err(response.body().as_ref(), output).map_err(crate::error::PutInsightRuleError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"MissingParameter" => crate::error::PutInsightRuleError {
meta: generic,
kind: crate::error::PutInsightRuleErrorKind::MissingRequiredParameterException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::missing_required_parameter_exception::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_missing_required_parameter_exception_xml_err(response.body().as_ref(), output).map_err(crate::error::PutInsightRuleError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::PutInsightRuleError::generic(generic),
})
}sourcepub fn meta(&self) -> &Error
pub fn meta(&self) -> &Error
Returns error metadata, which includes the error code, message, request ID, and potentially additional information.
sourcepub fn request_id(&self) -> Option<&str>
pub fn request_id(&self) -> Option<&str>
Returns the request ID if it’s available.
sourcepub fn is_invalid_parameter_value_exception(&self) -> bool
pub fn is_invalid_parameter_value_exception(&self) -> bool
Returns true if the error kind is PutInsightRuleErrorKind::InvalidParameterValueException.
sourcepub fn is_limit_exceeded_exception(&self) -> bool
pub fn is_limit_exceeded_exception(&self) -> bool
Returns true if the error kind is PutInsightRuleErrorKind::LimitExceededException.
sourcepub fn is_missing_required_parameter_exception(&self) -> bool
pub fn is_missing_required_parameter_exception(&self) -> bool
Returns true if the error kind is PutInsightRuleErrorKind::MissingRequiredParameterException.
Trait Implementations§
source§impl Debug for PutInsightRuleError
impl Debug for PutInsightRuleError
source§impl Display for PutInsightRuleError
impl Display for PutInsightRuleError
source§impl Error for PutInsightRuleError
impl Error for PutInsightRuleError
source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
source§impl From<PutInsightRuleError> for Error
impl From<PutInsightRuleError> for Error
source§fn from(err: PutInsightRuleError) -> Self
fn from(err: PutInsightRuleError) -> Self
Converts to this type from the input type.