Class: AWSCDK::StepFunctions::ChoiceJsonataProps

Inherits:
StateBaseProps
  • Object
show all
Defined in:
step_functions/choice_jsonata_props.rb

Overview

Properties for defining a Choice state that 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, assign: nil, outputs: nil) ⇒ ChoiceJsonataProps

Returns a new instance of ChoiceJsonataProps.

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.

  • 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.



13
14
15
16
17
18
19
20
21
22
23
24
# File 'step_functions/choice_jsonata_props.rb', line 13

def initialize(comment: nil, query_language: nil, state_name: nil, assign: nil, outputs: 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?
  @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?
end

Instance Attribute Details

#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:



51
52
53
# File 'step_functions/choice_jsonata_props.rb', line 51

def assign
  @assign
end

#commentString? (readonly)

Note:

Default: No comment

A comment describing this state.

Returns:

  • (String, nil)


30
31
32
# File 'step_functions/choice_jsonata_props.rb', line 30

def comment
  @comment
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.



63
64
65
# File 'step_functions/choice_jsonata_props.rb', line 63

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.



38
39
40
# File 'step_functions/choice_jsonata_props.rb', line 38

def query_language
  @query_language
end

#state_nameString? (readonly)

Note:

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

Optional name for this state.

Returns:

  • (String, nil)


43
44
45
# File 'step_functions/choice_jsonata_props.rb', line 43

def state_name
  @state_name
end

Class Method Details

.jsii_propertiesObject



65
66
67
68
69
70
71
72
73
# File 'step_functions/choice_jsonata_props.rb', line 65

def self.jsii_properties
  {
    :comment => "comment",
    :query_language => "queryLanguage",
    :state_name => "stateName",
    :assign => "assign",
    :outputs => "outputs",
  }
end

Instance Method Details

#to_jsiiObject



75
76
77
78
79
80
81
82
83
84
85
86
# File 'step_functions/choice_jsonata_props.rb', line 75

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "comment" => @comment,
    "queryLanguage" => @query_language,
    "stateName" => @state_name,
    "assign" => @assign,
    "outputs" => @outputs,
  })
  result.compact
end