Class CfnFunctionDefinition
- All Implemented Interfaces:
IConstruct
,IDependable
,IInspectable
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
AWS::Greengrass::FunctionDefinition
.
The AWS::Greengrass::FunctionDefinition
resource represents a function definition for AWS IoT Greengrass . Function definitions are used to organize your function definition versions.
Function definitions can reference multiple function definition versions. All function definition versions must be associated with a function definition. Each function definition version can contain one or more functions.
When you create a function definition, you can optionally include an initial function definition version. To associate a function definition version later, create an
AWS::Greengrass::FunctionDefinitionVersion
resource and specify the ID of this function definition.After you create the function definition version that contains the functions you want to deploy, you must add it to your group version. For more information, see
AWS::Greengrass::Group
.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.greengrass.*; Object tags; Object variables; CfnFunctionDefinition cfnFunctionDefinition = CfnFunctionDefinition.Builder.create(this, "MyCfnFunctionDefinition") .name("name") // the properties below are optional .initialVersion(FunctionDefinitionVersionProperty.builder() .functions(List.of(FunctionProperty.builder() .functionArn("functionArn") .functionConfiguration(FunctionConfigurationProperty.builder() .encodingType("encodingType") .environment(EnvironmentProperty.builder() .accessSysfs(false) .execution(ExecutionProperty.builder() .isolationMode("isolationMode") .runAs(RunAsProperty.builder() .gid(123) .uid(123) .build()) .build()) .resourceAccessPolicies(List.of(ResourceAccessPolicyProperty.builder() .resourceId("resourceId") // the properties below are optional .permission("permission") .build())) .variables(variables) .build()) .execArgs("execArgs") .executable("executable") .memorySize(123) .pinned(false) .timeout(123) .build()) .id("id") .build())) // the properties below are optional .defaultConfig(DefaultConfigProperty.builder() .execution(ExecutionProperty.builder() .isolationMode("isolationMode") .runAs(RunAsProperty.builder() .gid(123) .uid(123) .build()) .build()) .build()) .build()) .tags(tags) .build();
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
A fluent builder forCfnFunctionDefinition
.static interface
The default configuration that applies to all Lambda functions in the function definition version.static interface
The environment configuration for a Lambda function on the AWS IoT Greengrass core.static interface
Configuration settings for the Lambda execution environment on the AWS IoT Greengrass core.static interface
The group-specific configuration settings for a Lambda function.static interface
A function definition version contains a list of functions.static interface
A function is a Lambda function that's referenced from an AWS IoT Greengrass group.static interface
A list of the resources in the group that the function can access, with the corresponding read-only or read-write permissions.static interface
The access identity whose permissions are used to run the Lambda function.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IConstruct
IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
The CloudFormation resource type name for this resource class. -
Constructor Summary
ConstructorsModifierConstructorDescriptionCfnFunctionDefinition
(Construct scope, String id, CfnFunctionDefinitionProps props) Create a newAWS::Greengrass::FunctionDefinition
.protected
CfnFunctionDefinition
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
CfnFunctionDefinition
(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionThe Amazon Resource Name (ARN) of theFunctionDefinition
, such asarn:aws:greengrass:us-east-1: :/greengrass/definition/functions/1234a5b6-78cd-901e-2fgh-3i45j6k178l9
.The ID of theFunctionDefinition
, such as1234a5b6-78cd-901e-2fgh-3i45j6k178l9
.The ARN of the lastFunctionDefinitionVersion
that was added to theFunctionDefinition
, such asarn:aws:greengrass:us-east-1: :/greengrass/definition/functions/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2
.The name of theFunctionDefinition
, such asMyFunctionDefinition
.The function definition version to include when the function definition is created.getName()
The name of the function definition.getTags()
Application-specific metadata to attach to the function definition.void
inspect
(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties
(Map<String, Object> props) void
setInitialVersion
(IResolvable value) The function definition version to include when the function definition is created.void
The function definition version to include when the function definition is created.void
The name of the function definition.Methods inherited from class software.amazon.awscdk.core.CfnResource
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, isCfnResource, shouldSynthesize, toString, validateProperties
Methods inherited from class software.amazon.awscdk.core.CfnRefElement
getRef
Methods inherited from class software.amazon.awscdk.core.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalId
Methods inherited from class software.amazon.awscdk.core.Construct
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validate
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnFunctionDefinition
protected CfnFunctionDefinition(software.amazon.jsii.JsiiObjectRef objRef) -
CfnFunctionDefinition
protected CfnFunctionDefinition(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnFunctionDefinition
@Stability(Stable) public CfnFunctionDefinition(@NotNull Construct scope, @NotNull String id, @NotNull CfnFunctionDefinitionProps props) Create a newAWS::Greengrass::FunctionDefinition
.- Parameters:
scope
-- scope in which this resource is defined.
id
-- scoped id of the resource.
props
-- resource properties.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspect
in interfaceIInspectable
- Parameters:
inspector
-- tree inspector to collect and process attributes.
-
renderProperties
@Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String, Object> props) - Overrides:
renderProperties
in classCfnResource
- Parameters:
props
- This parameter is required.
-
getAttrArn
The Amazon Resource Name (ARN) of theFunctionDefinition
, such asarn:aws:greengrass:us-east-1: :/greengrass/definition/functions/1234a5b6-78cd-901e-2fgh-3i45j6k178l9
. -
getAttrId
The ID of theFunctionDefinition
, such as1234a5b6-78cd-901e-2fgh-3i45j6k178l9
. -
getAttrLatestVersionArn
The ARN of the lastFunctionDefinitionVersion
that was added to theFunctionDefinition
, such asarn:aws:greengrass:us-east-1: :/greengrass/definition/functions/1234a5b6-78cd-901e-2fgh-3i45j6k178l9/versions/9876ac30-4bdb-4f9d-95af-b5fdb66be1a2
. -
getAttrName
The name of theFunctionDefinition
, such asMyFunctionDefinition
. -
getCfnProperties
- Overrides:
getCfnProperties
in classCfnResource
-
getTags
Application-specific metadata to attach to the function definition.You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see Tagging Your AWS IoT Greengrass Resources in the Developer Guide .
This
Json
property type is processed as a map of key-value pairs. It uses the following format, which is different from mostTags
implementations in AWS CloudFormation templates."Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value" }
-
getName
The name of the function definition. -
setName
The name of the function definition. -
getInitialVersion
The function definition version to include when the function definition is created.A function definition version contains a list of
function
property types.To associate a function definition version after the function definition is created, create an
AWS::Greengrass::FunctionDefinitionVersion
resource and specify the ID of this function definition. -
setInitialVersion
The function definition version to include when the function definition is created.A function definition version contains a list of
function
property types.To associate a function definition version after the function definition is created, create an
AWS::Greengrass::FunctionDefinitionVersion
resource and specify the ID of this function definition. -
setInitialVersion
@Stability(Stable) public void setInitialVersion(@Nullable CfnFunctionDefinition.FunctionDefinitionVersionProperty value) The function definition version to include when the function definition is created.A function definition version contains a list of
function
property types.To associate a function definition version after the function definition is created, create an
AWS::Greengrass::FunctionDefinitionVersion
resource and specify the ID of this function definition.
-