Class: AWSCDK::Greengrass::CfnDeviceDefinitionProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Greengrass::CfnDeviceDefinitionProps
- Defined in:
- greengrass/cfn_device_definition_props.rb
Overview
Properties for defining a CfnDeviceDefinition.
Instance Attribute Summary collapse
-
#initial_version ⇒ AWSCDK::IResolvable, ...
readonly
The device definition version to include when the device definition is created.
-
#name ⇒ String
readonly
The name of the device definition.
-
#tags ⇒ Object?
readonly
Application-specific metadata to attach to the device definition.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(name:, initial_version: nil, tags: nil) ⇒ CfnDeviceDefinitionProps
constructor
A new instance of CfnDeviceDefinitionProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(name:, initial_version: nil, tags: nil) ⇒ CfnDeviceDefinitionProps
Returns a new instance of CfnDeviceDefinitionProps.
12 13 14 15 16 17 18 19 |
# File 'greengrass/cfn_device_definition_props.rb', line 12 def initialize(name:, initial_version: nil, tags: nil) @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") @initial_version = initial_version.is_a?(Hash) ? ::AWSCDK::Greengrass::CfnDeviceDefinition::DeviceDefinitionVersionProperty.new(**initial_version.transform_keys(&:to_sym)) : initial_version Jsii::Type.check_type(@initial_version, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ncmVlbmdyYXNzLkNmbkRldmljZURlZmluaXRpb24uRGV2aWNlRGVmaW5pdGlvblZlcnNpb25Qcm9wZXJ0eSJ9XX19")), "initialVersion") unless @initial_version.nil? @tags = Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "tags") unless @tags.nil? end |
Instance Attribute Details
#initial_version ⇒ AWSCDK::IResolvable, ... (readonly)
The device definition version to include when the device definition is created.
A device definition version contains a list of device property types.
To associate a device definition version after the device definition is created, create an
AWS::Greengrass::DeviceDefinitionVersionresource and specify the ID of this device definition.
34 35 36 |
# File 'greengrass/cfn_device_definition_props.rb', line 34 def initial_version @initial_version end |
#name ⇒ String (readonly)
The name of the device definition.
25 26 27 |
# File 'greengrass/cfn_device_definition_props.rb', line 25 def name @name end |
#tags ⇒ Object? (readonly)
Application-specific metadata to attach to the device 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 CloudFormation templates.
"Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
}
48 49 50 |
# File 'greengrass/cfn_device_definition_props.rb', line 48 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
50 51 52 53 54 55 56 |
# File 'greengrass/cfn_device_definition_props.rb', line 50 def self.jsii_properties { :name => "name", :initial_version => "initialVersion", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
58 59 60 61 62 63 64 65 66 |
# File 'greengrass/cfn_device_definition_props.rb', line 58 def to_jsii result = {} result.merge!({ "name" => @name, "initialVersion" => @initial_version, "tags" => @tags, }) result.compact end |