Class: AWSCDK::Events::RuleTargetConfig

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
events/rule_target_config.rb

Overview

Properties for an event rule target.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(arn:, app_sync_parameters: nil, batch_parameters: nil, dead_letter_config: nil, ecs_parameters: nil, http_parameters: nil, input: nil, kinesis_parameters: nil, redshift_data_parameters: nil, retry_policy: nil, role: nil, run_command_parameters: nil, sqs_parameters: nil, target_resource: nil) ⇒ RuleTargetConfig

Returns a new instance of RuleTargetConfig.

Parameters:



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'events/rule_target_config.rb', line 21

def initialize(arn:, app_sync_parameters: nil, batch_parameters: nil, dead_letter_config: nil, ecs_parameters: nil, http_parameters: nil, input: nil, kinesis_parameters: nil, redshift_data_parameters: nil, retry_policy: nil, role: nil, run_command_parameters: nil, sqs_parameters: nil, target_resource: nil)
  @arn = arn
  Jsii::Type.check_type(@arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "arn")
  @app_sync_parameters = app_sync_parameters.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::AppSyncParametersProperty.new(**app_sync_parameters.transform_keys(&:to_sym)) : app_sync_parameters
  Jsii::Type.check_type(@app_sync_parameters, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuQXBwU3luY1BhcmFtZXRlcnNQcm9wZXJ0eSJ9")), "appSyncParameters") unless @app_sync_parameters.nil?
  @batch_parameters = batch_parameters.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::BatchParametersProperty.new(**batch_parameters.transform_keys(&:to_sym)) : batch_parameters
  Jsii::Type.check_type(@batch_parameters, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuQmF0Y2hQYXJhbWV0ZXJzUHJvcGVydHkifQ==")), "batchParameters") unless @batch_parameters.nil?
  @dead_letter_config = dead_letter_config.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::DeadLetterConfigProperty.new(**dead_letter_config.transform_keys(&:to_sym)) : dead_letter_config
  Jsii::Type.check_type(@dead_letter_config, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuRGVhZExldHRlckNvbmZpZ1Byb3BlcnR5In0=")), "deadLetterConfig") unless @dead_letter_config.nil?
  @ecs_parameters = ecs_parameters.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::ECSParametersProperty.new(**ecs_parameters.transform_keys(&:to_sym)) : ecs_parameters
  Jsii::Type.check_type(@ecs_parameters, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuRWNzUGFyYW1ldGVyc1Byb3BlcnR5In0=")), "ecsParameters") unless @ecs_parameters.nil?
  @http_parameters = http_parameters.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::HttpParametersProperty.new(**http_parameters.transform_keys(&:to_sym)) : http_parameters
  Jsii::Type.check_type(@http_parameters, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuSHR0cFBhcmFtZXRlcnNQcm9wZXJ0eSJ9")), "httpParameters") unless @http_parameters.nil?
  @input = input
  Jsii::Type.check_type(@input, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLlJ1bGVUYXJnZXRJbnB1dCJ9")), "input") unless @input.nil?
  @kinesis_parameters = kinesis_parameters.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::KinesisParametersProperty.new(**kinesis_parameters.transform_keys(&:to_sym)) : kinesis_parameters
  Jsii::Type.check_type(@kinesis_parameters, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuS2luZXNpc1BhcmFtZXRlcnNQcm9wZXJ0eSJ9")), "kinesisParameters") unless @kinesis_parameters.nil?
  @redshift_data_parameters = redshift_data_parameters.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::RedshiftDataParametersProperty.new(**redshift_data_parameters.transform_keys(&:to_sym)) : redshift_data_parameters
  Jsii::Type.check_type(@redshift_data_parameters, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuUmVkc2hpZnREYXRhUGFyYW1ldGVyc1Byb3BlcnR5In0=")), "redshiftDataParameters") unless @redshift_data_parameters.nil?
  @retry_policy = retry_policy.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::RetryPolicyProperty.new(**retry_policy.transform_keys(&:to_sym)) : retry_policy
  Jsii::Type.check_type(@retry_policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuUmV0cnlQb2xpY3lQcm9wZXJ0eSJ9")), "retryPolicy") unless @retry_policy.nil?
  @role = role
  Jsii::Type.check_type(@role, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklSb2xlIn0=")), "role") unless @role.nil?
  @run_command_parameters = run_command_parameters.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::RunCommandParametersProperty.new(**run_command_parameters.transform_keys(&:to_sym)) : run_command_parameters
  Jsii::Type.check_type(@run_command_parameters, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuUnVuQ29tbWFuZFBhcmFtZXRlcnNQcm9wZXJ0eSJ9")), "runCommandParameters") unless @run_command_parameters.nil?
  @sqs_parameters = sqs_parameters.is_a?(Hash) ? ::AWSCDK::Events::CfnRule::SQSParametersProperty.new(**sqs_parameters.transform_keys(&:to_sym)) : sqs_parameters
  Jsii::Type.check_type(@sqs_parameters, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZlbnRzLkNmblJ1bGUuU3FzUGFyYW1ldGVyc1Byb3BlcnR5In0=")), "sqsParameters") unless @sqs_parameters.nil?
  @target_resource = target_resource
  Jsii::Type.check_type(@target_resource, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLklDb25zdHJ1Y3QifQ==")), "targetResource") unless @target_resource.nil?
end

Instance Attribute Details

#app_sync_parametersAWSCDK::Events::CfnRule::AppSyncParametersProperty? (readonly)

Note:

Default: - None

Contains the GraphQL operation to be parsed and executed, if the event target is an AWS AppSync API.



60
61
62
# File 'events/rule_target_config.rb', line 60

def app_sync_parameters
  @app_sync_parameters
end

#arnString (readonly)

The Amazon Resource Name (ARN) of the target.

Returns:

  • (String)


55
56
57
# File 'events/rule_target_config.rb', line 55

def arn
  @arn
end

#batch_parametersAWSCDK::Events::CfnRule::BatchParametersProperty? (readonly)

Note:

Default: no parameters set

Parameters used when the rule invokes Amazon AWS Batch Job/Queue.



65
66
67
# File 'events/rule_target_config.rb', line 65

def batch_parameters
  @batch_parameters
end

#dead_letter_configAWSCDK::Events::CfnRule::DeadLetterConfigProperty? (readonly)

Note:

Default: no dead-letter queue set

Contains information about a dead-letter queue configuration.



70
71
72
# File 'events/rule_target_config.rb', line 70

def dead_letter_config
  @dead_letter_config
end

#ecs_parametersAWSCDK::Events::CfnRule::ECSParametersProperty? (readonly)

The Amazon ECS task definition and task count to use, if the event target is an Amazon ECS task.



74
75
76
# File 'events/rule_target_config.rb', line 74

def ecs_parameters
  @ecs_parameters
end

#http_parametersAWSCDK::Events::CfnRule::HttpParametersProperty? (readonly)

Note:

Default: - None

Contains the HTTP parameters to use when the target is a API Gateway REST endpoint or EventBridge API destination.



79
80
81
# File 'events/rule_target_config.rb', line 79

def http_parameters
  @http_parameters
end

#inputAWSCDK::Events::RuleTargetInput? (readonly)

Note:

Default: the entire event

What input to send to the event target.



84
85
86
# File 'events/rule_target_config.rb', line 84

def input
  @input
end

#kinesis_parametersAWSCDK::Events::CfnRule::KinesisParametersProperty? (readonly)

Settings that control shard assignment, when the target is a Kinesis stream.

If you don't include this parameter, eventId is used as the partition key.



91
92
93
# File 'events/rule_target_config.rb', line 91

def kinesis_parameters
  @kinesis_parameters
end

#redshift_data_parametersAWSCDK::Events::CfnRule::RedshiftDataParametersProperty? (readonly)

Note:

Default: - no parameters set

Parameters used when the rule invokes Amazon Redshift Queries.



96
97
98
# File 'events/rule_target_config.rb', line 96

def redshift_data_parameters
  @redshift_data_parameters
end

#retry_policyAWSCDK::Events::CfnRule::RetryPolicyProperty? (readonly)

Note:

Default: EventBridge default retry policy

A RetryPolicy object that includes information about the retry policy settings.



101
102
103
# File 'events/rule_target_config.rb', line 101

def retry_policy
  @retry_policy
end

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

Role to use to invoke this event target.

Returns:



105
106
107
# File 'events/rule_target_config.rb', line 105

def role
  @role
end

#run_command_parametersAWSCDK::Events::CfnRule::RunCommandParametersProperty? (readonly)

Parameters used when the rule invokes Amazon EC2 Systems Manager Run Command.



109
110
111
# File 'events/rule_target_config.rb', line 109

def run_command_parameters
  @run_command_parameters
end

#sqs_parametersAWSCDK::Events::CfnRule::SQSParametersProperty? (readonly)

Parameters used when the FIFO sqs queue is used an event target by the rule.



113
114
115
# File 'events/rule_target_config.rb', line 113

def sqs_parameters
  @sqs_parameters
end

#target_resourceConstructs::IConstruct? (readonly)

Note:

Default: the target is not backed by any resource

The resource that is backing this target.

This is the resource that will actually have some action performed on it when used as a target (for example, start a build for a CodeBuild project). We need it to determine whether the rule belongs to a different account than the target - if so, we generate a more complex setup, including an additional stack containing the EventBusPolicy.



125
126
127
# File 'events/rule_target_config.rb', line 125

def target_resource
  @target_resource
end

Class Method Details

.jsii_propertiesObject



127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
# File 'events/rule_target_config.rb', line 127

def self.jsii_properties
  {
    :arn => "arn",
    :app_sync_parameters => "appSyncParameters",
    :batch_parameters => "batchParameters",
    :dead_letter_config => "deadLetterConfig",
    :ecs_parameters => "ecsParameters",
    :http_parameters => "httpParameters",
    :input => "input",
    :kinesis_parameters => "kinesisParameters",
    :redshift_data_parameters => "redshiftDataParameters",
    :retry_policy => "retryPolicy",
    :role => "role",
    :run_command_parameters => "runCommandParameters",
    :sqs_parameters => "sqsParameters",
    :target_resource => "targetResource",
  }
end

Instance Method Details

#to_jsiiObject



146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
# File 'events/rule_target_config.rb', line 146

def to_jsii
  result = {}
  result.merge!({
    "arn" => @arn,
    "appSyncParameters" => @app_sync_parameters,
    "batchParameters" => @batch_parameters,
    "deadLetterConfig" => @dead_letter_config,
    "ecsParameters" => @ecs_parameters,
    "httpParameters" => @http_parameters,
    "input" => @input,
    "kinesisParameters" => @kinesis_parameters,
    "redshiftDataParameters" => @redshift_data_parameters,
    "retryPolicy" => @retry_policy,
    "role" => @role,
    "runCommandParameters" => @run_command_parameters,
    "sqsParameters" => @sqs_parameters,
    "targetResource" => @target_resource,
  })
  result.compact
end