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" :{
, "Description" :Key
:Value
, ...}String
, "ExtendsFrom" :[ String, ... ]
, "Functions" :{
, "IsSingleton" :Key
:Value
, ...}Boolean
, "PropertyDefinitions" :{
, "PropertyGroups" :Key
:Value
, ...}{
, "Tags" :Key
:Value
, ...}{
, "WorkspaceId" :Key
:Value
, ...}String
} }
YAML
Type: AWS::IoTTwinMaker::ComponentType Properties: ComponentTypeId:
String
CompositeComponentTypes:Description:
Key
:Value
String
ExtendsFrom:- String
Functions:IsSingleton:
Key
:Value
Boolean
PropertyDefinitions:PropertyGroups:
Key
:Value
Tags:
Key
:Value
WorkspaceId:
Key
:Value
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 thecomponentType
.CompositeComponentType
is referenced bycomponentTypeId
.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
-
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.