AWS::IoTTwinMaker::ComponentType - AWS CloudFormation

AWS::IoTTwinMaker::ComponentType

Use the AWS::IoTTwinMaker::ComponentType resource to declare a component type.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::IoTTwinMaker::ComponentType", "Properties" : { "ComponentTypeId" : String, "CompositeComponentTypes" : {Key: Value, ...}, "Description" : String, "ExtendsFrom" : [ String, ... ], "Functions" : {Key: Value, ...}, "IsSingleton" : Boolean, "PropertyDefinitions" : {Key: Value, ...}, "PropertyGroups" : {Key: Value, ...}, "Tags" : {Key: Value, ...}, "WorkspaceId" : String } }

YAML

Type: AWS::IoTTwinMaker::ComponentType Properties: ComponentTypeId: String CompositeComponentTypes: Key: Value Description: String ExtendsFrom: - String Functions: Key: Value IsSingleton: Boolean PropertyDefinitions: Key: Value PropertyGroups: Key: Value Tags: Key: Value WorkspaceId: String

Properties

ComponentTypeId

The ID of the component type.

Required: Yes

Type: String

Pattern: [a-zA-Z_\.\-0-9:]+

Minimum: 1

Maximum: 256

Update requires: Replacement

CompositeComponentTypes

Maps strings to compositeComponentTypes of the componentType. CompositeComponentType is referenced by componentTypeId.

Required: No

Type: Object of CompositeComponentType

Update requires: No interruption

Description

The description of the component type.

Required: No

Type: String

Minimum: 0

Maximum: 512

Update requires: No interruption

ExtendsFrom

The name of the parent component type that this component type extends.

Required: No

Type: Array of String

Minimum: 1

Maximum: 256

Update requires: No interruption

Functions

An object that maps strings to the functions in the component type. Each string in the mapping must be unique to this object.

For information on the FunctionResponse object see the FunctionResponse API reference.

Required: No

Type: Object of Function

Update requires: No interruption

IsSingleton

A boolean value that specifies whether an entity can have more than one component of this type.

Required: No

Type: Boolean

Update requires: No interruption

PropertyDefinitions

An object that maps strings to the property definitions in the component type. Each string in the mapping must be unique to this object.

For information about the PropertyDefinitionResponse object, see the PropertyDefinitionResponse API reference.

Required: No

Type: Object of PropertyDefinition

Update requires: No interruption

PropertyGroups

An object that maps strings to the property groups in the component type. Each string in the mapping must be unique to this object.

Required: No

Type: Object of PropertyGroup

Update requires: No interruption

Tags

The ComponentType tags.

Required: No

Type: Object of String

Pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$

Minimum: 1

Maximum: 256

Update requires: No interruption

WorkspaceId

The ID of the workspace that contains the component type.

Required: Yes

Type: String

Pattern: [a-zA-Z_0-9][a-zA-Z_\-0-9]*[a-zA-Z0-9]+

Minimum: 1

Maximum: 128

Update requires: Replacement

Return values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the workspace Id and the ComponentType Id.

For more information about using the Ref function, see Ref.

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

Arn

The ARN of the component type.

CreationDateTime

The date and time when the component type was created.

IsAbstract

A boolean value that specifies whether the component type is abstract.

IsSchemaInitialized

A boolean value that specifies whether the component type has a schema initializer and that the schema initializer has run.

UpdateDateTime

The component type the update time.