#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct ValidationException {
pub message: ::std::string::String,
pub reason: crate::types::ValidationExceptionReason,
pub field_list: ::std::option::Option<::std::vec::Vec<crate::types::ValidationExceptionField>>,
pub(crate) meta: ::aws_smithy_types::error::ErrorMetadata,
}
impl ValidationException {
pub fn reason(&self) -> &crate::types::ValidationExceptionReason {
&self.reason
}
pub fn field_list(&self) -> &[crate::types::ValidationExceptionField] {
self.field_list.as_deref().unwrap_or_default()
}
}
impl ValidationException {
pub fn message(&self) -> &str {
&self.message
}
}
impl ::std::fmt::Display for ValidationException {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
::std::write!(f, "ValidationException")?;
{
::std::write!(f, ": {}", &self.message)?;
}
Ok(())
}
}
impl ::std::error::Error for ValidationException {}
impl ::aws_types::request_id::RequestId for crate::types::error::ValidationException {
fn request_id(&self) -> Option<&str> {
use ::aws_smithy_types::error::metadata::ProvideErrorMetadata;
self.meta().request_id()
}
}
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for ValidationException {
fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
&self.meta
}
}
impl ValidationException {
pub fn builder() -> crate::types::error::builders::ValidationExceptionBuilder {
crate::types::error::builders::ValidationExceptionBuilder::default()
}
}
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct ValidationExceptionBuilder {
pub(crate) message: ::std::option::Option<::std::string::String>,
pub(crate) reason: ::std::option::Option<crate::types::ValidationExceptionReason>,
pub(crate) field_list: ::std::option::Option<::std::vec::Vec<crate::types::ValidationExceptionField>>,
meta: std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
}
impl ValidationExceptionBuilder {
pub fn message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.message = ::std::option::Option::Some(input.into());
self
}
pub fn set_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.message = input;
self
}
pub fn get_message(&self) -> &::std::option::Option<::std::string::String> {
&self.message
}
pub fn reason(mut self, input: crate::types::ValidationExceptionReason) -> Self {
self.reason = ::std::option::Option::Some(input);
self
}
pub fn set_reason(mut self, input: ::std::option::Option<crate::types::ValidationExceptionReason>) -> Self {
self.reason = input;
self
}
pub fn get_reason(&self) -> &::std::option::Option<crate::types::ValidationExceptionReason> {
&self.reason
}
pub fn field_list(mut self, input: crate::types::ValidationExceptionField) -> Self {
let mut v = self.field_list.unwrap_or_default();
v.push(input);
self.field_list = ::std::option::Option::Some(v);
self
}
pub fn set_field_list(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ValidationExceptionField>>) -> Self {
self.field_list = input;
self
}
pub fn get_field_list(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ValidationExceptionField>> {
&self.field_list
}
pub fn meta(mut self, meta: ::aws_smithy_types::error::ErrorMetadata) -> Self {
self.meta = Some(meta);
self
}
pub fn set_meta(&mut self, meta: std::option::Option<::aws_smithy_types::error::ErrorMetadata>) -> &mut Self {
self.meta = meta;
self
}
pub fn build(self) -> ::std::result::Result<crate::types::error::ValidationException, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::types::error::ValidationException {
message: self.message.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"message",
"message was not specified but it is required when building ValidationException",
)
})?,
reason: self.reason.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"reason",
"reason was not specified but it is required when building ValidationException",
)
})?,
field_list: self.field_list,
meta: self.meta.unwrap_or_default(),
})
}
}