Class: AWSCDK::RDS::CfnDBProxyEndpointProps

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

Overview

Properties for defining a CfnDBProxyEndpoint.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(db_proxy_endpoint_name:, db_proxy_name:, vpc_subnet_ids:, endpoint_network_type: nil, tags: nil, target_role: nil, vpc_security_group_ids: nil) ⇒ CfnDBProxyEndpointProps

Returns a new instance of CfnDBProxyEndpointProps.

Parameters:

  • db_proxy_endpoint_name (String)

    The name of the DB proxy endpoint to create.

  • db_proxy_name (String)

    The name of the DB proxy associated with the DB proxy endpoint that you create.

  • vpc_subnet_ids (Array<String, AWSCDK::Interfaces::AWSEC2::ISubnetRef>)

    The VPC subnet IDs for the DB proxy endpoint that you create.

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

    The network type of the DB proxy endpoint.

  • tags (Array<AWSCDK::RDS::CfnDBProxyEndpoint::TagFormatProperty>, nil) (defaults to: nil)

    An optional set of key-value pairs to associate arbitrary data of your choosing with the proxy.

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

    A value that indicates whether the DB proxy endpoint can be used for read/write or read-only operations.

  • vpc_security_group_ids (Array<String, AWSCDK::Interfaces::AWSEC2::ISecurityGroupRef>, nil) (defaults to: nil)

    The VPC security group IDs for the DB proxy endpoint that you create.



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 16

def initialize(db_proxy_endpoint_name:, db_proxy_name:, vpc_subnet_ids:, endpoint_network_type: nil, tags: nil, target_role: nil, vpc_security_group_ids: nil)
  @db_proxy_endpoint_name = db_proxy_endpoint_name
  Jsii::Type.check_type(@db_proxy_endpoint_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dbProxyEndpointName")
  @db_proxy_name = db_proxy_name
  Jsii::Type.check_type(@db_proxy_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dbProxyName")
  @vpc_subnet_ids = vpc_subnet_ids
  Jsii::Type.check_type(@vpc_subnet_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InVuaW9uIjp7InR5cGVzIjpbeyJwcmltaXRpdmUiOiJzdHJpbmcifSx7ImZxbiI6ImF3cy1jZGstbGliLmludGVyZmFjZXMuYXdzX2VjMi5JU3VibmV0UmVmIn1dfX0sImtpbmQiOiJhcnJheSJ9fQ==")), "vpcSubnetIds")
  @endpoint_network_type = endpoint_network_type
  Jsii::Type.check_type(@endpoint_network_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "endpointNetworkType") unless @endpoint_network_type.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::RDS::CfnDBProxyEndpoint::TagFormatProperty.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19yZHMuQ2ZuREJQcm94eUVuZHBvaW50LlRhZ0Zvcm1hdFByb3BlcnR5In0sImtpbmQiOiJhcnJheSJ9fQ==")), "tags") unless @tags.nil?
  @target_role = target_role
  Jsii::Type.check_type(@target_role, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "targetRole") unless @target_role.nil?
  @vpc_security_group_ids = vpc_security_group_ids
  Jsii::Type.check_type(@vpc_security_group_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InVuaW9uIjp7InR5cGVzIjpbeyJwcmltaXRpdmUiOiJzdHJpbmcifSx7ImZxbiI6ImF3cy1jZGstbGliLmludGVyZmFjZXMuYXdzX2VjMi5JU2VjdXJpdHlHcm91cFJlZiJ9XX19LCJraW5kIjoiYXJyYXkifX0=")), "vpcSecurityGroupIds") unless @vpc_security_group_ids.nil?
end

Instance Attribute Details

#db_proxy_endpoint_nameString (readonly)

The name of the DB proxy endpoint to create.



37
38
39
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 37

def db_proxy_endpoint_name
  @db_proxy_endpoint_name
end

#db_proxy_nameString (readonly)

The name of the DB proxy associated with the DB proxy endpoint that you create.



42
43
44
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 42

def db_proxy_name
  @db_proxy_name
end

#endpoint_network_typeString? (readonly)

The network type of the DB proxy endpoint.

The network type determines the IP version that the proxy endpoint supports.

Valid values:

  • IPV4 - The proxy endpoint supports IPv4 only.
  • IPV6 - The proxy endpoint supports IPv6 only.
  • DUAL - The proxy endpoint supports both IPv4 and IPv6.


62
63
64
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 62

def endpoint_network_type
  @endpoint_network_type
end

#tagsArray<AWSCDK::RDS::CfnDBProxyEndpoint::TagFormatProperty>? (readonly)

An optional set of key-value pairs to associate arbitrary data of your choosing with the proxy.



67
68
69
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 67

def tags
  @tags
end

#target_roleString? (readonly)

A value that indicates whether the DB proxy endpoint can be used for read/write or read-only operations.



72
73
74
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 72

def target_role
  @target_role
end

#vpc_security_group_idsArray<String, AWSCDK::Interfaces::AWSEC2::ISecurityGroupRef>? (readonly)

The VPC security group IDs for the DB proxy endpoint that you create.

You can specify a different set of security group IDs than for the original DB proxy. The default is the default security group for the VPC.



79
80
81
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 79

def vpc_security_group_ids
  @vpc_security_group_ids
end

#vpc_subnet_idsArray<String, AWSCDK::Interfaces::AWSEC2::ISubnetRef> (readonly)

The VPC subnet IDs for the DB proxy endpoint that you create.

You can specify a different set of subnet IDs than for the original DB proxy.



49
50
51
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 49

def vpc_subnet_ids
  @vpc_subnet_ids
end

Class Method Details

.jsii_propertiesObject



81
82
83
84
85
86
87
88
89
90
91
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 81

def self.jsii_properties
  {
    :db_proxy_endpoint_name => "dbProxyEndpointName",
    :db_proxy_name => "dbProxyName",
    :vpc_subnet_ids => "vpcSubnetIds",
    :endpoint_network_type => "endpointNetworkType",
    :tags => "tags",
    :target_role => "targetRole",
    :vpc_security_group_ids => "vpcSecurityGroupIds",
  }
end

Instance Method Details

#to_jsiiObject



93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'rds/cfn_db_proxy_endpoint_props.rb', line 93

def to_jsii
  result = {}
  result.merge!({
    "dbProxyEndpointName" => @db_proxy_endpoint_name,
    "dbProxyName" => @db_proxy_name,
    "vpcSubnetIds" => @vpc_subnet_ids,
    "endpointNetworkType" => @endpoint_network_type,
    "tags" => @tags,
    "targetRole" => @target_role,
    "vpcSecurityGroupIds" => @vpc_security_group_ids,
  })
  result.compact
end