Class: AWSCDK::IoT::CfnThingGroupProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
io_t/cfn_thing_group_props.rb

Overview

Properties for defining a CfnThingGroup.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(parent_group_name: nil, query_string: nil, tags: nil, thing_group_name: nil, thing_group_properties: nil) ⇒ CfnThingGroupProps

Returns a new instance of CfnThingGroupProps.

Parameters:

  • parent_group_name (String, nil) (defaults to: nil)

    The parent thing group name.

  • query_string (String, nil) (defaults to: nil)

    The dynamic thing group search query string.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Metadata which can be used to manage the thing group or dynamic thing group.

  • thing_group_name (String, nil) (defaults to: nil)

    The thing group name.

  • thing_group_properties (AWSCDK::IResolvable, AWSCDK::IoT::CfnThingGroup::ThingGroupPropertiesProperty, nil) (defaults to: nil)

    Thing group properties.



14
15
16
17
18
19
20
21
22
23
24
25
# File 'io_t/cfn_thing_group_props.rb', line 14

def initialize(parent_group_name: nil, query_string: nil, tags: nil, thing_group_name: nil, thing_group_properties: nil)
  @parent_group_name = parent_group_name
  Jsii::Type.check_type(@parent_group_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "parentGroupName") unless @parent_group_name.nil?
  @query_string = query_string
  Jsii::Type.check_type(@query_string, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "queryString") unless @query_string.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
  @thing_group_name = thing_group_name
  Jsii::Type.check_type(@thing_group_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "thingGroupName") unless @thing_group_name.nil?
  @thing_group_properties = thing_group_properties.is_a?(Hash) ? ::AWSCDK::IoT::CfnThingGroup::ThingGroupPropertiesProperty.new(**thing_group_properties.transform_keys(&:to_sym)) : thing_group_properties
  Jsii::Type.check_type(@thing_group_properties, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pb3QuQ2ZuVGhpbmdHcm91cC5UaGluZ0dyb3VwUHJvcGVydGllc1Byb3BlcnR5In1dfX0=")), "thingGroupProperties") unless @thing_group_properties.nil?
end

Instance Attribute Details

#parent_group_nameString? (readonly)

The parent thing group name.

A Dynamic Thing Group does not have parent_group_name defined.



33
34
35
# File 'io_t/cfn_thing_group_props.rb', line 33

def parent_group_name
  @parent_group_name
end

#query_stringString? (readonly)

The dynamic thing group search query string.

The query_string attribute is required for CreateDynamicThingGroup . The query_string attribute is not required for CreateThingGroup .



40
41
42
# File 'io_t/cfn_thing_group_props.rb', line 40

def query_string
  @query_string
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Metadata which can be used to manage the thing group or dynamic thing group.



45
46
47
# File 'io_t/cfn_thing_group_props.rb', line 45

def tags
  @tags
end

#thing_group_nameString? (readonly)

The thing group name.



50
51
52
# File 'io_t/cfn_thing_group_props.rb', line 50

def thing_group_name
  @thing_group_name
end

#thing_group_propertiesAWSCDK::IResolvable, ... (readonly)

Thing group properties.



55
56
57
# File 'io_t/cfn_thing_group_props.rb', line 55

def thing_group_properties
  @thing_group_properties
end

Class Method Details

.jsii_propertiesObject



57
58
59
60
61
62
63
64
65
# File 'io_t/cfn_thing_group_props.rb', line 57

def self.jsii_properties
  {
    :parent_group_name => "parentGroupName",
    :query_string => "queryString",
    :tags => "tags",
    :thing_group_name => "thingGroupName",
    :thing_group_properties => "thingGroupProperties",
  }
end

Instance Method Details

#to_jsiiObject



67
68
69
70
71
72
73
74
75
76
77
# File 'io_t/cfn_thing_group_props.rb', line 67

def to_jsii
  result = {}
  result.merge!({
    "parentGroupName" => @parent_group_name,
    "queryString" => @query_string,
    "tags" => @tags,
    "thingGroupName" => @thing_group_name,
    "thingGroupProperties" => @thing_group_properties,
  })
  result.compact
end