Class: AWSCDK::S3::CfnStorageLensGroup::AndProperty

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

Overview

This resource is a logical operator that allows multiple filter conditions to be joined for more complex comparisons of Storage Lens group data.

Objects must match all of the listed filter conditions that are joined by the And logical operator. Only one of each filter condition is allowed.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(match_any_prefix: nil, match_any_suffix: nil, match_any_tag: nil, match_object_age: nil, match_object_size: nil) ⇒ AndProperty

Returns a new instance of AndProperty.

Parameters:



552
553
554
555
556
557
558
559
560
561
562
563
# File 's3/cfn_storage_lens_group.rb', line 552

def initialize(match_any_prefix: nil, match_any_suffix: nil, match_any_tag: nil, match_object_age: nil, match_object_size: nil)
  @match_any_prefix = match_any_prefix
  Jsii::Type.check_type(@match_any_prefix, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "matchAnyPrefix") unless @match_any_prefix.nil?
  @match_any_suffix = match_any_suffix
  Jsii::Type.check_type(@match_any_suffix, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "matchAnySuffix") unless @match_any_suffix.nil?
  @match_any_tag = match_any_tag
  Jsii::Type.check_type(@match_any_tag, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5UYWcifV19fSwia2luZCI6ImFycmF5In19XX19")), "matchAnyTag") unless @match_any_tag.nil?
  @match_object_age = match_object_age.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLensGroup::MatchObjectAgeProperty.new(**match_object_age.transform_keys(&:to_sym)) : match_object_age
  Jsii::Type.check_type(@match_object_age, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVuc0dyb3VwLk1hdGNoT2JqZWN0QWdlUHJvcGVydHkifV19fQ==")), "matchObjectAge") unless @match_object_age.nil?
  @match_object_size = match_object_size.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLensGroup::MatchObjectSizeProperty.new(**match_object_size.transform_keys(&:to_sym)) : match_object_size
  Jsii::Type.check_type(@match_object_size, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVuc0dyb3VwLk1hdGNoT2JqZWN0U2l6ZVByb3BlcnR5In1dfX0=")), "matchObjectSize") unless @match_object_size.nil?
end

Instance Attribute Details

#match_any_prefixArray<String>? (readonly)

This property contains a list of prefixes.

At least one prefix must be specified. Up to 10 prefixes are allowed.



571
572
573
# File 's3/cfn_storage_lens_group.rb', line 571

def match_any_prefix
  @match_any_prefix
end

#match_any_suffixArray<String>? (readonly)

This property contains a list of suffixes.

At least one suffix must be specified. Up to 10 suffixes are allowed.



578
579
580
# File 's3/cfn_storage_lens_group.rb', line 578

def match_any_suffix
  @match_any_suffix
end

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

This property contains the list of object tags.

At least one object tag must be specified. Up to 10 object tags are allowed.



585
586
587
# File 's3/cfn_storage_lens_group.rb', line 585

def match_any_tag
  @match_any_tag
end

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

This property contains DaysGreaterThan and DaysLessThan properties to define the object age range (minimum and maximum number of days).



590
591
592
# File 's3/cfn_storage_lens_group.rb', line 590

def match_object_age
  @match_object_age
end

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

This property contains BytesGreaterThan and BytesLessThan to define the object size range (minimum and maximum number of Bytes).



595
596
597
# File 's3/cfn_storage_lens_group.rb', line 595

def match_object_size
  @match_object_size
end

Class Method Details

.jsii_propertiesObject



597
598
599
600
601
602
603
604
605
# File 's3/cfn_storage_lens_group.rb', line 597

def self.jsii_properties
  {
    :match_any_prefix => "matchAnyPrefix",
    :match_any_suffix => "matchAnySuffix",
    :match_any_tag => "matchAnyTag",
    :match_object_age => "matchObjectAge",
    :match_object_size => "matchObjectSize",
  }
end

Instance Method Details

#to_jsiiObject



607
608
609
610
611
612
613
614
615
616
617
# File 's3/cfn_storage_lens_group.rb', line 607

def to_jsii
  result = {}
  result.merge!({
    "matchAnyPrefix" => @match_any_prefix,
    "matchAnySuffix" => @match_any_suffix,
    "matchAnyTag" => @match_any_tag,
    "matchObjectAge" => @match_object_age,
    "matchObjectSize" => @match_object_size,
  })
  result.compact
end