Class: AWSCDK::SchedulerTargets::SQSSendMessageProps

Inherits:
ScheduleTargetBaseProps
  • Object
show all
Defined in:
scheduler_targets/sqs_send_message_props.rb

Overview

Properties for a SQS Queue Target.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(dead_letter_queue: nil, input: nil, max_event_age: nil, retry_attempts: nil, role: nil, message_group_id: nil) ⇒ SQSSendMessageProps

Returns a new instance of SQSSendMessageProps.

Parameters:

  • dead_letter_queue (AWSCDK::SQS::IQueue, nil) (defaults to: nil)

    The SQS queue to be used as deadLetterQueue.

  • input (AWSCDK::Scheduler::ScheduleTargetInput, nil) (defaults to: nil)

    Input passed to the target.

  • max_event_age (AWSCDK::Duration, nil) (defaults to: nil)

    The maximum age of a request that Scheduler sends to a target for processing.

  • retry_attempts (Numeric, nil) (defaults to: nil)

    The maximum number of times to retry when the target returns an error.

  • role (AWSCDK::IAM::IRole, nil) (defaults to: nil)

    An execution role is an IAM role that EventBridge Scheduler assumes in order to interact with other AWS services on your behalf.

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

    The FIFO message group ID to use as the target.



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'scheduler_targets/sqs_send_message_props.rb', line 13

def initialize(dead_letter_queue: nil, input: nil, max_event_age: nil, retry_attempts: nil, role: nil, message_group_id: nil)
  @dead_letter_queue = dead_letter_queue
  Jsii::Type.check_type(@dead_letter_queue, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3FzLklRdWV1ZSJ9")), "deadLetterQueue") unless @dead_letter_queue.nil?
  @input = input
  Jsii::Type.check_type(@input, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc2NoZWR1bGVyLlNjaGVkdWxlVGFyZ2V0SW5wdXQifQ==")), "input") unless @input.nil?
  @max_event_age = max_event_age
  Jsii::Type.check_type(@max_event_age, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "maxEventAge") unless @max_event_age.nil?
  @retry_attempts = retry_attempts
  Jsii::Type.check_type(@retry_attempts, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "retryAttempts") unless @retry_attempts.nil?
  @role = role
  Jsii::Type.check_type(@role, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklSb2xlIn0=")), "role") unless @role.nil?
  @message_group_id = message_group_id
  Jsii::Type.check_type(@message_group_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "messageGroupId") unless @message_group_id.nil?
end

Instance Attribute Details

#dead_letter_queueAWSCDK::SQS::IQueue? (readonly)

Note:

Default: - no dead-letter queue

The SQS queue to be used as deadLetterQueue.

The events not successfully delivered are automatically retried for a specified period of time, depending on the retry policy of the target. If an event is not delivered before all retry attempts are exhausted, it will be sent to the dead letter queue.

Returns:



36
37
38
# File 'scheduler_targets/sqs_send_message_props.rb', line 36

def dead_letter_queue
  @dead_letter_queue
end

#inputAWSCDK::Scheduler::ScheduleTargetInput? (readonly)

Note:

Default: - no input.

Input passed to the target.



41
42
43
# File 'scheduler_targets/sqs_send_message_props.rb', line 41

def input
  @input
end

#max_event_ageAWSCDK::Duration? (readonly)

Note:

Default: Duration.hours(24)

The maximum age of a request that Scheduler sends to a target for processing.

Minimum value of 60. Maximum value of 86400.

Returns:



49
50
51
# File 'scheduler_targets/sqs_send_message_props.rb', line 49

def max_event_age
  @max_event_age
end

#message_group_idString? (readonly)

Note:

Default: - no message group ID

The FIFO message group ID to use as the target.

This must be specified when the target is a FIFO queue. If you specify a FIFO queue as a target, the queue must have content-based deduplication enabled.

A length of message_group_id must be between 1 and 128.



77
78
79
# File 'scheduler_targets/sqs_send_message_props.rb', line 77

def message_group_id
  @message_group_id
end

#retry_attemptsNumeric? (readonly)

Note:

Default: 185

The maximum number of times to retry when the target returns an error.

Minimum value of 0. Maximum value of 185.

Returns:

  • (Numeric, nil)


57
58
59
# File 'scheduler_targets/sqs_send_message_props.rb', line 57

def retry_attempts
  @retry_attempts
end

#roleAWSCDK::IAM::IRole? (readonly)

Note:

Default: - created by target

An execution role is an IAM role that EventBridge Scheduler assumes in order to interact with other AWS services on your behalf.

If none provided templates target will automatically create an IAM role with all the minimum necessary permissions to interact with the templated target. If you wish you may specify your own IAM role, then the templated targets will grant minimal required permissions.

Returns:



66
67
68
# File 'scheduler_targets/sqs_send_message_props.rb', line 66

def role
  @role
end

Class Method Details

.jsii_propertiesObject



79
80
81
82
83
84
85
86
87
88
# File 'scheduler_targets/sqs_send_message_props.rb', line 79

def self.jsii_properties
  {
    :dead_letter_queue => "deadLetterQueue",
    :input => "input",
    :max_event_age => "maxEventAge",
    :retry_attempts => "retryAttempts",
    :role => "role",
    :message_group_id => "messageGroupId",
  }
end

Instance Method Details

#to_jsiiObject



90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'scheduler_targets/sqs_send_message_props.rb', line 90

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "deadLetterQueue" => @dead_letter_queue,
    "input" => @input,
    "maxEventAge" => @max_event_age,
    "retryAttempts" => @retry_attempts,
    "role" => @role,
    "messageGroupId" => @message_group_id,
  })
  result.compact
end