#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct LifecyclePolicy {
pub policy_id: ::std::option::Option<::std::string::String>,
pub description: ::std::option::Option<::std::string::String>,
pub state: ::std::option::Option<crate::types::GettablePolicyStateValues>,
pub status_message: ::std::option::Option<::std::string::String>,
pub execution_role_arn: ::std::option::Option<::std::string::String>,
pub date_created: ::std::option::Option<::aws_smithy_types::DateTime>,
pub date_modified: ::std::option::Option<::aws_smithy_types::DateTime>,
pub policy_details: ::std::option::Option<crate::types::PolicyDetails>,
pub tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
pub policy_arn: ::std::option::Option<::std::string::String>,
pub default_policy: ::std::option::Option<bool>,
}
impl LifecyclePolicy {
pub fn policy_id(&self) -> ::std::option::Option<&str> {
self.policy_id.as_deref()
}
pub fn description(&self) -> ::std::option::Option<&str> {
self.description.as_deref()
}
pub fn state(&self) -> ::std::option::Option<&crate::types::GettablePolicyStateValues> {
self.state.as_ref()
}
pub fn status_message(&self) -> ::std::option::Option<&str> {
self.status_message.as_deref()
}
pub fn execution_role_arn(&self) -> ::std::option::Option<&str> {
self.execution_role_arn.as_deref()
}
pub fn date_created(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.date_created.as_ref()
}
pub fn date_modified(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.date_modified.as_ref()
}
pub fn policy_details(&self) -> ::std::option::Option<&crate::types::PolicyDetails> {
self.policy_details.as_ref()
}
pub fn tags(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
self.tags.as_ref()
}
pub fn policy_arn(&self) -> ::std::option::Option<&str> {
self.policy_arn.as_deref()
}
pub fn default_policy(&self) -> ::std::option::Option<bool> {
self.default_policy
}
}
impl LifecyclePolicy {
pub fn builder() -> crate::types::builders::LifecyclePolicyBuilder {
crate::types::builders::LifecyclePolicyBuilder::default()
}
}
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct LifecyclePolicyBuilder {
pub(crate) policy_id: ::std::option::Option<::std::string::String>,
pub(crate) description: ::std::option::Option<::std::string::String>,
pub(crate) state: ::std::option::Option<crate::types::GettablePolicyStateValues>,
pub(crate) status_message: ::std::option::Option<::std::string::String>,
pub(crate) execution_role_arn: ::std::option::Option<::std::string::String>,
pub(crate) date_created: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) date_modified: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) policy_details: ::std::option::Option<crate::types::PolicyDetails>,
pub(crate) tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
pub(crate) policy_arn: ::std::option::Option<::std::string::String>,
pub(crate) default_policy: ::std::option::Option<bool>,
}
impl LifecyclePolicyBuilder {
pub fn policy_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.policy_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_policy_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.policy_id = input;
self
}
pub fn get_policy_id(&self) -> &::std::option::Option<::std::string::String> {
&self.policy_id
}
pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.description = ::std::option::Option::Some(input.into());
self
}
pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.description = input;
self
}
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
&self.description
}
pub fn state(mut self, input: crate::types::GettablePolicyStateValues) -> Self {
self.state = ::std::option::Option::Some(input);
self
}
pub fn set_state(mut self, input: ::std::option::Option<crate::types::GettablePolicyStateValues>) -> Self {
self.state = input;
self
}
pub fn get_state(&self) -> &::std::option::Option<crate::types::GettablePolicyStateValues> {
&self.state
}
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 execution_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.execution_role_arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_execution_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.execution_role_arn = input;
self
}
pub fn get_execution_role_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.execution_role_arn
}
pub fn date_created(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.date_created = ::std::option::Option::Some(input);
self
}
pub fn set_date_created(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.date_created = input;
self
}
pub fn get_date_created(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.date_created
}
pub fn date_modified(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.date_modified = ::std::option::Option::Some(input);
self
}
pub fn set_date_modified(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.date_modified = input;
self
}
pub fn get_date_modified(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.date_modified
}
pub fn policy_details(mut self, input: crate::types::PolicyDetails) -> Self {
self.policy_details = ::std::option::Option::Some(input);
self
}
pub fn set_policy_details(mut self, input: ::std::option::Option<crate::types::PolicyDetails>) -> Self {
self.policy_details = input;
self
}
pub fn get_policy_details(&self) -> &::std::option::Option<crate::types::PolicyDetails> {
&self.policy_details
}
pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut hash_map = self.tags.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.tags = ::std::option::Option::Some(hash_map);
self
}
pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
self.tags = input;
self
}
pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
&self.tags
}
pub fn policy_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.policy_arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_policy_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.policy_arn = input;
self
}
pub fn get_policy_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.policy_arn
}
pub fn default_policy(mut self, input: bool) -> Self {
self.default_policy = ::std::option::Option::Some(input);
self
}
pub fn set_default_policy(mut self, input: ::std::option::Option<bool>) -> Self {
self.default_policy = input;
self
}
pub fn get_default_policy(&self) -> &::std::option::Option<bool> {
&self.default_policy
}
pub fn build(self) -> crate::types::LifecyclePolicy {
crate::types::LifecyclePolicy {
policy_id: self.policy_id,
description: self.description,
state: self.state,
status_message: self.status_message,
execution_role_arn: self.execution_role_arn,
date_created: self.date_created,
date_modified: self.date_modified,
policy_details: self.policy_details,
tags: self.tags,
policy_arn: self.policy_arn,
default_policy: self.default_policy,
}
}
}