Class: AWSCDK::VPCLattice::CfnTargetGroup::TargetGroupConfigProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
vpc_lattice/cfn_target_group.rb

Overview

Describes the configuration of a target group.

For more information, see Target groups in the Amazon VPC Lattice User Guide .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(health_check: nil, ip_address_type: nil, lambda_event_structure_version: nil, port: nil, protocol: nil, protocol_version: nil, vpc_identifier: nil) ⇒ TargetGroupConfigProperty

Returns a new instance of TargetGroupConfigProperty.

Parameters:

  • health_check (AWSCDK::IResolvable, AWSCDK::VPCLattice::CfnTargetGroup::HealthCheckConfigProperty, nil) (defaults to: nil)

    The health check configuration.

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

    The type of IP address used for the target group.

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

    The version of the event structure that your Lambda function receives.

  • port (Numeric, nil) (defaults to: nil)

    The port on which the targets are listening.

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

    The protocol to use for routing traffic to the targets.

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

    The protocol version.

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

    The ID of the VPC.



790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
# File 'vpc_lattice/cfn_target_group.rb', line 790

def initialize(health_check: nil, ip_address_type: nil, lambda_event_structure_version: nil, port: nil, protocol: nil, protocol_version: nil, vpc_identifier: nil)
  @health_check = health_check.is_a?(Hash) ? ::AWSCDK::VPCLattice::CfnTargetGroup::HealthCheckConfigProperty.new(**health_check.transform_keys(&:to_sym)) : health_check
  Jsii::Type.check_type(@health_check, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c192cGNsYXR0aWNlLkNmblRhcmdldEdyb3VwLkhlYWx0aENoZWNrQ29uZmlnUHJvcGVydHkifV19fQ==")), "healthCheck") unless @health_check.nil?
  @ip_address_type = ip_address_type
  Jsii::Type.check_type(@ip_address_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ipAddressType") unless @ip_address_type.nil?
  @lambda_event_structure_version = lambda_event_structure_version
  Jsii::Type.check_type(@lambda_event_structure_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lambdaEventStructureVersion") unless @lambda_event_structure_version.nil?
  @port = port
  Jsii::Type.check_type(@port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "port") unless @port.nil?
  @protocol = protocol
  Jsii::Type.check_type(@protocol, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "protocol") unless @protocol.nil?
  @protocol_version = protocol_version
  Jsii::Type.check_type(@protocol_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "protocolVersion") unless @protocol_version.nil?
  @vpc_identifier = vpc_identifier
  Jsii::Type.check_type(@vpc_identifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "vpcIdentifier") unless @vpc_identifier.nil?
end

Instance Attribute Details

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

The health check configuration.

Not supported if the target group type is LAMBDA or ALB .



813
814
815
# File 'vpc_lattice/cfn_target_group.rb', line 813

def health_check
  @health_check
end

#ip_address_typeString? (readonly)

Note:

Default: - "IPV4"

The type of IP address used for the target group.

Supported only if the target group type is IP . The default is IPV4 .



821
822
823
# File 'vpc_lattice/cfn_target_group.rb', line 821

def ip_address_type
  @ip_address_type
end

#lambda_event_structure_versionString? (readonly)

The version of the event structure that your Lambda function receives.

Supported only if the target group type is LAMBDA . The default is V1 .



828
829
830
# File 'vpc_lattice/cfn_target_group.rb', line 828

def lambda_event_structure_version
  @lambda_event_structure_version
end

#portNumeric? (readonly)

The port on which the targets are listening.

For HTTP, the default is 80. For HTTPS, the default is 443. Not supported if the target group type is LAMBDA .



835
836
837
# File 'vpc_lattice/cfn_target_group.rb', line 835

def port
  @port
end

#protocolString? (readonly)

The protocol to use for routing traffic to the targets.

The default is the protocol of the target group. Not supported if the target group type is LAMBDA .



842
843
844
# File 'vpc_lattice/cfn_target_group.rb', line 842

def protocol
  @protocol
end

#protocol_versionString? (readonly)

Note:

Default: - "HTTP1"

The protocol version.

The default is HTTP1 . Not supported if the target group type is LAMBDA .



850
851
852
# File 'vpc_lattice/cfn_target_group.rb', line 850

def protocol_version
  @protocol_version
end

#vpc_identifierString? (readonly)

The ID of the VPC.

Not supported if the target group type is LAMBDA .



857
858
859
# File 'vpc_lattice/cfn_target_group.rb', line 857

def vpc_identifier
  @vpc_identifier
end

Class Method Details

.jsii_propertiesObject



859
860
861
862
863
864
865
866
867
868
869
# File 'vpc_lattice/cfn_target_group.rb', line 859

def self.jsii_properties
  {
    :health_check => "healthCheck",
    :ip_address_type => "ipAddressType",
    :lambda_event_structure_version => "lambdaEventStructureVersion",
    :port => "port",
    :protocol => "protocol",
    :protocol_version => "protocolVersion",
    :vpc_identifier => "vpcIdentifier",
  }
end

Instance Method Details

#to_jsiiObject



871
872
873
874
875
876
877
878
879
880
881
882
883
# File 'vpc_lattice/cfn_target_group.rb', line 871

def to_jsii
  result = {}
  result.merge!({
    "healthCheck" => @health_check,
    "ipAddressType" => @ip_address_type,
    "lambdaEventStructureVersion" => @lambda_event_structure_version,
    "port" => @port,
    "protocol" => @protocol,
    "protocolVersion" => @protocol_version,
    "vpcIdentifier" => @vpc_identifier,
  })
  result.compact
end