Class: AWSCDK::ARCRegionSwitch::CfnPlan::AssociatedAlarmProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
arc_region_switch/cfn_plan.rb

Overview

An Amazon CloudWatch alarm associated with a Region switch plan.

These alarms can be used to trigger automatic execution of the plan.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(alarm_type:, resource_identifier:, cross_account_role: nil, external_id: nil) ⇒ AssociatedAlarmProperty

Returns a new instance of AssociatedAlarmProperty.

Parameters:

  • alarm_type (String)

    The alarm type for an associated alarm.

  • resource_identifier (String)

    The resource identifier for alarms that you associate with a plan.

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

    The cross account role for the configuration.

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

    The external ID (secret key) for the configuration.



855
856
857
858
859
860
861
862
863
864
# File 'arc_region_switch/cfn_plan.rb', line 855

def initialize(alarm_type:, resource_identifier:, cross_account_role: nil, external_id: nil)
  @alarm_type = alarm_type
  Jsii::Type.check_type(@alarm_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "alarmType")
  @resource_identifier = resource_identifier
  Jsii::Type.check_type(@resource_identifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "resourceIdentifier")
  @cross_account_role = 
  Jsii::Type.check_type(@cross_account_role, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "crossAccountRole") unless @cross_account_role.nil?
  @external_id = external_id
  Jsii::Type.check_type(@external_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "externalId") unless @external_id.nil?
end

Instance Attribute Details

#alarm_typeString (readonly)

The alarm type for an associated alarm.

An associated CloudWatch alarm can be an application health alarm or a trigger alarm.



872
873
874
# File 'arc_region_switch/cfn_plan.rb', line 872

def alarm_type
  @alarm_type
end

#cross_account_roleString? (readonly)

The cross account role for the configuration.



882
883
884
# File 'arc_region_switch/cfn_plan.rb', line 882

def 
  @cross_account_role
end

#external_idString? (readonly)

The external ID (secret key) for the configuration.



887
888
889
# File 'arc_region_switch/cfn_plan.rb', line 887

def external_id
  @external_id
end

#resource_identifierString (readonly)

The resource identifier for alarms that you associate with a plan.



877
878
879
# File 'arc_region_switch/cfn_plan.rb', line 877

def resource_identifier
  @resource_identifier
end

Class Method Details

.jsii_propertiesObject



889
890
891
892
893
894
895
896
# File 'arc_region_switch/cfn_plan.rb', line 889

def self.jsii_properties
  {
    :alarm_type => "alarmType",
    :resource_identifier => "resourceIdentifier",
    :cross_account_role => "crossAccountRole",
    :external_id => "externalId",
  }
end

Instance Method Details

#to_jsiiObject



898
899
900
901
902
903
904
905
906
907
# File 'arc_region_switch/cfn_plan.rb', line 898

def to_jsii
  result = {}
  result.merge!({
    "alarmType" => @alarm_type,
    "resourceIdentifier" => @resource_identifier,
    "crossAccountRole" => @cross_account_role,
    "externalId" => @external_id,
  })
  result.compact
end