Class: AWSCDK::RDS::CfnOptionGroupProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
rds/cfn_option_group_props.rb

Overview

Properties for defining a CfnOptionGroup.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(engine_name:, major_engine_version:, option_group_description:, option_configurations: nil, option_group_name: nil, tags: nil) ⇒ CfnOptionGroupProps

Returns a new instance of CfnOptionGroupProps.

Parameters:

  • engine_name (String)

    Specifies the name of the engine that this option group should be associated with.

  • major_engine_version (String)

    Specifies the major version of the engine that this option group should be associated with.

  • option_group_description (String)

    The description of the option group.

  • option_configurations (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::RDS::CfnOptionGroup::OptionConfigurationProperty>, nil) (defaults to: nil)

    A list of all available options for an option group.

  • option_group_name (String, nil) (defaults to: nil)

    The name of the option group to be created.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Tags to assign to the option group.



15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'rds/cfn_option_group_props.rb', line 15

def initialize(engine_name:, major_engine_version:, option_group_description:, option_configurations: nil, option_group_name: nil, tags: nil)
  @engine_name = engine_name
  Jsii::Type.check_type(@engine_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "engineName")
  @major_engine_version = major_engine_version
  Jsii::Type.check_type(@major_engine_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "majorEngineVersion")
  @option_group_description = option_group_description
  Jsii::Type.check_type(@option_group_description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "optionGroupDescription")
  @option_configurations = option_configurations
  Jsii::Type.check_type(@option_configurations, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfcmRzLkNmbk9wdGlvbkdyb3VwLk9wdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "optionConfigurations") unless @option_configurations.nil?
  @option_group_name = option_group_name
  Jsii::Type.check_type(@option_group_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "optionGroupName") unless @option_group_name.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#engine_nameString (readonly)

Specifies the name of the engine that this option group should be associated with.

Valid Values:

  • mariadb
  • mysql
  • oracle-ee
  • oracle-ee-cdb
  • oracle-se2
  • oracle-se2-cdb
  • postgres
  • sqlserver-ee
  • sqlserver-se
  • sqlserver-ex
  • sqlserver-web


48
49
50
# File 'rds/cfn_option_group_props.rb', line 48

def engine_name
  @engine_name
end

#major_engine_versionString (readonly)

Specifies the major version of the engine that this option group should be associated with.



53
54
55
# File 'rds/cfn_option_group_props.rb', line 53

def major_engine_version
  @major_engine_version
end

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

A list of all available options for an option group.



63
64
65
# File 'rds/cfn_option_group_props.rb', line 63

def option_configurations
  @option_configurations
end

#option_group_descriptionString (readonly)

The description of the option group.



58
59
60
# File 'rds/cfn_option_group_props.rb', line 58

def option_group_description
  @option_group_description
end

#option_group_nameString? (readonly)

The name of the option group to be created.

Constraints:

  • Must be 1 to 255 letters, numbers, or hyphens
  • First character must be a letter
  • Can't end with a hyphen or contain two consecutive hyphens

Example: myoptiongroup

If you don't specify a value for OptionGroupName property, a name is automatically created for the option group.

This value is stored as a lowercase string.



80
81
82
# File 'rds/cfn_option_group_props.rb', line 80

def option_group_name
  @option_group_name
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Tags to assign to the option group.



85
86
87
# File 'rds/cfn_option_group_props.rb', line 85

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



87
88
89
90
91
92
93
94
95
96
# File 'rds/cfn_option_group_props.rb', line 87

def self.jsii_properties
  {
    :engine_name => "engineName",
    :major_engine_version => "majorEngineVersion",
    :option_group_description => "optionGroupDescription",
    :option_configurations => "optionConfigurations",
    :option_group_name => "optionGroupName",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



98
99
100
101
102
103
104
105
106
107
108
109
# File 'rds/cfn_option_group_props.rb', line 98

def to_jsii
  result = {}
  result.merge!({
    "engineName" => @engine_name,
    "majorEngineVersion" => @major_engine_version,
    "optionGroupDescription" => @option_group_description,
    "optionConfigurations" => @option_configurations,
    "optionGroupName" => @option_group_name,
    "tags" => @tags,
  })
  result.compact
end