Class: AWSCDK::Greengrassv2::CfnComponentVersion::LambdaFunctionRecipeSourceProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
greengrassv2/cfn_component_version.rb

Overview

Contains information about an AWS Lambda function to import to create a component.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(component_dependencies: nil, component_lambda_parameters: nil, component_name: nil, component_platforms: nil, component_version: nil, lambda_arn: nil) ⇒ LambdaFunctionRecipeSourceProperty

Returns a new instance of LambdaFunctionRecipeSourceProperty.

Parameters:



995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
# File 'greengrassv2/cfn_component_version.rb', line 995

def initialize(component_dependencies: nil, component_lambda_parameters: nil, component_name: nil, component_platforms: nil, component_version: nil, lambda_arn: nil)
  @component_dependencies = component_dependencies
  Jsii::Type.check_type(@component_dependencies, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZ3JlZW5ncmFzc3YyLkNmbkNvbXBvbmVudFZlcnNpb24uQ29tcG9uZW50RGVwZW5kZW5jeVJlcXVpcmVtZW50UHJvcGVydHkifV19fSwia2luZCI6Im1hcCJ9fV19fQ==")), "componentDependencies") unless @component_dependencies.nil?
  @component_lambda_parameters = component_lambda_parameters.is_a?(Hash) ? ::AWSCDK::Greengrassv2::CfnComponentVersion::LambdaExecutionParametersProperty.new(**component_lambda_parameters.transform_keys(&:to_sym)) : component_lambda_parameters
  Jsii::Type.check_type(@component_lambda_parameters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ncmVlbmdyYXNzdjIuQ2ZuQ29tcG9uZW50VmVyc2lvbi5MYW1iZGFFeGVjdXRpb25QYXJhbWV0ZXJzUHJvcGVydHkifV19fQ==")), "componentLambdaParameters") unless @component_lambda_parameters.nil?
  @component_name = component_name
  Jsii::Type.check_type(@component_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "componentName") unless @component_name.nil?
  @component_platforms = component_platforms
  Jsii::Type.check_type(@component_platforms, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZ3JlZW5ncmFzc3YyLkNmbkNvbXBvbmVudFZlcnNpb24uQ29tcG9uZW50UGxhdGZvcm1Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "componentPlatforms") unless @component_platforms.nil?
  @component_version = component_version
  Jsii::Type.check_type(@component_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "componentVersion") unless @component_version.nil?
  @lambda_arn = lambda_arn
  Jsii::Type.check_type(@lambda_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lambdaArn") unless @lambda_arn.nil?
end

Instance Attribute Details

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

The component versions on which this Lambda function component depends.



1014
1015
1016
# File 'greengrassv2/cfn_component_version.rb', line 1014

def component_dependencies
  @component_dependencies
end

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

The system and runtime parameters for the Lambda function as it runs on the AWS IoT Greengrass core device.



1019
1020
1021
# File 'greengrassv2/cfn_component_version.rb', line 1019

def component_lambda_parameters
  @component_lambda_parameters
end

#component_nameString? (readonly)

The name of the component.

Defaults to the name of the Lambda function.



1026
1027
1028
# File 'greengrassv2/cfn_component_version.rb', line 1026

def component_name
  @component_name
end

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

The platforms that the component version supports.



1031
1032
1033
# File 'greengrassv2/cfn_component_version.rb', line 1031

def component_platforms
  @component_platforms
end

#component_versionString? (readonly)

The version of the component.

Defaults to the version of the Lambda function as a semantic version. For example, if your function version is 3 , the component version becomes 3.0.0 .



1038
1039
1040
# File 'greengrassv2/cfn_component_version.rb', line 1038

def component_version
  @component_version
end

#lambda_arnString? (readonly)

The ARN of the Lambda function.

The ARN must include the version of the function to import. You can't use version aliases like $LATEST .



1045
1046
1047
# File 'greengrassv2/cfn_component_version.rb', line 1045

def lambda_arn
  @lambda_arn
end

Class Method Details

.jsii_propertiesObject



1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
# File 'greengrassv2/cfn_component_version.rb', line 1047

def self.jsii_properties
  {
    :component_dependencies => "componentDependencies",
    :component_lambda_parameters => "componentLambdaParameters",
    :component_name => "componentName",
    :component_platforms => "componentPlatforms",
    :component_version => "componentVersion",
    :lambda_arn => "lambdaArn",
  }
end

Instance Method Details

#to_jsiiObject



1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
# File 'greengrassv2/cfn_component_version.rb', line 1058

def to_jsii
  result = {}
  result.merge!({
    "componentDependencies" => @component_dependencies,
    "componentLambdaParameters" => @component_lambda_parameters,
    "componentName" => @component_name,
    "componentPlatforms" => @component_platforms,
    "componentVersion" => @component_version,
    "lambdaArn" => @lambda_arn,
  })
  result.compact
end