class AWS::Flow::FlowConstants
Constants used by the AWS
Flow
Framework for Ruby.
@!attribute [r] default_data_converter
The DataConverter used to interpret results from Amazon SWF. @return [Object] {YAMLDataConverter}
@!attribute [r] exponential_retry_backoff_coefficient
The coefficient used to determine how much to back off the interval timing for an exponential retry scenario. @return [Float] `2.0` (each retry takes twice as long as the previous attempt)
@!attribute [r] exponential_retry_exceptions_to_exclude
A list of the exception types to exclude from initiating retry attempts. @return [Array<Object>] an empty list. No exceptions are excluded.
@!attribute [r] exponential_retry_exceptions_to_include
A list of the exception types to include for initiating retry attempts. @return [Array<Class>] `Exception` (all exceptions are included)
@!attribute [r] exponential_retry_function
The default exponential retry function. @return A *lambda* that takes four parameters: an initial time, a time of failure, a number of attempts, and a set of {ExponentialRetryOptions}.
@!attribute [r] exponential_retry_initial_retry_interval
The initial retry interval. @return [Fixnum] `2`
@!attribute [r] exponential_retry_maximum_attempts
The maximum number of attempts to make for an exponential retry of a failed task. @return [Float] `Float::INFINITY` (there is no limit to the number of retry attempts)
@!attribute [r] exponential_retry_maximum_retry_interval_seconds
The maximum interval that can pass, in seconds, before a retry occurs. @return [Fixnum] `-1` (no maximum)
@!attribute [r] exponential_retry_retry_expiration_seconds
The maximum time that can pass, in seconds, before an exponential retry attempt is considered to be a failure. @return [Fixnum] `-1` (no expiration for a retry attempt)
@!attribute [r] jitter_function
The function that is used to determine how long to wait for the next retry attempt when *should_jitter* is set to `true`. @return a *lambda* that takes a random number seed and a maximum value (must be > 0).
@!attribute [r] should_jitter
Indicates whether there should be any randomness built in to the timing of the retry attempt. @return [Boolean] `true`
@!attribute [r] use_worker_task_list
Used with activity and workflow options. Indicates that the activity and/or workflow should use the same task list that the associated worker is polling on. @return [String] "USE_WORKER_TASK_LIST"
Constants
- DATA_LIMIT
Sizes taken from docs.aws.amazon.com/amazonswf/latest/apireference/API_FailWorkflowExecutionDecisionAttributes.html
- DETAILS_LIMIT
Number of chars that can fit in FlowException’s details. Same as
DATA_LIMIT
- INFINITY
- NUM_OF_WORKERS_DEFAULT
- REASON_LIMIT
Number of chars that can fit in FlowException’s reason
- RETENTION_DEFAULT
- TRUNCATED
Truncation string added to the end of a trucated string“
- TRUNCATION_OVERHEAD
This is the truncation overhead for serialization.
Attributes
Public Class Methods
Selects the data converter to use. By default, YAMLDataConverter
is used. S3DataConverter
is used when AWS_SWF_BUCKET_NAME environment variable is set.
# File lib/aws/decider/flow_defaults.rb, line 185 def self.data_converter return self.default_data_converter unless ENV['AWS_SWF_BUCKET_NAME'] S3DataConverter.converter end
# File lib/aws/decider/flow_defaults.rb, line 117 def self.defaults { domain: "FlowDefault", prefix_name: "FlowDefaultWorkflowRuby", execution_method: "start", version: "1.0", # execution timeout (1 hour) execution_start_to_close_timeout: "3600", data_converter: self.data_converter, schedule_to_start_timeout: 60, start_to_close_timeout: 60, retry_policy: { maximum_attempts: 3 }, task_list: "flow_default_ruby", result_activity_prefix: "FlowDefaultResultActivityRuby", result_activity_version: "1.0", result_activity_method: "run" } end