Class: AWSCDK::S3::CfnStorageLensGroup::OrProperty

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

Overview

This resource contains the Or logical operator, which allows multiple filter conditions to be joined for more complex comparisons of Storage Lens group data.

Objects can match any of the listed filter conditions that are joined by the Or 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) ⇒ OrProperty

Returns a new instance of OrProperty.

Parameters:



828
829
830
831
832
833
834
835
836
837
838
839
# File 's3/cfn_storage_lens_group.rb', line 828

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.



847
848
849
# File 's3/cfn_storage_lens_group.rb', line 847

def match_any_prefix
  @match_any_prefix
end

#match_any_suffixArray<String>? (readonly)

This property contains the list of suffixes.

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



854
855
856
# File 's3/cfn_storage_lens_group.rb', line 854

def match_any_suffix
  @match_any_suffix
end

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

This property contains the list of S3 object tags.

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



861
862
863
# File 's3/cfn_storage_lens_group.rb', line 861

def match_any_tag
  @match_any_tag
end

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

This property filters objects that match the specified object age range.



866
867
868
# File 's3/cfn_storage_lens_group.rb', line 866

def match_object_age
  @match_object_age
end

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

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



871
872
873
# File 's3/cfn_storage_lens_group.rb', line 871

def match_object_size
  @match_object_size
end

Class Method Details

.jsii_propertiesObject



873
874
875
876
877
878
879
880
881
# File 's3/cfn_storage_lens_group.rb', line 873

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



883
884
885
886
887
888
889
890
891
892
893
# File 's3/cfn_storage_lens_group.rb', line 883

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