Class: AWSCDK::Connect::CfnRuleProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
connect/cfn_rule_props.rb

Overview

Properties for defining a CfnRule.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(actions:, function:, instance_arn:, name:, publish_status:, trigger_event_source:, tags: nil) ⇒ CfnRuleProps

Returns a new instance of CfnRuleProps.

Parameters:



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'connect/cfn_rule_props.rb', line 16

def initialize(actions:, function:, instance_arn:, name:, publish_status:, trigger_event_source:, tags: nil)
  @actions = actions.is_a?(Hash) ? ::AWSCDK::Connect::CfnRule::ActionsProperty.new(**actions.transform_keys(&:to_sym)) : actions
  Jsii::Type.check_type(@actions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblJ1bGUuQWN0aW9uc1Byb3BlcnR5In1dfX0=")), "actions")
  @function = function
  Jsii::Type.check_type(@function, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "function")
  @instance_arn = instance_arn
  Jsii::Type.check_type(@instance_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "instanceArn")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @publish_status = publish_status
  Jsii::Type.check_type(@publish_status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "publishStatus")
  @trigger_event_source = trigger_event_source.is_a?(Hash) ? ::AWSCDK::Connect::CfnRule::RuleTriggerEventSourceProperty.new(**trigger_event_source.transform_keys(&:to_sym)) : trigger_event_source
  Jsii::Type.check_type(@trigger_event_source, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblJ1bGUuUnVsZVRyaWdnZXJFdmVudFNvdXJjZVByb3BlcnR5In1dfX0=")), "triggerEventSource")
  @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?
end

Instance Attribute Details

#actionsAWSCDK::IResolvable, AWSCDK::Connect::CfnRule::ActionsProperty (readonly)

A list of actions to be run when the rule is triggered.



37
38
39
# File 'connect/cfn_rule_props.rb', line 37

def actions
  @actions
end

#functionString (readonly)

The conditions of the rule.



42
43
44
# File 'connect/cfn_rule_props.rb', line 42

def function
  @function
end

#instance_arnString (readonly)

The Amazon Resource Name (ARN) of the instance.



47
48
49
# File 'connect/cfn_rule_props.rb', line 47

def instance_arn
  @instance_arn
end

#nameString (readonly)

The name of the rule.



52
53
54
# File 'connect/cfn_rule_props.rb', line 52

def name
  @name
end

#publish_statusString (readonly)

The publish status of the rule.

Allowed values : DRAFT | PUBLISHED



59
60
61
# File 'connect/cfn_rule_props.rb', line 59

def publish_status
  @publish_status
end

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

The tags used to organize, track, or control access for this resource.

For example, { "tags": "key2":"value2" }.



71
72
73
# File 'connect/cfn_rule_props.rb', line 71

def tags
  @tags
end

#trigger_event_sourceAWSCDK::IResolvable, AWSCDK::Connect::CfnRule::RuleTriggerEventSourceProperty (readonly)

The event source to trigger the rule.



64
65
66
# File 'connect/cfn_rule_props.rb', line 64

def trigger_event_source
  @trigger_event_source
end

Class Method Details

.jsii_propertiesObject



73
74
75
76
77
78
79
80
81
82
83
# File 'connect/cfn_rule_props.rb', line 73

def self.jsii_properties
  {
    :actions => "actions",
    :function => "function",
    :instance_arn => "instanceArn",
    :name => "name",
    :publish_status => "publishStatus",
    :trigger_event_source => "triggerEventSource",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



85
86
87
88
89
90
91
92
93
94
95
96
97
# File 'connect/cfn_rule_props.rb', line 85

def to_jsii
  result = {}
  result.merge!({
    "actions" => @actions,
    "function" => @function,
    "instanceArn" => @instance_arn,
    "name" => @name,
    "publishStatus" => @publish_status,
    "triggerEventSource" => @trigger_event_source,
    "tags" => @tags,
  })
  result.compact
end