Class: AWSCDK::S3::CfnStorageLens::BucketLevelProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
s3/cfn_storage_lens.rb

Overview

A property for the bucket-level storage metrics for Amazon S3 Storage Lens.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(activity_metrics: nil, advanced_cost_optimization_metrics: nil, advanced_data_protection_metrics: nil, advanced_performance_metrics: nil, detailed_status_codes_metrics: nil, prefix_level: nil) ⇒ BucketLevelProperty

Returns a new instance of BucketLevelProperty.

Parameters:



805
806
807
808
809
810
811
812
813
814
815
816
817
818
# File 's3/cfn_storage_lens.rb', line 805

def initialize(activity_metrics: nil, advanced_cost_optimization_metrics: nil, advanced_data_protection_metrics: nil, advanced_performance_metrics: nil, detailed_status_codes_metrics: nil, prefix_level: nil)
  @activity_metrics = activity_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::ActivityMetricsProperty.new(**activity_metrics.transform_keys(&:to_sym)) : activity_metrics
  Jsii::Type.check_type(@activity_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BY3Rpdml0eU1ldHJpY3NQcm9wZXJ0eSJ9XX19")), "activityMetrics") unless @activity_metrics.nil?
  @advanced_cost_optimization_metrics = advanced_cost_optimization_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::AdvancedCostOptimizationMetricsProperty.new(**advanced_cost_optimization_metrics.transform_keys(&:to_sym)) : advanced_cost_optimization_metrics
  Jsii::Type.check_type(@advanced_cost_optimization_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BZHZhbmNlZENvc3RPcHRpbWl6YXRpb25NZXRyaWNzUHJvcGVydHkifV19fQ==")), "advancedCostOptimizationMetrics") unless @advanced_cost_optimization_metrics.nil?
  @advanced_data_protection_metrics = advanced_data_protection_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::AdvancedDataProtectionMetricsProperty.new(**advanced_data_protection_metrics.transform_keys(&:to_sym)) : advanced_data_protection_metrics
  Jsii::Type.check_type(@advanced_data_protection_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BZHZhbmNlZERhdGFQcm90ZWN0aW9uTWV0cmljc1Byb3BlcnR5In1dfX0=")), "advancedDataProtectionMetrics") unless @advanced_data_protection_metrics.nil?
  @advanced_performance_metrics = advanced_performance_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::AdvancedPerformanceMetricsProperty.new(**advanced_performance_metrics.transform_keys(&:to_sym)) : advanced_performance_metrics
  Jsii::Type.check_type(@advanced_performance_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BZHZhbmNlZFBlcmZvcm1hbmNlTWV0cmljc1Byb3BlcnR5In1dfX0=")), "advancedPerformanceMetrics") unless @advanced_performance_metrics.nil?
  @detailed_status_codes_metrics = detailed_status_codes_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::DetailedStatusCodesMetricsProperty.new(**detailed_status_codes_metrics.transform_keys(&:to_sym)) : detailed_status_codes_metrics
  Jsii::Type.check_type(@detailed_status_codes_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5EZXRhaWxlZFN0YXR1c0NvZGVzTWV0cmljc1Byb3BlcnR5In1dfX0=")), "detailedStatusCodesMetrics") unless @detailed_status_codes_metrics.nil?
  @prefix_level = prefix_level.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::PrefixLevelProperty.new(**prefix_level.transform_keys(&:to_sym)) : prefix_level
  Jsii::Type.check_type(@prefix_level, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5QcmVmaXhMZXZlbFByb3BlcnR5In1dfX0=")), "prefixLevel") unless @prefix_level.nil?
end

Instance Attribute Details

#activity_metricsAWSCDK::IResolvable, ... (readonly)

A property for bucket-level activity metrics for S3 Storage Lens.



824
825
826
# File 's3/cfn_storage_lens.rb', line 824

def activity_metrics
  @activity_metrics
end

#advanced_cost_optimization_metricsAWSCDK::IResolvable, ... (readonly)

A property for bucket-level advanced cost optimization metrics for S3 Storage Lens.



829
830
831
# File 's3/cfn_storage_lens.rb', line 829

def advanced_cost_optimization_metrics
  @advanced_cost_optimization_metrics
end

#advanced_data_protection_metricsAWSCDK::IResolvable, ... (readonly)

A property for bucket-level advanced data protection metrics for S3 Storage Lens.



834
835
836
# File 's3/cfn_storage_lens.rb', line 834

def advanced_data_protection_metrics
  @advanced_data_protection_metrics
end

#advanced_performance_metricsAWSCDK::IResolvable, ... (readonly)

A property for bucket-level advanced performance metrics for S3 Storage Lens.



839
840
841
# File 's3/cfn_storage_lens.rb', line 839

def advanced_performance_metrics
  @advanced_performance_metrics
end

#detailed_status_codes_metricsAWSCDK::IResolvable, ... (readonly)

A property for bucket-level detailed status code metrics for S3 Storage Lens.



844
845
846
# File 's3/cfn_storage_lens.rb', line 844

def detailed_status_codes_metrics
  @detailed_status_codes_metrics
end

#prefix_levelAWSCDK::IResolvable, ... (readonly)

A property for bucket-level prefix-level storage metrics for S3 Storage Lens.



849
850
851
# File 's3/cfn_storage_lens.rb', line 849

def prefix_level
  @prefix_level
end

Class Method Details

.jsii_propertiesObject



851
852
853
854
855
856
857
858
859
860
# File 's3/cfn_storage_lens.rb', line 851

def self.jsii_properties
  {
    :activity_metrics => "activityMetrics",
    :advanced_cost_optimization_metrics => "advancedCostOptimizationMetrics",
    :advanced_data_protection_metrics => "advancedDataProtectionMetrics",
    :advanced_performance_metrics => "advancedPerformanceMetrics",
    :detailed_status_codes_metrics => "detailedStatusCodesMetrics",
    :prefix_level => "prefixLevel",
  }
end

Instance Method Details

#to_jsiiObject



862
863
864
865
866
867
868
869
870
871
872
873
# File 's3/cfn_storage_lens.rb', line 862

def to_jsii
  result = {}
  result.merge!({
    "activityMetrics" => @activity_metrics,
    "advancedCostOptimizationMetrics" => @advanced_cost_optimization_metrics,
    "advancedDataProtectionMetrics" => @advanced_data_protection_metrics,
    "advancedPerformanceMetrics" => @advanced_performance_metrics,
    "detailedStatusCodesMetrics" => @detailed_status_codes_metrics,
    "prefixLevel" => @prefix_level,
  })
  result.compact
end