#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct AccountLevel {
pub activity_metrics: ::std::option::Option<crate::types::ActivityMetrics>,
pub bucket_level: ::std::option::Option<crate::types::BucketLevel>,
pub advanced_cost_optimization_metrics: ::std::option::Option<crate::types::AdvancedCostOptimizationMetrics>,
pub advanced_data_protection_metrics: ::std::option::Option<crate::types::AdvancedDataProtectionMetrics>,
pub detailed_status_codes_metrics: ::std::option::Option<crate::types::DetailedStatusCodesMetrics>,
pub storage_lens_group_level: ::std::option::Option<crate::types::StorageLensGroupLevel>,
}
impl AccountLevel {
pub fn activity_metrics(&self) -> ::std::option::Option<&crate::types::ActivityMetrics> {
self.activity_metrics.as_ref()
}
pub fn bucket_level(&self) -> ::std::option::Option<&crate::types::BucketLevel> {
self.bucket_level.as_ref()
}
pub fn advanced_cost_optimization_metrics(&self) -> ::std::option::Option<&crate::types::AdvancedCostOptimizationMetrics> {
self.advanced_cost_optimization_metrics.as_ref()
}
pub fn advanced_data_protection_metrics(&self) -> ::std::option::Option<&crate::types::AdvancedDataProtectionMetrics> {
self.advanced_data_protection_metrics.as_ref()
}
pub fn detailed_status_codes_metrics(&self) -> ::std::option::Option<&crate::types::DetailedStatusCodesMetrics> {
self.detailed_status_codes_metrics.as_ref()
}
pub fn storage_lens_group_level(&self) -> ::std::option::Option<&crate::types::StorageLensGroupLevel> {
self.storage_lens_group_level.as_ref()
}
}
impl AccountLevel {
pub fn builder() -> crate::types::builders::AccountLevelBuilder {
crate::types::builders::AccountLevelBuilder::default()
}
}
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct AccountLevelBuilder {
pub(crate) activity_metrics: ::std::option::Option<crate::types::ActivityMetrics>,
pub(crate) bucket_level: ::std::option::Option<crate::types::BucketLevel>,
pub(crate) advanced_cost_optimization_metrics: ::std::option::Option<crate::types::AdvancedCostOptimizationMetrics>,
pub(crate) advanced_data_protection_metrics: ::std::option::Option<crate::types::AdvancedDataProtectionMetrics>,
pub(crate) detailed_status_codes_metrics: ::std::option::Option<crate::types::DetailedStatusCodesMetrics>,
pub(crate) storage_lens_group_level: ::std::option::Option<crate::types::StorageLensGroupLevel>,
}
impl AccountLevelBuilder {
pub fn activity_metrics(mut self, input: crate::types::ActivityMetrics) -> Self {
self.activity_metrics = ::std::option::Option::Some(input);
self
}
pub fn set_activity_metrics(mut self, input: ::std::option::Option<crate::types::ActivityMetrics>) -> Self {
self.activity_metrics = input;
self
}
pub fn get_activity_metrics(&self) -> &::std::option::Option<crate::types::ActivityMetrics> {
&self.activity_metrics
}
pub fn bucket_level(mut self, input: crate::types::BucketLevel) -> Self {
self.bucket_level = ::std::option::Option::Some(input);
self
}
pub fn set_bucket_level(mut self, input: ::std::option::Option<crate::types::BucketLevel>) -> Self {
self.bucket_level = input;
self
}
pub fn get_bucket_level(&self) -> &::std::option::Option<crate::types::BucketLevel> {
&self.bucket_level
}
pub fn advanced_cost_optimization_metrics(mut self, input: crate::types::AdvancedCostOptimizationMetrics) -> Self {
self.advanced_cost_optimization_metrics = ::std::option::Option::Some(input);
self
}
pub fn set_advanced_cost_optimization_metrics(mut self, input: ::std::option::Option<crate::types::AdvancedCostOptimizationMetrics>) -> Self {
self.advanced_cost_optimization_metrics = input;
self
}
pub fn get_advanced_cost_optimization_metrics(&self) -> &::std::option::Option<crate::types::AdvancedCostOptimizationMetrics> {
&self.advanced_cost_optimization_metrics
}
pub fn advanced_data_protection_metrics(mut self, input: crate::types::AdvancedDataProtectionMetrics) -> Self {
self.advanced_data_protection_metrics = ::std::option::Option::Some(input);
self
}
pub fn set_advanced_data_protection_metrics(mut self, input: ::std::option::Option<crate::types::AdvancedDataProtectionMetrics>) -> Self {
self.advanced_data_protection_metrics = input;
self
}
pub fn get_advanced_data_protection_metrics(&self) -> &::std::option::Option<crate::types::AdvancedDataProtectionMetrics> {
&self.advanced_data_protection_metrics
}
pub fn detailed_status_codes_metrics(mut self, input: crate::types::DetailedStatusCodesMetrics) -> Self {
self.detailed_status_codes_metrics = ::std::option::Option::Some(input);
self
}
pub fn set_detailed_status_codes_metrics(mut self, input: ::std::option::Option<crate::types::DetailedStatusCodesMetrics>) -> Self {
self.detailed_status_codes_metrics = input;
self
}
pub fn get_detailed_status_codes_metrics(&self) -> &::std::option::Option<crate::types::DetailedStatusCodesMetrics> {
&self.detailed_status_codes_metrics
}
pub fn storage_lens_group_level(mut self, input: crate::types::StorageLensGroupLevel) -> Self {
self.storage_lens_group_level = ::std::option::Option::Some(input);
self
}
pub fn set_storage_lens_group_level(mut self, input: ::std::option::Option<crate::types::StorageLensGroupLevel>) -> Self {
self.storage_lens_group_level = input;
self
}
pub fn get_storage_lens_group_level(&self) -> &::std::option::Option<crate::types::StorageLensGroupLevel> {
&self.storage_lens_group_level
}
pub fn build(self) -> crate::types::AccountLevel {
crate::types::AccountLevel {
activity_metrics: self.activity_metrics,
bucket_level: self.bucket_level,
advanced_cost_optimization_metrics: self.advanced_cost_optimization_metrics,
advanced_data_protection_metrics: self.advanced_data_protection_metrics,
detailed_status_codes_metrics: self.detailed_status_codes_metrics,
storage_lens_group_level: self.storage_lens_group_level,
}
}
}