Class: AWSCDK::StepFunctions::DistributedMapProps
- Inherits:
-
MapBaseProps
- Object
- MapBaseProps
- AWSCDK::StepFunctions::DistributedMapProps
- Defined in:
- step_functions/distributed_map_props.rb
Overview
Properties for configuring a Distribute Map state.
Instance Attribute Summary collapse
-
#assign ⇒ Hash{String => Object}?
readonly
Workflow variables to store in this step.
-
#comment ⇒ String?
readonly
A comment describing this state.
-
#input_path ⇒ String?
readonly
JSONPath expression to select part of the state to be the input to 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.
-
#items_path ⇒ String?
readonly
JSONPath expression to select the array to 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.
-
#max_concurrency_path ⇒ String?
readonly
MaxConcurrencyPath.
-
#output_path ⇒ String?
readonly
JSONPath expression to select part of the state to be the output to this state.
-
#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_path ⇒ String?
readonly
JSONPath expression to indicate where to inject the state's output.
-
#result_selector ⇒ Hash{String => Object}?
readonly
The JSON that will replace the state's raw result and become the effective result before ResultPath is applied.
-
#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_count_path ⇒ String?
readonly
ToleratedFailureCountPath.
-
#tolerated_failure_percentage ⇒ Numeric?
readonly
ToleratedFailurePercentage.
-
#tolerated_failure_percentage_path ⇒ String?
readonly
ToleratedFailurePercentagePath.
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, input_path: nil, output_path: nil, items_path: nil, max_concurrency_path: nil, result_path: nil, result_selector: 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_count_path: nil, tolerated_failure_percentage: nil, tolerated_failure_percentage_path: nil) ⇒ DistributedMapProps
constructor
A new instance of DistributedMapProps.
- #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, input_path: nil, output_path: nil, items_path: nil, max_concurrency_path: nil, result_path: nil, result_selector: 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_count_path: nil, tolerated_failure_percentage: nil, tolerated_failure_percentage_path: nil) ⇒ DistributedMapProps
Returns a new instance of DistributedMapProps.
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 81 82 83 84 85 86 87 |
# File 'step_functions/distributed_map_props.rb', line 34 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, input_path: nil, output_path: nil, items_path: nil, max_concurrency_path: nil, result_path: nil, result_selector: 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_count_path: nil, tolerated_failure_percentage: nil, tolerated_failure_percentage_path: 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? @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? @items_path = items_path Jsii::Type.check_type(@items_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "itemsPath") unless @items_path.nil? @max_concurrency_path = max_concurrency_path Jsii::Type.check_type(@max_concurrency_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "maxConcurrencyPath") unless @max_concurrency_path.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? @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_count_path = tolerated_failure_count_path Jsii::Type.check_type(@tolerated_failure_count_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "toleratedFailureCountPath") unless @tolerated_failure_count_path.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? @tolerated_failure_percentage_path = tolerated_failure_percentage_path Jsii::Type.check_type(@tolerated_failure_percentage_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "toleratedFailurePercentagePath") unless @tolerated_failure_percentage_path.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.
114 115 116 |
# File 'step_functions/distributed_map_props.rb', line 114 def assign @assign end |
#comment ⇒ String? (readonly)
Default: No comment
A comment describing this state.
93 94 95 |
# File 'step_functions/distributed_map_props.rb', line 93 def comment @comment end |
#input_path ⇒ String? (readonly)
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 {}.
155 156 157 |
# File 'step_functions/distributed_map_props.rb', line 155 def input_path @input_path end |
#item_batcher ⇒ AWSCDK::StepFunctions::ItemBatcher? (readonly)
Default: - No itemBatcher
Specifies to process a group of items in a single child workflow execution.
215 216 217 |
# File 'step_functions/distributed_map_props.rb', line 215 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
222 223 224 |
# File 'step_functions/distributed_map_props.rb', line 222 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).
120 121 122 |
# File 'step_functions/distributed_map_props.rb', line 120 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.
210 211 212 |
# File 'step_functions/distributed_map_props.rb', line 210 def items @items end |
#items_path ⇒ String? (readonly)
Default: $
JSONPath expression to select the array to iterate over.
168 169 170 |
# File 'step_functions/distributed_map_props.rb', line 168 def items_path @items_path 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} %}
127 128 129 |
# File 'step_functions/distributed_map_props.rb', line 127 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 %}
139 140 141 |
# File 'step_functions/distributed_map_props.rb', line 139 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
229 230 231 |
# File 'step_functions/distributed_map_props.rb', line 229 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
238 239 240 |
# File 'step_functions/distributed_map_props.rb', line 238 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.
147 148 149 |
# File 'step_functions/distributed_map_props.rb', line 147 def max_concurrency @max_concurrency end |
#max_concurrency_path ⇒ String? (readonly)
Default: - full concurrency
MaxConcurrencyPath.
A JsonPath that specifies the maximum concurrency dynamically from the state input.
176 177 178 |
# File 'step_functions/distributed_map_props.rb', line 176 def max_concurrency_path @max_concurrency_path end |
#output_path ⇒ String? (readonly)
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 {}.
163 164 165 |
# File 'step_functions/distributed_map_props.rb', line 163 def output_path @output_path 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.
205 206 207 |
# File 'step_functions/distributed_map_props.rb', line 205 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.
101 102 103 |
# File 'step_functions/distributed_map_props.rb', line 101 def query_language @query_language end |
#result_path ⇒ String? (readonly)
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.
184 185 186 |
# File 'step_functions/distributed_map_props.rb', line 184 def result_path @result_path end |
#result_selector ⇒ Hash{String => Object}? (readonly)
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.
193 194 195 |
# File 'step_functions/distributed_map_props.rb', line 193 def result_selector @result_selector end |
#result_writer ⇒ AWSCDK::StepFunctions::ResultWriter? (readonly)
Use {@link resultWriterV2 }
Default: - No resultWriter
Configuration for S3 location in which to save Map Run results.
244 245 246 |
# File 'step_functions/distributed_map_props.rb', line 244 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);
249 250 251 |
# File 'step_functions/distributed_map_props.rb', line 249 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.
106 107 108 |
# File 'step_functions/distributed_map_props.rb', line 106 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
256 257 258 |
# File 'step_functions/distributed_map_props.rb', line 256 def tolerated_failure_count @tolerated_failure_count end |
#tolerated_failure_count_path ⇒ String? (readonly)
Default: - No toleratedFailureCountPath
ToleratedFailureCountPath.
Number of failed items to tolerate in a Map Run, as JsonPath
263 264 265 |
# File 'step_functions/distributed_map_props.rb', line 263 def tolerated_failure_count_path @tolerated_failure_count_path end |
#tolerated_failure_percentage ⇒ Numeric? (readonly)
Default: - No toleratedFailurePercentage
ToleratedFailurePercentage.
Percentage of failed items to tolerate in a Map Run, as static number
270 271 272 |
# File 'step_functions/distributed_map_props.rb', line 270 def tolerated_failure_percentage @tolerated_failure_percentage end |
#tolerated_failure_percentage_path ⇒ String? (readonly)
Default: - No toleratedFailurePercentagePath
ToleratedFailurePercentagePath.
Percentage of failed items to tolerate in a Map Run, as JsonPath
277 278 279 |
# File 'step_functions/distributed_map_props.rb', line 277 def tolerated_failure_percentage_path @tolerated_failure_percentage_path end |
Class Method Details
.jsii_properties ⇒ Object
279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 |
# File 'step_functions/distributed_map_props.rb', line 279 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", :input_path => "inputPath", :output_path => "outputPath", :items_path => "itemsPath", :max_concurrency_path => "maxConcurrencyPath", :result_path => "resultPath", :result_selector => "resultSelector", :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_count_path => "toleratedFailureCountPath", :tolerated_failure_percentage => "toleratedFailurePercentage", :tolerated_failure_percentage_path => "toleratedFailurePercentagePath", } end |
Instance Method Details
#to_jsii ⇒ Object
310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 |
# File 'step_functions/distributed_map_props.rb', line 310 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, "inputPath" => @input_path, "outputPath" => @output_path, "itemsPath" => @items_path, "maxConcurrencyPath" => @max_concurrency_path, "resultPath" => @result_path, "resultSelector" => @result_selector, "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, "toleratedFailureCountPath" => @tolerated_failure_count_path, "toleratedFailurePercentage" => @tolerated_failure_percentage, "toleratedFailurePercentagePath" => @tolerated_failure_percentage_path, }) result.compact end |