Class: AWSCDK::CloudWatchActions::LambdaAction

Inherits:
Jsii::Object
  • Object
show all
Includes:
AWSCDK::CloudWatch::IAlarmAction
Defined in:
cloud_watch_actions/lambda_action.rb

Overview

Use a Lambda action as an Alarm action.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(lambda_function, props = nil) ⇒ LambdaAction

Returns a new instance of LambdaAction.



11
12
13
14
15
16
# File 'cloud_watch_actions/lambda_action.rb', line 11

def initialize(lambda_function, props = nil)
  props = props.is_a?(Hash) ? ::AWSCDK::CloudWatchActions::LambdaActionProps.new(**props.transform_keys(&:to_sym)) : props
  Jsii::Type.check_type(lambda_function, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuYXdzX2xhbWJkYS5JRnVuY3Rpb24ifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYW1iZGEuSVZlcnNpb24ifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYW1iZGEuSUFsaWFzIn1dfX0=")), "lambdaFunction")
  Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xvdWR3YXRjaF9hY3Rpb25zLkxhbWJkYUFjdGlvblByb3BzIn0=")), "props") unless props.nil?
  Jsii::Object.instance_method(:initialize).bind(self).call(lambda_function, props)
end

Class Method Details

.jsii_overridable_methodsObject



18
19
20
21
22
# File 'cloud_watch_actions/lambda_action.rb', line 18

def self.jsii_overridable_methods
  {
    :bind => { kind: :method, name: "bind", is_optional: false },
  }
end

Instance Method Details

#bind(scope, alarm) ⇒ AWSCDK::CloudWatch::AlarmActionConfig

Returns an alarm action configuration to use a Lambda action as an alarm action.



30
31
32
33
34
# File 'cloud_watch_actions/lambda_action.rb', line 30

def bind(scope, alarm)
  Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope")
  Jsii::Type.check_type(alarm, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xvdWR3YXRjaC5JQWxhcm0ifQ==")), "alarm")
  jsii_call_method("bind", [scope, alarm])
end