Class: AWSCDK::Lambda::CfnAliasProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
lambda/cfn_alias_props.rb

Overview

Properties for defining a CfnAlias.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(function_name:, function_version:, name:, description: nil, provisioned_concurrency_config: nil, routing_config: nil) ⇒ CfnAliasProps

Returns a new instance of CfnAliasProps.

Parameters:



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

def initialize(function_name:, function_version:, name:, description: nil, provisioned_concurrency_config: nil, routing_config: nil)
  @function_name = function_name
  Jsii::Type.check_type(@function_name, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19sYW1iZGEuSUZ1bmN0aW9uUmVmIn1dfX0=")), "functionName")
  @function_version = function_version
  Jsii::Type.check_type(@function_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "functionVersion")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @provisioned_concurrency_config = provisioned_concurrency_config.is_a?(Hash) ? ::AWSCDK::Lambda::CfnAlias::ProvisionedConcurrencyConfigurationProperty.new(**provisioned_concurrency_config.transform_keys(&:to_sym)) : provisioned_concurrency_config
  Jsii::Type.check_type(@provisioned_concurrency_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYW1iZGEuQ2ZuQWxpYXMuUHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "provisionedConcurrencyConfig") unless @provisioned_concurrency_config.nil?
  @routing_config = routing_config.is_a?(Hash) ? ::AWSCDK::Lambda::CfnAlias::AliasRoutingConfigurationProperty.new(**routing_config.transform_keys(&:to_sym)) : routing_config
  Jsii::Type.check_type(@routing_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYW1iZGEuQ2ZuQWxpYXMuQWxpYXNSb3V0aW5nQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "routingConfig") unless @routing_config.nil?
end

Instance Attribute Details

#descriptionString? (readonly)

A description of the alias.



56
57
58
# File 'lambda/cfn_alias_props.rb', line 56

def description
  @description
end

#function_nameString, AWSCDK::Interfaces::AWSLambda::IFunctionRef (readonly)

The name or ARN of the Lambda function.

Name formats - Function name - MyFunction .

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction .
  • Partial ARN - 123456789012:function:MyFunction .

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.



41
42
43
# File 'lambda/cfn_alias_props.rb', line 41

def function_name
  @function_name
end

#function_versionString (readonly)

The function version that the alias invokes.



46
47
48
# File 'lambda/cfn_alias_props.rb', line 46

def function_version
  @function_version
end

#nameString (readonly)

The name of the alias.



51
52
53
# File 'lambda/cfn_alias_props.rb', line 51

def name
  @name
end

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

Specifies a provisioned concurrency configuration for a function's alias.



61
62
63
# File 'lambda/cfn_alias_props.rb', line 61

def provisioned_concurrency_config
  @provisioned_concurrency_config
end

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

The routing configuration of the alias.



66
67
68
# File 'lambda/cfn_alias_props.rb', line 66

def routing_config
  @routing_config
end

Class Method Details

.jsii_propertiesObject



68
69
70
71
72
73
74
75
76
77
# File 'lambda/cfn_alias_props.rb', line 68

def self.jsii_properties
  {
    :function_name => "functionName",
    :function_version => "functionVersion",
    :name => "name",
    :description => "description",
    :provisioned_concurrency_config => "provisionedConcurrencyConfig",
    :routing_config => "routingConfig",
  }
end

Instance Method Details

#to_jsiiObject



79
80
81
82
83
84
85
86
87
88
89
90
# File 'lambda/cfn_alias_props.rb', line 79

def to_jsii
  result = {}
  result.merge!({
    "functionName" => @function_name,
    "functionVersion" => @function_version,
    "name" => @name,
    "description" => @description,
    "provisionedConcurrencyConfig" => @provisioned_concurrency_config,
    "routingConfig" => @routing_config,
  })
  result.compact
end