Class: AWSCDK::StepFunctions::SingleStateOptions

Inherits:
ParallelProps
  • Object
show all
Defined in:
step_functions/single_state_options.rb

Overview

Options for creating a single state.

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, input_path: nil, output_path: nil, outputs: nil, arguments: nil, parameters: nil, result_path: nil, result_selector: nil, prefix_states: nil, state_id: nil) ⇒ SingleStateOptions

Returns a new instance of SingleStateOptions.

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.

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

    JSONPath expression to select part of the state to be the input to this state.

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

    JSONPath expression to select part of the state to be the output to this state.

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

    Used to specify and transform output from the state.

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

    Parameters pass a collection of key-value pairs, either static values or JSONata expressions that select from the input.

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

    Parameters pass a collection of key-value pairs, either static values or JSONPath expressions that select from the input.

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

    JSONPath expression to indicate where to inject the state's output.

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

    The JSON that will replace the state's raw result and become the effective result before ResultPath is applied.

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

    String to prefix all stateIds in the state machine with.

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

    ID of newly created containing state.



20
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
# File 'step_functions/single_state_options.rb', line 20

def initialize(comment: nil, query_language: nil, state_name: nil, assign: nil, input_path: nil, output_path: nil, outputs: nil, arguments: nil, parameters: nil, result_path: nil, result_selector: nil, prefix_states: nil, state_id: 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?
  @input_path = input_path
  Jsii::Type.check_type(@input_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "inputPath") unless @input_path.nil?
  @output_path = output_path
  Jsii::Type.check_type(@output_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "outputPath") unless @output_path.nil?
  @outputs = outputs
  Jsii::Type.check_type(@outputs, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "outputs") unless @outputs.nil?
  @arguments = arguments
  Jsii::Type.check_type(@arguments, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "arguments") unless @arguments.nil?
  @parameters = parameters
  Jsii::Type.check_type(@parameters, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "parameters") unless @parameters.nil?
  @result_path = result_path
  Jsii::Type.check_type(@result_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "resultPath") unless @result_path.nil?
  @result_selector = result_selector
  Jsii::Type.check_type(@result_selector, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "resultSelector") unless @result_selector.nil?
  @prefix_states = prefix_states
  Jsii::Type.check_type(@prefix_states, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "prefixStates") unless @prefix_states.nil?
  @state_id = state_id
  Jsii::Type.check_type(@state_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "stateId") unless @state_id.nil?
end

Instance Attribute Details

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

Note:

Default: No arguments

Parameters pass a collection of key-value pairs, either static values or JSONata expressions that select from the input.

Returns:

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

See Also:



108
109
110
# File 'step_functions/single_state_options.rb', line 108

def arguments
  @arguments
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:



74
75
76
# File 'step_functions/single_state_options.rb', line 74

def assign
  @assign
end

#commentString? (readonly)

Note:

Default: No comment

A comment describing this state.

Returns:

  • (String, nil)


53
54
55
# File 'step_functions/single_state_options.rb', line 53

def comment
  @comment
end

#input_pathString? (readonly)

Note:

Default: $

JSONPath expression to select part of the state to be the input to this state.

May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}.

Returns:

  • (String, nil)


82
83
84
# File 'step_functions/single_state_options.rb', line 82

def input_path
  @input_path
end

#output_pathString? (readonly)

Note:

Default: $

JSONPath expression to select part of the state to be the output to this state.

May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}.

Returns:

  • (String, nil)


90
91
92
# File 'step_functions/single_state_options.rb', line 90

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



102
103
104
# File 'step_functions/single_state_options.rb', line 102

def outputs
  @outputs
end

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

Note:

Default: No parameters

Parameters pass a collection of key-value pairs, either static values or JSONPath expressions that select from the input.



114
115
116
# File 'step_functions/single_state_options.rb', line 114

def parameters
  @parameters
end

#prefix_statesString? (readonly)

Note:

Default: stateId

String to prefix all stateIds in the state machine with.

Returns:

  • (String, nil)


136
137
138
# File 'step_functions/single_state_options.rb', line 136

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



61
62
63
# File 'step_functions/single_state_options.rb', line 61

def query_language
  @query_language
end

#result_pathString? (readonly)

Note:

Default: $

JSONPath expression to indicate where to inject the state's output.

May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output.

Returns:

  • (String, nil)


122
123
124
# File 'step_functions/single_state_options.rb', line 122

def result_path
  @result_path
end

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

Note:

Default: - None

The JSON that will replace the state's raw result and become the effective result before ResultPath is applied.

You can use ResultSelector to create a payload with values that are static or selected from the state's raw result.



131
132
133
# File 'step_functions/single_state_options.rb', line 131

def result_selector
  @result_selector
end

#state_idString? (readonly)

Note:

Default: Construct ID of the StateMachineFragment

ID of newly created containing state.

Returns:

  • (String, nil)


141
142
143
# File 'step_functions/single_state_options.rb', line 141

def state_id
  @state_id
end

#state_nameString? (readonly)

Note:

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

Optional name for this state.

Returns:

  • (String, nil)


66
67
68
# File 'step_functions/single_state_options.rb', line 66

def state_name
  @state_name
end

Class Method Details

.jsii_propertiesObject



143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
# File 'step_functions/single_state_options.rb', line 143

def self.jsii_properties
  {
    :comment => "comment",
    :query_language => "queryLanguage",
    :state_name => "stateName",
    :assign => "assign",
    :input_path => "inputPath",
    :output_path => "outputPath",
    :outputs => "outputs",
    :arguments => "arguments",
    :parameters => "parameters",
    :result_path => "resultPath",
    :result_selector => "resultSelector",
    :prefix_states => "prefixStates",
    :state_id => "stateId",
  }
end

Instance Method Details

#to_jsiiObject



161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
# File 'step_functions/single_state_options.rb', line 161

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "comment" => @comment,
    "queryLanguage" => @query_language,
    "stateName" => @state_name,
    "assign" => @assign,
    "inputPath" => @input_path,
    "outputPath" => @output_path,
    "outputs" => @outputs,
    "arguments" => @arguments,
    "parameters" => @parameters,
    "resultPath" => @result_path,
    "resultSelector" => @result_selector,
    "prefixStates" => @prefix_states,
    "stateId" => @state_id,
  })
  result.compact
end