Class: AWSCDK::S3::CfnBucket::AnalyticsConfigurationProperty

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

Overview

Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(id:, storage_class_analysis:, prefix: nil, tag_filters: nil) ⇒ AnalyticsConfigurationProperty

Returns a new instance of AnalyticsConfigurationProperty.

Parameters:



1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
# File 's3/cfn_bucket.rb', line 1101

def initialize(id:, storage_class_analysis:, prefix: nil, tag_filters: nil)
  @id = id
  Jsii::Type.check_type(@id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id")
  @storage_class_analysis = storage_class_analysis.is_a?(Hash) ? ::AWSCDK::S3::CfnBucket::StorageClassAnalysisProperty.new(**storage_class_analysis.transform_keys(&:to_sym)) : storage_class_analysis
  Jsii::Type.check_type(@storage_class_analysis, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5CdWNrZXQuU3RvcmFnZUNsYXNzQW5hbHlzaXNQcm9wZXJ0eSJ9XX19")), "storageClassAnalysis")
  @prefix = prefix
  Jsii::Type.check_type(@prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "prefix") unless @prefix.nil?
  @tag_filters = tag_filters
  Jsii::Type.check_type(@tag_filters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfczMuQ2ZuQnVja2V0LlRhZ0ZpbHRlclByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "tagFilters") unless @tag_filters.nil?
end

Instance Attribute Details

#idString (readonly)

The ID that identifies the analytics configuration.



1116
1117
1118
# File 's3/cfn_bucket.rb', line 1116

def id
  @id
end

#prefixString? (readonly)

The prefix that an object must have to be included in the analytics results.



1126
1127
1128
# File 's3/cfn_bucket.rb', line 1126

def prefix
  @prefix
end

#storage_class_analysisAWSCDK::IResolvable, AWSCDK::S3::CfnBucket::StorageClassAnalysisProperty (readonly)

Contains data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes.



1121
1122
1123
# File 's3/cfn_bucket.rb', line 1121

def storage_class_analysis
  @storage_class_analysis
end

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

The tags to use when evaluating an analytics filter.

The analytics only includes objects that meet the filter's criteria. If no filter is specified, all of the contents of the bucket are included in the analysis.



1133
1134
1135
# File 's3/cfn_bucket.rb', line 1133

def tag_filters
  @tag_filters
end

Class Method Details

.jsii_propertiesObject



1135
1136
1137
1138
1139
1140
1141
1142
# File 's3/cfn_bucket.rb', line 1135

def self.jsii_properties
  {
    :id => "id",
    :storage_class_analysis => "storageClassAnalysis",
    :prefix => "prefix",
    :tag_filters => "tagFilters",
  }
end

Instance Method Details

#to_jsiiObject



1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
# File 's3/cfn_bucket.rb', line 1144

def to_jsii
  result = {}
  result.merge!({
    "id" => @id,
    "storageClassAnalysis" => @storage_class_analysis,
    "prefix" => @prefix,
    "tagFilters" => @tag_filters,
  })
  result.compact
end