Class: AWSCDK::StepFunctionsTasks::EventBridgeSchedulerCreateScheduleTaskJsonataProps

Inherits:
AWSCDK::StepFunctions::TaskStateJsonataBaseProps
  • Object
show all
Defined in:
step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb

Overview

Properties for creating an AWS EventBridge Scheduler schedule using JSONata.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(comment: nil, query_language: nil, state_name: nil, credentials: nil, heartbeat: nil, heartbeat_timeout: nil, integration_pattern: nil, task_timeout: nil, timeout: nil, assign: nil, outputs: nil, schedule:, schedule_name:, target:, action_after_completion: nil, client_token: nil, description: nil, enabled: nil, end_date: nil, flexible_time_window: nil, group_name: nil, kms_key: nil, start_date: nil, timezone: nil) ⇒ EventBridgeSchedulerCreateScheduleTaskJsonataProps

Returns a new instance of EventBridgeSchedulerCreateScheduleTaskJsonataProps.

Parameters:

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

    A comment describing this state.

  • query_language (AWSCDK::StepFunctions::QueryLanguage, nil) (defaults to: nil)

    The name of the query language used by the state.

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

    Optional name for this state.

  • credentials (AWSCDK::StepFunctions::Credentials, nil) (defaults to: nil)

    Credentials for an IAM Role that the State Machine assumes for executing the task.

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

    Timeout for the heartbeat.

  • heartbeat_timeout (AWSCDK::StepFunctions::Timeout, nil) (defaults to: nil)

    Timeout for the heartbeat.

  • integration_pattern (AWSCDK::StepFunctions::IntegrationPattern, nil) (defaults to: nil)

    AWS Step Functions integrates with services directly in the Amazon States Language.

  • task_timeout (AWSCDK::StepFunctions::Timeout, nil) (defaults to: nil)

    Timeout for the task.

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

    Timeout for the task.

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

    Workflow variables to store in this step.

  • outputs (Object, nil) (defaults to: nil)

    Used to specify and transform output from the state.

  • schedule (AWSCDK::StepFunctionsTasks::Schedule)

    The schedule that defines when the schedule will trigger.

  • schedule_name (String)

    Schedule name.

  • target (AWSCDK::StepFunctionsTasks::EventBridgeSchedulerTarget)

    The schedule's target.

  • action_after_completion (AWSCDK::StepFunctionsTasks::ActionAfterCompletion, nil) (defaults to: nil)

    Specifies the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.

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

    Unique, case-sensitive identifier to ensure the idempotency of the request.

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

    The description for the schedule.

  • enabled (Boolean, nil) (defaults to: nil)

    Specifies whether the schedule is enabled or disabled.

  • end_date (DateTime, nil) (defaults to: nil)

    The date, in UTC, before which the schedule can invoke its target.

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

    The maximum time window during which a schedule can be invoked.

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

    The name of the schedule group to associate with this schedule.

  • kms_key (AWSCDK::KMS::IKey, nil) (defaults to: nil)

    The customer managed KMS key that EventBridge Scheduler will use to encrypt and decrypt payload.

  • start_date (DateTime, nil) (defaults to: nil)

    The date, in UTC, after which the schedule can begin invoking its target.

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

    The timezone in which the scheduling expression is evaluated.



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 31

