Class: AWSCDK::StepFunctions::MapBaseOptions

Inherits:
AssignableStateOptions
  • Object
show all
Defined in:
step_functions/map_base_options.rb

Overview

Base properties for defining a Map state.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(assign: nil, item_selector: nil, jsonata_item_selector: nil, jsonata_max_concurrency: nil, max_concurrency: nil) ⇒ MapBaseOptions

Returns a new instance of MapBaseOptions.

Parameters:

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

    Workflow variables to store in this step.

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

    The JSON that you want to override your default iteration input (mutually exclusive with parameters and jsonataItemSelector).

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

    Jsonata expression that evaluates to a JSON array to override your default iteration input (mutually exclusive with parameters and itemSelector).

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

    JSONata expression for MaxConcurrency.

  • max_concurrency (Numeric, nil) (defaults to: nil)

    MaxConcurrency.



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

def initialize(assign: nil, item_selector: nil, jsonata_item_selector: nil, jsonata_max_concurrency: nil, max_concurrency: 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?
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:



32
33
34
# File 'step_functions/map_base_options.rb', line 32

def assign
  @assign
end

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

Note:

Default: $

The JSON that you want to override your default iteration input (mutually exclusive with parameters and jsonataItemSelector).



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

def item_selector
  @item_selector
end

#jsonata_item_selectorString? (readonly)

Note:

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} %}

Returns:

  • (String, nil)


45
46
47
# File 'step_functions/map_base_options.rb', line 45

def jsonata_item_selector
  @jsonata_item_selector
end

#jsonata_max_concurrencyString? (readonly)

Note:

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 %}



57
58
59
# File 'step_functions/map_base_options.rb', line 57

def jsonata_max_concurrency
  @jsonata_max_concurrency
end

#max_concurrencyNumeric? (readonly)

Note:

Default: - full concurrency

MaxConcurrency.

An upper bound on the number of iterations you want running at once.



65
66
67
# File 'step_functions/map_base_options.rb', line 65

def max_concurrency
  @max_concurrency
end

Class Method Details

.jsii_propertiesObject



67
68
69
70
71
72
73
74
75
# File 'step_functions/map_base_options.rb', line 67

def self.jsii_properties
  {
    :assign => "assign",
    :item_selector => "itemSelector",
    :jsonata_item_selector => "jsonataItemSelector",
    :jsonata_max_concurrency => "jsonataMaxConcurrency",
    :max_concurrency => "maxConcurrency",
  }
end

Instance Method Details

#to_jsiiObject



77
78
79
80
81
82
83
84
85
86
87
88
# File 'step_functions/map_base_options.rb', line 77

def to_jsii
  result = {}
  result.merge!(super)
  result.merge!({
    "assign" => @assign,
    "itemSelector" => @item_selector,
    "jsonataItemSelector" => @jsonata_item_selector,
    "jsonataMaxConcurrency" => @jsonata_max_concurrency,
    "maxConcurrency" => @max_concurrency,
  })
  result.compact
end