Interface CfnFunctionDefinitionProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnFunctionDefinitionProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:29:56.990Z") @Stability(Stable) public interface CfnFunctionDefinitionProps extends software.amazon.jsii.JsiiSerializable
Properties for defining a CfnFunctionDefinition.

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;
 CfnFunctionDefinitionProps cfnFunctionDefinitionProps = CfnFunctionDefinitionProps.builder()
         .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();
 
  • Method Details

    • getName

      @Stability(Stable) @NotNull String getName()
      The name of the function definition.
    • getInitialVersion

      @Stability(Stable) @Nullable default Object 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.

    • getTags

      @Stability(Stable) @Nullable default Object 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 most Tags implementations in AWS CloudFormation templates.

       "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
       }
       
    • builder

      @Stability(Stable) static CfnFunctionDefinitionProps.Builder builder()
      Returns:
      a CfnFunctionDefinitionProps.Builder of CfnFunctionDefinitionProps