Class: AWSCDK::CloudAssemblySchema::FeatureFlagReportProperties

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
cloud_assembly_schema/feature_flag_report_properties.rb

Overview

Artifact properties for a feature flag report.

A feature flag report is small enough that all the properties can be inlined here, and doesn't need an additional file.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(flags:, _module:) ⇒ FeatureFlagReportProperties

Returns a new instance of FeatureFlagReportProperties.

Parameters:

  • flags (Hash{String => AWSCDK::CloudAssemblySchema::FeatureFlag})

    Information about every feature flag supported by this library.

  • _module (String)

    The library that this feature flag report applies to.



12
13
14
15
16
17
# File 'cloud_assembly_schema/feature_flag_report_properties.rb', line 12

def initialize(flags:, _module:)
  @flags = flags.is_a?(Hash) ? flags.transform_values { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CloudAssemblySchema::FeatureFlag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : flags
  Jsii::Type.check_type(@flags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmNsb3VkX2Fzc2VtYmx5X3NjaGVtYS5GZWF0dXJlRmxhZyJ9LCJraW5kIjoibWFwIn19")), "flags")
  @_module = _module
  Jsii::Type.check_type(@_module, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "module")
end

Instance Attribute Details

#_moduleString (readonly)

The library that this feature flag report applies to.

Returns:

  • (String)


26
27
28
# File 'cloud_assembly_schema/feature_flag_report_properties.rb', line 26

def _module
  @_module
end

#flagsHash{String => AWSCDK::CloudAssemblySchema::FeatureFlag} (readonly)

Information about every feature flag supported by this library.

Returns:



22
23
24
# File 'cloud_assembly_schema/feature_flag_report_properties.rb', line 22

def flags
  @flags
end

Class Method Details

.jsii_propertiesObject



28
29
30
31
32
33
# File 'cloud_assembly_schema/feature_flag_report_properties.rb', line 28

def self.jsii_properties
  {
    :flags => "flags",
    :_module => "module",
  }
end

Instance Method Details

#to_jsiiObject



35
36
37
38
39
40
41
42
# File 'cloud_assembly_schema/feature_flag_report_properties.rb', line 35

def to_jsii
  result = {}
  result.merge!({
    "flags" => @flags,
    "module" => @_module,
  })
  result.compact
end