Class: AWSCDK::CodeStarNotifications::CfnNotificationRuleProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
code_star_notifications/cfn_notification_rule_props.rb

Overview

Properties for defining a CfnNotificationRule.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(detail_type:, event_type_ids:, name:, resource:, targets:, created_by: nil, event_type_id: nil, status: nil, tags: nil, target_address: nil) ⇒ CfnNotificationRuleProps

Returns a new instance of CfnNotificationRuleProps.

Parameters:

  • detail_type (String)

    The level of detail to include in the notifications for this resource.

  • event_type_ids (Array<String>)

    A list of event types associated with this notification rule.

  • name (String)

    The name for the notification rule.

  • resource (String)

    The Amazon Resource Name (ARN) of the resource to associate with the notification rule.

  • targets (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::CodeStarNotifications::CfnNotificationRule::TargetProperty>)

    A list of Amazon Resource Names (ARNs) of Amazon topics and clients to associate with the notification rule.

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

    The name or email alias of the person who created the notification rule.

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

    The event type associated with this notification rule.

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

    The status of the notification rule.

  • tags (Hash{String => String}, nil) (defaults to: nil)

    A list of tags to apply to this notification rule.

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

    The Amazon Resource Name (ARN) of the Amazon topic or client.



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 19

def initialize(detail_type:, event_type_ids:, name:, resource:, targets:, created_by: nil, event_type_id: nil, status: nil, tags: nil, target_address: nil)
  @detail_type = detail_type
  Jsii::Type.check_type(@detail_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "detailType")
  @event_type_ids = event_type_ids
  Jsii::Type.check_type(@event_type_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "eventTypeIds")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @resource = resource
  Jsii::Type.check_type(@resource, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "resource")
  @targets = targets
  Jsii::Type.check_type(@targets, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29kZXN0YXJub3RpZmljYXRpb25zLkNmbk5vdGlmaWNhdGlvblJ1bGUuVGFyZ2V0UHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "targets")
  @created_by = created_by
  Jsii::Type.check_type(@created_by, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "createdBy") unless @created_by.nil?
  @event_type_id = event_type_id
  Jsii::Type.check_type(@event_type_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "eventTypeId") unless @event_type_id.nil?
  @status = status
  Jsii::Type.check_type(@status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "status") unless @status.nil?
  @tags = tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tags") unless @tags.nil?
  @target_address = target_address
  Jsii::Type.check_type(@target_address, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "targetAddress") unless @target_address.nil?
end

Instance Attribute Details

#created_byString? (readonly)

The name or email alias of the person who created the notification rule.



79
80
81
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 79

def created_by
  @created_by
end

#detail_typeString (readonly)

The level of detail to include in the notifications for this resource.

BASIC will include only the contents of the event as it would appear in Amazon CloudWatch. FULL will include any supplemental information provided by AWS CodeStar Notifications and/or the service for the resource for which the notification is created.



48
49
50
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 48

def detail_type
  @detail_type
end

#event_type_idString? (readonly)

The event type associated with this notification rule.

For a complete list of event types and IDs, see Notification concepts in the Developer Tools Console User Guide .



86
87
88
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 86

def event_type_id
  @event_type_id
end

#event_type_idsArray<String> (readonly)

A list of event types associated with this notification rule.

For a complete list of event types and IDs, see Notification concepts in the Developer Tools Console User Guide .



55
56
57
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 55

def event_type_ids
  @event_type_ids
end

#nameString (readonly)

The name for the notification rule.

Notification rule names must be unique in your AWS account .



62
63
64
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 62

def name
  @name
end

#resourceString (readonly)

The Amazon Resource Name (ARN) of the resource to associate with the notification rule.

Supported resources include pipelines in AWS CodePipeline , repositories in AWS CodeCommit , and build projects in AWS CodeBuild .



69
70
71
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 69

def resource
  @resource
end

#statusString? (readonly)

The status of the notification rule.

The default value is ENABLED . If the status is set to DISABLED , notifications aren't sent for the notification rule.



93
94
95
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 93

def status
  @status
end

#tagsHash{String => String}? (readonly)

A list of tags to apply to this notification rule.

Key names cannot start with " aws ".



100
101
102
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 100

def tags
  @tags
end

#target_addressString? (readonly)

The Amazon Resource Name (ARN) of the Amazon topic or client.



105
106
107
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 105

def target_address
  @target_address
end

#targetsAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::CodeStarNotifications::CfnNotificationRule::TargetProperty> (readonly)

A list of Amazon Resource Names (ARNs) of Amazon topics and clients to associate with the notification rule.



74
75
76
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 74

def targets
  @targets
end

Class Method Details

.jsii_propertiesObject



107
108
109
110
111
112
113
114
115
116
117
118
119
120
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 107

def self.jsii_properties
  {
    :detail_type => "detailType",
    :event_type_ids => "eventTypeIds",
    :name => "name",
    :resource => "resource",
    :targets => "targets",
    :created_by => "createdBy",
    :event_type_id => "eventTypeId",
    :status => "status",
    :tags => "tags",
    :target_address => "targetAddress",
  }
end

Instance Method Details

#to_jsiiObject



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'code_star_notifications/cfn_notification_rule_props.rb', line 122

def to_jsii
  result = {}
  result.merge!({
    "detailType" => @detail_type,
    "eventTypeIds" => @event_type_ids,
    "name" => @name,
    "resource" => @resource,
    "targets" => @targets,
    "createdBy" => @created_by,
    "eventTypeId" => @event_type_id,
    "status" => @status,
    "tags" => @tags,
    "targetAddress" => @target_address,
  })
  result.compact
end