Class: AWSCDK::StepFunctions::DistributedMapJsonataProps
- Inherits:
-
StateBaseProps
- Object
- StateBaseProps
- AWSCDK::StepFunctions::DistributedMapJsonataProps
- Defined in:
- step_functions/distributed_map_jsonata_props.rb
Overview
Properties for configuring a Distribute Map state that using JSONata.
Instance Attribute Summary collapse
-
#assign ⇒ Hash{String => Object}?
readonly
Workflow variables to store in this step.
-
#comment ⇒ String?
readonly
A comment describing this state.
-
#item_batcher ⇒ AWSCDK::StepFunctions::ItemBatcher?
readonly
Specifies to process a group of items in a single child workflow execution.
-
#item_reader ⇒ AWSCDK::StepFunctions::IItemReader?
readonly
ItemReader.
-
#item_selector ⇒ Hash{String => Object}?
readonly
The JSON that you want to override your default iteration input (mutually exclusive with
parametersandjsonataItemSelector). -
#items ⇒ AWSCDK::StepFunctions::ProvideItems?
readonly
The array that the Map state will iterate over.
-
#jsonata_item_selector ⇒ String?
readonly
Jsonata expression that evaluates to a JSON array to override your default iteration input (mutually exclusive with
parametersanditemSelector). -
#jsonata_max_concurrency ⇒ String?
readonly
JSONata expression for MaxConcurrency.
-
#label ⇒ String?
readonly
Label.
-
#map_execution_type ⇒ AWSCDK::StepFunctions::StateMachineType?
readonly
MapExecutionType.
-
#max_concurrency ⇒ Numeric?
readonly
MaxConcurrency.
-
#outputs ⇒ Object?
readonly
Used to specify and transform output from the state.
-
#query_language ⇒ AWSCDK::StepFunctions::QueryLanguage?
readonly
The name of the query language used by the state.
-
#result_writer ⇒ AWSCDK::StepFunctions::ResultWriter?
readonly
deprecated
Deprecated.
Use {@link resultWriterV2 }
-
#result_writer_v2 ⇒ AWSCDK::StepFunctions::ResultWriterV2?
readonly
Configuration for S3 location in which to save Map Run results Enable "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2" feature in the context to use resultWriterV2 Example: stack.node.setContext("@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2", true);.
-
#state_name ⇒ String?
readonly
Optional name for this state.
-
#tolerated_failure_count ⇒ Numeric?
readonly
ToleratedFailureCount.
-
#tolerated_failure_percentage ⇒ Numeric?
readonly
ToleratedFailurePercentage.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(comment: nil, query_language: nil, state_name: nil, assign: nil, item_selector: nil, jsonata_item_selector: nil, jsonata_max_concurrency: nil, max_concurrency: nil, outputs: nil, items: nil, item_batcher: nil, item_reader: nil, label: nil, map_execution_type: nil, result_writer: nil, result_writer_v2: nil, tolerated_failure_count: nil, tolerated_failure_percentage: nil) ⇒ DistributedMapJsonataProps
constructor
A new instance of DistributedMapJsonataProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(comment: nil, query_language: nil, state_name: nil, assign: nil, item_selector: nil, jsonata_item_selector: nil, jsonata_max_concurrency: nil, max_concurrency: nil, outputs: nil, items: nil, item_batcher: nil, item_reader: nil, label: nil, map_execution_type: nil, result_writer: nil, result_writer_v2: nil, tolerated_failure_count: nil, tolerated_failure_percentage: nil) ⇒ DistributedMapJsonataProps
Returns a new instance of DistributedMapJsonataProps.
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 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 26 def initialize(comment: nil, query_language: nil, state_name: nil, assign: nil, item_selector: nil, jsonata_item_selector: nil, jsonata_max_concurrency: nil, max_concurrency: nil, outputs: nil, items: nil, item_batcher: nil, item_reader: nil, label: nil, map_execution_type: nil, result_writer: nil, result_writer_v2: nil, tolerated_failure_count: nil, tolerated_failure_percentage: 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? @item_selector = item_selector Jsii::Type.check_type(@item_selector, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "itemSelector") unless @item_selector.nil? @jsonata_item_selector = jsonata_item_selector Jsii::Type.check_type(@jsonata_item_selector, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "jsonataItemSelector") unless @jsonata_item_selector.nil? @jsonata_max_concurrency = jsonata_max_concurrency Jsii::Type.check_type(@jsonata_max_concurrency, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "jsonataMaxConcurrency") unless @jsonata_max_concurrency.nil? @max_concurrency = max_concurrency Jsii::Type.check_type(@max_concurrency, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxConcurrency") unless @max_concurrency.nil? @outputs = outputs Jsii::Type.check_type(@outputs, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "outputs") unless @outputs.nil? @items = items Jsii::Type.check_type(@items, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5Qcm92aWRlSXRlbXMifQ==")), "items") unless @items.nil? @item_batcher = item_batcher Jsii::Type.check_type(@item_batcher, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5JdGVtQmF0Y2hlciJ9")), "itemBatcher") unless @item_batcher.nil? @item_reader = item_reader Jsii::Type.check_type(@item_reader, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5JSXRlbVJlYWRlciJ9")), "itemReader") unless @item_reader.nil? @label = label Jsii::Type.check_type(@label, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "label") unless @label.nil? @map_execution_type = map_execution_type Jsii::Type.check_type(@map_execution_type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5TdGF0ZU1hY2hpbmVUeXBlIn0=")), "mapExecutionType") unless @map_execution_type.nil? @result_writer = result_writer Jsii::Type.check_type(@result_writer, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5SZXN1bHRXcml0ZXIifQ==")), "resultWriter") unless @result_writer.nil? @result_writer_v2 = result_writer_v2 Jsii::Type.check_type(@result_writer_v2, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9ucy5SZXN1bHRXcml0ZXJWMiJ9")), "resultWriterV2") unless @result_writer_v2.nil? @tolerated_failure_count = tolerated_failure_count Jsii::Type.check_type(@tolerated_failure_count, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "toleratedFailureCount") unless @tolerated_failure_count.nil? @tolerated_failure_percentage = tolerated_failure_percentage Jsii::Type.check_type(@tolerated_failure_percentage, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "toleratedFailurePercentage") unless @tolerated_failure_percentage.nil? end |
Instance Attribute Details
#assign ⇒ Hash{String => Object}? (readonly)
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.
90 91 92 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 90 def assign @assign end |
#comment ⇒ String? (readonly)
Default: No comment
A comment describing this state.
69 70 71 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 69 def comment @comment end |
#item_batcher ⇒ AWSCDK::StepFunctions::ItemBatcher? (readonly)
Default: - No itemBatcher
Specifies to process a group of items in a single child workflow execution.
145 146 147 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 145 def item_batcher @item_batcher end |
#item_reader ⇒ AWSCDK::StepFunctions::IItemReader? (readonly)
Default: - No itemReader
ItemReader.
Configuration for where to read items dataset in S3 to iterate
152 153 154 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 152 def item_reader @item_reader end |
#item_selector ⇒ Hash{String => Object}? (readonly)
Default: $
The JSON that you want to override your default iteration input (mutually exclusive with parameters and jsonataItemSelector).
96 97 98 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 96 def item_selector @item_selector end |
#items ⇒ AWSCDK::StepFunctions::ProvideItems? (readonly)
Default: - The state input as is.
The array that the Map state will iterate over.
140 141 142 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 140 def items @items end |
#jsonata_item_selector ⇒ String? (readonly)
Default: $
Jsonata expression that evaluates to a JSON array to override your default iteration input (mutually exclusive with parameters and itemSelector).
Example value: {% {\"foo\": \"foo\", \"input\": $states.input} %}
103 104 105 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 103 def jsonata_item_selector @jsonata_item_selector end |
#jsonata_max_concurrency ⇒ String? (readonly)
Default: - full concurrency
JSONata expression for MaxConcurrency.
A JSONata expression that evaluates to an integer, specifying the maximum
concurrency dynamically. Mutually exclusive with max_concurrency and
max_concurrency_path.
Example value: {% $states.input.maxConcurrency %}
115 116 117 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 115 def jsonata_max_concurrency @jsonata_max_concurrency end |
#label ⇒ String? (readonly)
Default: - No label
Label.
Unique name for the Distributed Map state added to each Map Run
159 160 161 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 159 def label @label end |
#map_execution_type ⇒ AWSCDK::StepFunctions::StateMachineType? (readonly)
Default: StateMachineType.STANDARD
MapExecutionType.
The execution type of the distributed map state
This property overwrites ProcessorConfig.executionType
168 169 170 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 168 def map_execution_type @map_execution_type end |
#max_concurrency ⇒ Numeric? (readonly)
Default: - full concurrency
MaxConcurrency.
An upper bound on the number of iterations you want running at once.
123 124 125 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 123 def max_concurrency @max_concurrency end |
#outputs ⇒ Object? (readonly)
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.
135 136 137 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 135 def outputs @outputs end |
#query_language ⇒ AWSCDK::StepFunctions::QueryLanguage? (readonly)
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.
77 78 79 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 77 def query_language @query_language end |
#result_writer ⇒ AWSCDK::StepFunctions::ResultWriter? (readonly)
Use {@link resultWriterV2 }
Default: - No resultWriter
Configuration for S3 location in which to save Map Run results.
174 175 176 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 174 def result_writer @result_writer end |
#result_writer_v2 ⇒ AWSCDK::StepFunctions::ResultWriterV2? (readonly)
Default: - No resultWriterV2
Configuration for S3 location in which to save Map Run results Enable "@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2" feature in the context to use resultWriterV2 Example: stack.node.setContext("@aws-cdk/aws-stepfunctions:useDistributedMapResultWriterV2", true);
179 180 181 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 179 def result_writer_v2 @result_writer_v2 end |
#state_name ⇒ String? (readonly)
Default: - The construct ID will be used as state name
Optional name for this state.
82 83 84 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 82 def state_name @state_name end |
#tolerated_failure_count ⇒ Numeric? (readonly)
Default: - No toleratedFailureCount
ToleratedFailureCount.
Number of failed items to tolerate in a Map Run, as static number
186 187 188 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 186 def tolerated_failure_count @tolerated_failure_count end |
#tolerated_failure_percentage ⇒ Numeric? (readonly)
Default: - No toleratedFailurePercentage
ToleratedFailurePercentage.
Percentage of failed items to tolerate in a Map Run, as static number
193 194 195 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 193 def tolerated_failure_percentage @tolerated_failure_percentage end |
Class Method Details
.jsii_properties ⇒ Object
195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 195 def self.jsii_properties { :comment => "comment", :query_language => "queryLanguage", :state_name => "stateName", :assign => "assign", :item_selector => "itemSelector", :jsonata_item_selector => "jsonataItemSelector", :jsonata_max_concurrency => "jsonataMaxConcurrency", :max_concurrency => "maxConcurrency", :outputs => "outputs", :items => "items", :item_batcher => "itemBatcher", :item_reader => "itemReader", :label => "label", :map_execution_type => "mapExecutionType", :result_writer => "resultWriter", :result_writer_v2 => "resultWriterV2", :tolerated_failure_count => "toleratedFailureCount", :tolerated_failure_percentage => "toleratedFailurePercentage", } end |
Instance Method Details
#to_jsii ⇒ Object
218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 |
# File 'step_functions/distributed_map_jsonata_props.rb', line 218 def to_jsii result = {} result.merge!(super) result.merge!({ "comment" => @comment, "queryLanguage" => @query_language, "stateName" => @state_name, "assign" => @assign, "itemSelector" => @item_selector, "jsonataItemSelector" => @jsonata_item_selector, "jsonataMaxConcurrency" => @jsonata_max_concurrency, "maxConcurrency" => @max_concurrency, "outputs" => @outputs, "items" => @items, "itemBatcher" => @item_batcher, "itemReader" => @item_reader, "label" => @label, "mapExecutionType" => @map_execution_type, "resultWriter" => @result_writer, "resultWriterV2" => @result_writer_v2, "toleratedFailureCount" => @tolerated_failure_count, "toleratedFailurePercentage" => @tolerated_failure_percentage, }) result.compact end |