def initialize(comment: nil, query_language: nil, state_name: nil, credentials: nil, heartbeat: nil, heartbeat_timeout: nil, integration_pattern: nil, task_timeout: nil, timeout: nil, assign: nil, outputs: nil, schedule:, schedule_name:, target:, action_after_completion: nil, client_token: nil, description: nil, enabled: nil, end_date: nil, flexible_time_window: nil, group_name: nil, kms_key: nil, start_date: nil, timezone: nil)
  @comment = comment
  Jsii::Type.check_type(@comment, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "comment") unless @comment.nil?
  @query_language = query_language
  Jsii::Type.check_type(@query_language, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5RdWVyeUxhbmd1YWdlIn0=")), "queryLanguage") unless @query_language.nil?
  @state_name = state_name
  Jsii::Type.check_type(@state_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "stateName") unless @state_name.nil?
  @credentials = credentials.is_a?(Hash) ? ::AWSCDK::StepFunctions::Credentials.new(**credentials.transform_keys(&:to_sym)) : credentials
  Jsii::Type.check_type(@credentials, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5DcmVkZW50aWFscyJ9")), "credentials") unless @credentials.nil?
  @heartbeat = heartbeat
  Jsii::Type.check_type(@heartbeat, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "heartbeat") unless @heartbeat.nil?
  @heartbeat_timeout = heartbeat_timeout
  Jsii::Type.check_type(@heartbeat_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5UaW1lb3V0In0=")), "heartbeatTimeout") unless @heartbeat_timeout.nil?
  @integration_pattern = integration_pattern
  Jsii::Type.check_type(@integration_pattern, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5JbnRlZ3JhdGlvblBhdHRlcm4ifQ==")), "integrationPattern") unless @integration_pattern.nil?
  @task_timeout = task_timeout
  Jsii::Type.check_type(@task_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5UaW1lb3V0In0=")), "taskTimeout") unless @task_timeout.nil?
  @timeout = timeout
  Jsii::Type.check_type(@timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "timeout") unless @timeout.nil?
  @assign = assign
  Jsii::Type.check_type(@assign, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "assign") unless @assign.nil?
  @outputs = outputs
  Jsii::Type.check_type(@outputs, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "outputs") unless @outputs.nil?
  @schedule = schedule
  Jsii::Type.check_type(@schedule, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5TY2hlZHVsZSJ9")), "schedule")
  @schedule_name = schedule_name
  Jsii::Type.check_type(@schedule_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "scheduleName")
  @target = target
  Jsii::Type.check_type(@target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5FdmVudEJyaWRnZVNjaGVkdWxlclRhcmdldCJ9")), "target")
  @action_after_completion = action_after_completion
  Jsii::Type.check_type(@action_after_completion, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5BY3Rpb25BZnRlckNvbXBsZXRpb24ifQ==")), "actionAfterCompletion") unless @action_after_completion.nil?
  @client_token = client_token
  Jsii::Type.check_type(@client_token, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "clientToken") unless @client_token.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @enabled = enabled
  Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "enabled") unless @enabled.nil?
  @end_date = end_date
  Jsii::Type.check_type(@end_date, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJkYXRlIn0=")), "endDate") unless @end_date.nil?
  @flexible_time_window = flexible_time_window
  Jsii::Type.check_type(@flexible_time_window, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "flexibleTimeWindow") unless @flexible_time_window.nil?
  @group_name = group_name
  Jsii::Type.check_type(@group_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "groupName") unless @group_name.nil?
  @kms_key = kms_key
  Jsii::Type.check_type(@kms_key, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa21zLklLZXkifQ==")), "kmsKey") unless @kms_key.nil?
  @start_date = start_date
  Jsii::Type.check_type(@start_date, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJkYXRlIn0=")), "startDate") unless @start_date.nil?
  @timezone = timezone
  Jsii::Type.check_type(@timezone, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "timezone") unless @timezone.nil?
end

Instance Attribute Details

#action_after_completionAWSCDK::StepFunctionsTasks::ActionAfterCompletion? (readonly)

Note:

Default: ActionAfterCompletion.NONE

Specifies the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.



183
184
185
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 183

def action_after_completion
  @action_after_completion
end

#assignHash{String => Object}? (readonly)

Note:

Default: - Not assign variables

Workflow variables to store in this step.

Using workflow variables, you can store data in a step and retrieve that data in future steps.

Returns:

  • (Hash{String => Object}, nil)

See Also:



153
154
155
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 153

def assign
  @assign
end

#client_tokenString? (readonly)

Note:

Default: - Automatically generated

Unique, case-sensitive identifier to ensure the idempotency of the request.

Returns:

  • (String, nil)


188
189
190
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 188

def client_token
  @client_token
end

#commentString? (readonly)

Note:

Default: No comment

A comment describing this state.

Returns:

  • (String, nil)


86
87
88
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 86

def comment
  @comment
end

#credentialsAWSCDK::StepFunctions::Credentials? (readonly)

Note:

Default: - None (Task is executed using the State Machine's execution role)

Credentials for an IAM Role that the State Machine assumes for executing the task.

This enables cross-account resource invocations.



107
108
109
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 107

def credentials
  @credentials
end

#descriptionString? (readonly)

Note:

Default: - No description

The description for the schedule.

Returns:

  • (String, nil)


193
194
195
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 193

def description
  @description
end

#enabledBoolean? (readonly)

Note:

Default: true

Specifies whether the schedule is enabled or disabled.

Returns:

  • (Boolean, nil)


198
199
200
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 198

def enabled
  @enabled
end

#end_dateDateTime? (readonly)

Note:

Default: - No end date

The date, in UTC, before which the schedule can invoke its target.

Depending on the schedule's recurrence expression, invocations might stop on, or before, the EndDate you specify. EventBridge Scheduler ignores EndDate for one-time schedules.

Returns:

  • (DateTime, nil)


206
207
208
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 206

def end_date
  @end_date
end

#flexible_time_windowAWSCDK::Duration? (readonly)

Note:

Default: - Flexible time window is not enabled.

The maximum time window during which a schedule can be invoked.

Minimum value is 1 minute. Maximum value is 1440 minutes (1 day).

Returns:



214
215
216
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 214

def flexible_time_window
  @flexible_time_window
end

#group_nameString? (readonly)

Note:

Default: - The default schedule group is used.

The name of the schedule group to associate with this schedule.

Returns:

  • (String, nil)


219
220
221
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 219

def group_name
  @group_name
end

#heartbeatAWSCDK::Duration? (readonly)

Deprecated.

use heartbeatTimeout

Note:

Default: - None

Timeout for the heartbeat.

Returns:



113
114
115
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 113

def heartbeat
  @heartbeat
end

#heartbeat_timeoutAWSCDK::StepFunctions::Timeout? (readonly)

Note:

Default: - None

Timeout for the heartbeat.

[disable-awslint:duration-prop-type] is needed because all props interface in aws-stepfunctions-tasks extend this interface



121
122
123
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 121

def heartbeat_timeout
  @heartbeat_timeout
end

#integration_patternAWSCDK::StepFunctions::IntegrationPattern? (readonly)

Note:

Default: - IntegrationPattern.REQUEST_RESPONSE for most tasks. IntegrationPattern.RUN_JOB for the following exceptions: BatchSubmitJob, EmrAddStep, EmrCreateCluster, EmrTerminationCluster, and EmrContainersStartJobRun.

AWS Step Functions integrates with services directly in the Amazon States Language.

You can control these AWS services using service integration patterns.

Depending on the AWS Service, the Service Integration Pattern availability will vary.



131
132
133
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 131

def integration_pattern
  @integration_pattern
end

#kms_keyAWSCDK::KMS::IKey? (readonly)

Note:

Default: - Use automatically generated KMS key

The customer managed KMS key that EventBridge Scheduler will use to encrypt and decrypt payload.



225
226
227
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 225

def kms_key
  @kms_key
end

#outputsObject? (readonly)

Note:

Default: - $states.result or $states.errorOutput

Used to specify and transform output from the state.

When specified, the value overrides the state output default. The output field accepts any JSON value (object, array, string, number, boolean, null). Any string value, including those inside objects or arrays, will be evaluated as JSONata if surrounded by % characters. Output also accepts a JSONata expression directly.



165
166
167
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 165

def outputs
  @outputs
end

#query_languageAWSCDK::StepFunctions::QueryLanguage? (readonly)

Note:

Default: - JSONPath

The name of the query language used by the state.

If the state does not contain a query_language field, then it will use the query language specified in the top-level query_language field.



94
95
96
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 94

def query_language
  @query_language
end

#scheduleAWSCDK::StepFunctionsTasks::Schedule (readonly)

The schedule that defines when the schedule will trigger.



170
171
172
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 170

def schedule
  @schedule
end

#schedule_nameString (readonly)

Schedule name.

Returns:

  • (String)


174
175
176
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 174

def schedule_name
  @schedule_name
end

#start_dateDateTime? (readonly)

Note:

Default: - No start date

The date, in UTC, after which the schedule can begin invoking its target.

Depending on the schedule's recurrence expression, invocations might occur on, or after, the StartDate you specify. EventBridge Scheduler ignores StartDate for one-time schedules.

Returns:

  • (DateTime, nil)


233
234
235
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 233

def start_date
  @start_date
end

#state_nameString? (readonly)

Note:

Default: - The construct ID will be used as state name

Optional name for this state.

Returns:

  • (String, nil)


99
100
101
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 99

def state_name
  @state_name
end

#targetAWSCDK::StepFunctionsTasks::EventBridgeSchedulerTarget (readonly)

The schedule's target.



178
179
180
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 178

def target
  @target
end

#task_timeoutAWSCDK::StepFunctions::Timeout? (readonly)

Note:

Default: - None

Timeout for the task.

[disable-awslint:duration-prop-type] is needed because all props interface in aws-stepfunctions-tasks extend this interface



139
140
141
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 139

def task_timeout
  @task_timeout
end

#timeoutAWSCDK::Duration? (readonly)

Deprecated.

use taskTimeout

Note:

Default: - None

Timeout for the task.

Returns:



145
146
147
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 145

def timeout
  @timeout
end

#timezoneString? (readonly)

Note:

Default: - UTC

The timezone in which the scheduling expression is evaluated.

Returns:

  • (String, nil)


238
239
240
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 238

def timezone
  @timezone
end

Class Method Details

.jsii_propertiesObject



240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 240

def self.jsii_properties
  {
    :comment => "comment",
    :query_language => "queryLanguage",
    :state_name => "stateName",
    :credentials => "credentials",
    :heartbeat => "heartbeat",
    :heartbeat_timeout => "heartbeatTimeout",
    :integration_pattern => "integrationPattern",
    :task_timeout => "taskTimeout",
    :timeout => "timeout",
    :assign => "assign",
    :outputs => "outputs",
    :schedule => "schedule",
    :schedule_name => "scheduleName",
    :target => "target",
    :action_after_completion => "actionAfterCompletion",
    :client_token => "clientToken",
    :description => "description",
    :enabled => "enabled",
    :end_date => "endDate",
    :flexible_time_window => "flexibleTimeWindow",
    :group_name => "groupName",
    :kms_key => "kmsKey",
    :start_date => "startDate",
    :timezone => "timezone",
  }
end

Instance Method Details

#to_jsiiObject



269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
# File 'step_functions_tasks/event_bridge_scheduler_create_schedule_task_jsonata_props.rb', line 269

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "comment" => @comment,
    "queryLanguage" => @query_language,
    "stateName" => @state_name,
    "credentials" => @credentials,
    "heartbeat" => @heartbeat,
    "heartbeatTimeout" => @heartbeat_timeout,
    "integrationPattern" => @integration_pattern,
    "taskTimeout" => @task_timeout,
    "timeout" => @timeout,
    "assign" => @assign,
    "outputs" => @outputs,
    "schedule" => @schedule,
    "scheduleName" => @schedule_name,
    "target" => @target,
    "actionAfterCompletion" => @action_after_completion,
    "clientToken" => @client_token,
    "description" => @description,
    "enabled" => @enabled,
    "endDate" => @end_date,
    "flexibleTimeWindow" => @flexible_time_window,
    "groupName" => @group_name,
    "kmsKey" => @kms_key,
    "startDate" => @start_date,
    "timezone" => @timezone,
  })
  result.compact
end