Class: AWSCDK::S3::CfnStorageLens::StorageLensConfigurationProperty

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

Overview

This is the property of the Amazon S3 Storage Lens configuration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(account_level:, id:, is_enabled:, aws_org: nil, data_export: nil, exclude: nil, expanded_prefixes_data_export: nil, include: nil, prefix_delimiter: nil, storage_lens_arn: nil) ⇒ StorageLensConfigurationProperty

Returns a new instance of StorageLensConfigurationProperty.

Parameters:



1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
# File 's3/cfn_storage_lens.rb', line 1356

def initialize(account_level:, id:, is_enabled:, aws_org: nil, data_export: nil, exclude: nil, expanded_prefixes_data_export: nil, include: nil, prefix_delimiter: nil, storage_lens_arn: nil)
  @account_level = .is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::AccountLevelProperty.new(**.transform_keys(&:to_sym)) : 
  Jsii::Type.check_type(@account_level, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BY2NvdW50TGV2ZWxQcm9wZXJ0eSJ9XX19")), "accountLevel")
  @id = id
  Jsii::Type.check_type(@id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id")
  @is_enabled = is_enabled
  Jsii::Type.check_type(@is_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "isEnabled")
  @aws_org = aws_org.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::AWSOrgProperty.new(**aws_org.transform_keys(&:to_sym)) : aws_org
  Jsii::Type.check_type(@aws_org, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5Bd3NPcmdQcm9wZXJ0eSJ9XX19")), "awsOrg") unless @aws_org.nil?
  @data_export = data_export.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::DataExportProperty.new(**data_export.transform_keys(&:to_sym)) : data_export
  Jsii::Type.check_type(@data_export, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5EYXRhRXhwb3J0UHJvcGVydHkifV19fQ==")), "dataExport") unless @data_export.nil?
  @exclude = exclude.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::BucketsAndRegionsProperty.new(**exclude.transform_keys(&:to_sym)) : exclude
  Jsii::Type.check_type(@exclude, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5CdWNrZXRzQW5kUmVnaW9uc1Byb3BlcnR5In1dfX0=")), "exclude") unless @exclude.nil?
  @expanded_prefixes_data_export = expanded_prefixes_data_export.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::StorageLensExpandedPrefixesDataExportProperty.new(**expanded_prefixes_data_export.transform_keys(&:to_sym)) : expanded_prefixes_data_export
  Jsii::Type.check_type(@expanded_prefixes_data_export, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5TdG9yYWdlTGVuc0V4cGFuZGVkUHJlZml4ZXNEYXRhRXhwb3J0UHJvcGVydHkifV19fQ==")), "expandedPrefixesDataExport") unless @expanded_prefixes_data_export.nil?
  @include = include.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::BucketsAndRegionsProperty.new(**include.transform_keys(&:to_sym)) : include
  Jsii::Type.check_type(@include, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5CdWNrZXRzQW5kUmVnaW9uc1Byb3BlcnR5In1dfX0=")), "include") unless @include.nil?
  @prefix_delimiter = prefix_delimiter
  Jsii::Type.check_type(@prefix_delimiter, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "prefixDelimiter") unless @prefix_delimiter.nil?
  @storage_lens_arn = storage_lens_arn
  Jsii::Type.check_type(@storage_lens_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "storageLensArn") unless @storage_lens_arn.nil?
end

Instance Attribute Details

#account_levelAWSCDK::IResolvable, AWSCDK::S3::CfnStorageLens::AccountLevelProperty (readonly)

This property contains the details of the account-level metrics for Amazon S3 Storage Lens configuration.



1383
1384
1385
# File 's3/cfn_storage_lens.rb', line 1383

def 
  @account_level
end

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

This property contains the details of the AWS Organization for the S3 Storage Lens configuration.



1398
1399
1400
# File 's3/cfn_storage_lens.rb', line 1398

def aws_org
  @aws_org
end

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

This property contains the details of this S3 Storage Lens configuration's metrics export.



1403
1404
1405
# File 's3/cfn_storage_lens.rb', line 1403

def data_export
  @data_export
end

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

This property contains the details of the bucket and or Regions excluded for Amazon S3 Storage Lens configuration.



1408
1409
1410
# File 's3/cfn_storage_lens.rb', line 1408

def exclude
  @exclude
end

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

This property configures your S3 Storage Lens expanded prefixes metrics report.



1413
1414
1415
# File 's3/cfn_storage_lens.rb', line 1413

def expanded_prefixes_data_export
  @expanded_prefixes_data_export
end

#idString (readonly)

This property contains the details of the ID of the S3 Storage Lens configuration.



1388
1389
1390
# File 's3/cfn_storage_lens.rb', line 1388

def id
  @id
end

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

This property contains the details of the bucket and or Regions included for Amazon S3 Storage Lens configuration.



1418
1419
1420
# File 's3/cfn_storage_lens.rb', line 1418

def include
  @include
end

#is_enabledBoolean, AWSCDK::IResolvable (readonly)

This property contains the details of whether the Amazon S3 Storage Lens configuration is enabled.



1393
1394
1395
# File 's3/cfn_storage_lens.rb', line 1393

def is_enabled
  @is_enabled
end

#prefix_delimiterString? (readonly)

The delimiter to divide S3 key into hierarchy of prefixes.



1423
1424
1425
# File 's3/cfn_storage_lens.rb', line 1423

def prefix_delimiter
  @prefix_delimiter
end

#storage_lens_arnString? (readonly)

This property contains the details of the ARN of the S3 Storage Lens configuration.

This property is read-only.



1430
1431
1432
# File 's3/cfn_storage_lens.rb', line 1430

def storage_lens_arn
  @storage_lens_arn
end

Class Method Details

.jsii_propertiesObject



1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 's3/cfn_storage_lens.rb', line 1432

def self.jsii_properties
  {
    :account_level => "accountLevel",
    :id => "id",
    :is_enabled => "isEnabled",
    :aws_org => "awsOrg",
    :data_export => "dataExport",
    :exclude => "exclude",
    :expanded_prefixes_data_export => "expandedPrefixesDataExport",
    :include => "include",
    :prefix_delimiter => "prefixDelimiter",
    :storage_lens_arn => "storageLensArn",
  }
end

Instance Method Details

#to_jsiiObject



1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
# File 's3/cfn_storage_lens.rb', line 1447

def to_jsii
  result = {}
  result.merge!({
    "accountLevel" => @account_level,
    "id" => @id,
    "isEnabled" => @is_enabled,
    "awsOrg" => @aws_org,
    "dataExport" => @data_export,
    "exclude" => @exclude,
    "expandedPrefixesDataExport" => @expanded_prefixes_data_export,
    "include" => @include,
    "prefixDelimiter" => @prefix_delimiter,
    "storageLensArn" => @storage_lens_arn,
  })
  result.compact
end