Class: AWSCDK::EC2::RuleConfig

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ec2/rule_config.rb

Overview

Common configuration properties shared by ingress and egress security group rules.

Direct Known Subclasses

EgressRuleConfig, IngressRuleConfig

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cidr_ip: nil, cidr_ipv6: nil) ⇒ RuleConfig

Returns a new instance of RuleConfig.

Parameters:

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

    The IPv4 address range, in CIDR format.

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

    The IPv6 address range, in CIDR format.



9
10
11
12
13
14
# File 'ec2/rule_config.rb', line 9

def initialize(cidr_ip: nil, cidr_ipv6: nil)
  @cidr_ip = cidr_ip
  Jsii::Type.check_type(@cidr_ip, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cidrIp") unless @cidr_ip.nil?
  @cidr_ipv6 = cidr_ipv6
  Jsii::Type.check_type(@cidr_ipv6, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cidrIpv6") unless @cidr_ipv6.nil?
end

Instance Attribute Details

#cidr_ipString? (readonly)

Note:

Default: - No IPv4 CIDR

The IPv4 address range, in CIDR format.

Returns:

  • (String, nil)


20
21
22
# File 'ec2/rule_config.rb', line 20

def cidr_ip
  @cidr_ip
end

#cidr_ipv6String? (readonly)

Note:

Default: - No IPv6 CIDR

The IPv6 address range, in CIDR format.

Returns:

  • (String, nil)


25
26
27
# File 'ec2/rule_config.rb', line 25

def cidr_ipv6
  @cidr_ipv6
end

Class Method Details

.jsii_propertiesObject



27
28
29
30
31
32
# File 'ec2/rule_config.rb', line 27

def self.jsii_properties
  {
    :cidr_ip => "cidrIp",
    :cidr_ipv6 => "cidrIpv6",
  }
end

Instance Method Details

#to_jsiiObject



34
35
36
37
38
39
40
41
# File 'ec2/rule_config.rb', line 34

def to_jsii
  result = {}
  result.merge!({
    "cidrIp" => @cidr_ip,
    "cidrIpv6" => @cidr_ipv6,
  })
  result.compact
end