#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Operation {
pub id: ::std::option::Option<::std::string::String>,
pub r#type: ::std::option::Option<::std::string::String>,
pub status: ::std::option::Option<crate::types::OperationStatus>,
pub status_message: ::std::option::Option<::std::string::String>,
pub properties: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::option::Option<::std::string::String>>>,
pub resource_type: ::std::option::Option<::std::string::String>,
pub resource_id: ::std::option::Option<::std::string::String>,
pub resource_arn: ::std::option::Option<::std::string::String>,
pub start_time: ::std::option::Option<::aws_smithy_types::DateTime>,
pub end_time: ::std::option::Option<::aws_smithy_types::DateTime>,
pub last_updated_time: ::std::option::Option<::aws_smithy_types::DateTime>,
}
impl Operation {
pub fn id(&self) -> ::std::option::Option<&str> {
self.id.as_deref()
}
pub fn r#type(&self) -> ::std::option::Option<&str> {
self.r#type.as_deref()
}
pub fn status(&self) -> ::std::option::Option<&crate::types::OperationStatus> {
self.status.as_ref()
}
pub fn status_message(&self) -> ::std::option::Option<&str> {
self.status_message.as_deref()
}
pub fn properties(
&self,
) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::option::Option<::std::string::String>>> {
self.properties.as_ref()
}
pub fn resource_type(&self) -> ::std::option::Option<&str> {
self.resource_type.as_deref()
}
pub fn resource_id(&self) -> ::std::option::Option<&str> {
self.resource_id.as_deref()
}
pub fn resource_arn(&self) -> ::std::option::Option<&str> {
self.resource_arn.as_deref()
}
pub fn start_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.start_time.as_ref()
}
pub fn end_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.end_time.as_ref()
}
pub fn last_updated_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.last_updated_time.as_ref()
}
}
impl Operation {
pub fn builder() -> crate::types::builders::OperationBuilder {
crate::types::builders::OperationBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct OperationBuilder {
pub(crate) id: ::std::option::Option<::std::string::String>,
pub(crate) r#type: ::std::option::Option<::std::string::String>,
pub(crate) status: ::std::option::Option<crate::types::OperationStatus>,
pub(crate) status_message: ::std::option::Option<::std::string::String>,
pub(crate) properties: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::option::Option<::std::string::String>>>,
pub(crate) resource_type: ::std::option::Option<::std::string::String>,
pub(crate) resource_id: ::std::option::Option<::std::string::String>,
pub(crate) resource_arn: ::std::option::Option<::std::string::String>,
pub(crate) start_time: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) end_time: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) last_updated_time: ::std::option::Option<::aws_smithy_types::DateTime>,
}
impl OperationBuilder {
pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.id = ::std::option::Option::Some(input.into());
self
}
pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.id = input;
self
}
pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
&self.id
}
pub fn r#type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.r#type = ::std::option::Option::Some(input.into());
self
}
pub fn set_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.r#type = input;
self
}
pub fn get_type(&self) -> &::std::option::Option<::std::string::String> {
&self.r#type
}
pub fn status(mut self, input: crate::types::OperationStatus) -> Self {
self.status = ::std::option::Option::Some(input);
self
}
pub fn set_status(mut self, input: ::std::option::Option<crate::types::OperationStatus>) -> Self {
self.status = input;
self
}
pub fn get_status(&self) -> &::std::option::Option<crate::types::OperationStatus> {
&self.status
}
pub fn status_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.status_message = ::std::option::Option::Some(input.into());
self
}
pub fn set_status_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.status_message = input;
self
}
pub fn get_status_message(&self) -> &::std::option::Option<::std::string::String> {
&self.status_message
}
pub fn properties(mut self, k: impl ::std::convert::Into<::std::string::String>, v: ::std::option::Option<::std::string::String>) -> Self {
let mut hash_map = self.properties.unwrap_or_default();
hash_map.insert(k.into(), v);
self.properties = ::std::option::Option::Some(hash_map);
self
}
pub fn set_properties(
mut self,
input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::option::Option<::std::string::String>>>,
) -> Self {
self.properties = input;
self
}
pub fn get_properties(
&self,
) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::option::Option<::std::string::String>>> {
&self.properties
}
pub fn resource_type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.resource_type = ::std::option::Option::Some(input.into());
self
}
pub fn set_resource_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.resource_type = input;
self
}
pub fn get_resource_type(&self) -> &::std::option::Option<::std::string::String> {
&self.resource_type
}
pub fn resource_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.resource_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_resource_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.resource_id = input;
self
}
pub fn get_resource_id(&self) -> &::std::option::Option<::std::string::String> {
&self.resource_id
}
pub fn resource_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.resource_arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_resource_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.resource_arn = input;
self
}
pub fn get_resource_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.resource_arn
}
pub fn start_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.start_time = ::std::option::Option::Some(input);
self
}
pub fn set_start_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.start_time = input;
self
}
pub fn get_start_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.start_time
}
pub fn end_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.end_time = ::std::option::Option::Some(input);
self
}
pub fn set_end_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.end_time = input;
self
}
pub fn get_end_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.end_time
}
pub fn last_updated_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.last_updated_time = ::std::option::Option::Some(input);
self
}
pub fn set_last_updated_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.last_updated_time = input;
self
}
pub fn get_last_updated_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.last_updated_time
}
pub fn build(self) -> crate::types::Operation {
crate::types::Operation {
id: self.id,
r#type: self.r#type,
status: self.status,
status_message: self.status_message,
properties: self.properties,
resource_type: self.resource_type,
resource_id: self.resource_id,
resource_arn: self.resource_arn,
start_time: self.start_time,
end_time: self.end_time,
last_updated_time: self.last_updated_time,
}
}
}