awsstepfunctions

package
v2.11.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 8, 2022 License: Apache-2.0 Imports: 9 Imported by: 34

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Activity_IsConstruct

func Activity_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Activity_IsResource

func Activity_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func CfnActivity_CFN_RESOURCE_TYPE_NAME

func CfnActivity_CFN_RESOURCE_TYPE_NAME() *string

func CfnActivity_IsCfnElement

func CfnActivity_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnActivity_IsCfnResource

func CfnActivity_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnActivity_IsConstruct

func CfnActivity_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CfnStateMachine_CFN_RESOURCE_TYPE_NAME

func CfnStateMachine_CFN_RESOURCE_TYPE_NAME() *string

func CfnStateMachine_IsCfnElement

func CfnStateMachine_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnStateMachine_IsCfnResource

func CfnStateMachine_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnStateMachine_IsConstruct

func CfnStateMachine_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Choice_FilterNextables

func Choice_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func Choice_FindReachableEndStates

func Choice_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func Choice_FindReachableStates

func Choice_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func Choice_IsConstruct

func Choice_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Choice_PrefixStates

func Choice_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func CustomState_FilterNextables

func CustomState_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func CustomState_FindReachableEndStates

func CustomState_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func CustomState_FindReachableStates

func CustomState_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func CustomState_IsConstruct

func CustomState_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func CustomState_PrefixStates

func CustomState_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func Errors_ALL

func Errors_ALL() *string

func Errors_BRANCH_FAILED

func Errors_BRANCH_FAILED() *string

func Errors_HEARTBEAT_TIMEOUT

func Errors_HEARTBEAT_TIMEOUT() *string

func Errors_NO_CHOICE_MATCHED

func Errors_NO_CHOICE_MATCHED() *string

func Errors_PARAMETER_PATH_FAILURE

func Errors_PARAMETER_PATH_FAILURE() *string

func Errors_PERMISSIONS

func Errors_PERMISSIONS() *string

func Errors_RESULT_PATH_MATCH_FAILURE

func Errors_RESULT_PATH_MATCH_FAILURE() *string

func Errors_TASKS_FAILED

func Errors_TASKS_FAILED() *string

func Errors_TIMEOUT

func Errors_TIMEOUT() *string

func Fail_FilterNextables

func Fail_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func Fail_FindReachableEndStates

func Fail_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func Fail_FindReachableStates

func Fail_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func Fail_IsConstruct

func Fail_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Fail_PrefixStates

func Fail_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func FieldUtils_ContainsTaskToken

func FieldUtils_ContainsTaskToken(obj *map[string]interface{}) *bool

Returns whether the given task structure contains the TaskToken field anywhere.

The field is considered included if the field itself or one of its containing fields occurs anywhere in the payload.

func FieldUtils_FindReferencedPaths

func FieldUtils_FindReferencedPaths(obj *map[string]interface{}) *[]*string

Return all JSON paths used in the given structure.

func FieldUtils_RenderObject

func FieldUtils_RenderObject(obj *map[string]interface{}) *map[string]interface{}

Render a JSON structure containing fields to the right StepFunctions structure.

func JsonPath_Array added in v2.10.0

func JsonPath_Array(values ...*string) *string

Make an intrinsic States.Array expression.

Combine any number of string literals or JsonPath expressions into an array.

Use this function if the value of an array element directly has to come from a JSON Path expression (either the State object or the Context object).

If the array contains object literals whose values come from a JSON path expression, you do not need to use this function. See: https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-intrinsic-functions.html

func JsonPath_DISCARD

func JsonPath_DISCARD() *string

func JsonPath_EntireContext

func JsonPath_EntireContext() *string

func JsonPath_EntirePayload

func JsonPath_EntirePayload() *string

func JsonPath_Format added in v2.10.0

func JsonPath_Format(formatString *string, values ...*string) *string

Make an intrinsic States.Format expression.

This can be used to embed JSON Path variables inside a format string.

For example:

```ts sfn.JsonPath.format('Hello, my name is {}.', sfn.JsonPath.stringAt('$.name')) ``` See: https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-intrinsic-functions.html

func JsonPath_IsEncodedJsonPath

func JsonPath_IsEncodedJsonPath(value *string) *bool

Determines if the indicated string is an encoded JSON path.

func JsonPath_JsonToString added in v2.10.0

func JsonPath_JsonToString(value interface{}) *string

Make an intrinsic States.JsonToString expression.

During the execution of the Step Functions state machine, encode the given object into a JSON string.

For example:

```ts sfn.JsonPath.jsonToString(sfn.JsonPath.objectAt('$.someObject')) ``` See: https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-intrinsic-functions.html

func JsonPath_ListAt

func JsonPath_ListAt(path *string) *[]*string

Instead of using a literal string list, get the value from a JSON path.

func JsonPath_NumberAt

func JsonPath_NumberAt(path *string) *float64

Instead of using a literal number, get the value from a JSON path.

func JsonPath_ObjectAt added in v2.10.0

func JsonPath_ObjectAt(path *string) awscdk.IResolvable

Reference a complete (complex) object in a JSON path location.

func JsonPath_StringAt

func JsonPath_StringAt(path *string) *string

Instead of using a literal string, get the value from a JSON path.

func JsonPath_StringToJson added in v2.10.0

func JsonPath_StringToJson(jsonString *string) awscdk.IResolvable

Make an intrinsic States.StringToJson expression.

During the execution of the Step Functions state machine, parse the given argument as JSON into its object form.

For example:

```ts sfn.JsonPath.stringToJson(sfn.JsonPath.stringAt('$.someJsonBody')) ``` See: https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-intrinsic-functions.html

func JsonPath_TaskToken

func JsonPath_TaskToken() *string

func Map_FilterNextables

func Map_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func Map_FindReachableEndStates

func Map_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func Map_FindReachableStates

func Map_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func Map_IsConstruct

func Map_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Map_PrefixStates

func Map_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func NewActivity_Override

func NewActivity_Override(a Activity, scope constructs.Construct, id *string, props *ActivityProps)

func NewCfnActivity_Override

func NewCfnActivity_Override(c CfnActivity, scope constructs.Construct, id *string, props *CfnActivityProps)

Create a new `AWS::StepFunctions::Activity`.

func NewCfnStateMachine_Override

func NewCfnStateMachine_Override(c CfnStateMachine, scope constructs.Construct, id *string, props *CfnStateMachineProps)

Create a new `AWS::StepFunctions::StateMachine`.

func NewChoice_Override

func NewChoice_Override(c Choice, scope constructs.Construct, id *string, props *ChoiceProps)

func NewCondition_Override

func NewCondition_Override(c Condition)

func NewCustomState_Override

func NewCustomState_Override(c CustomState, scope constructs.Construct, id *string, props *CustomStateProps)

func NewErrors_Override

func NewErrors_Override(e Errors)

func NewFail_Override

func NewFail_Override(f Fail, scope constructs.Construct, id *string, props *FailProps)

func NewMap_Override

func NewMap_Override(m Map, scope constructs.Construct, id *string, props *MapProps)

func NewParallel_Override

func NewParallel_Override(p Parallel, scope constructs.Construct, id *string, props *ParallelProps)

func NewPass_Override

func NewPass_Override(p Pass, scope constructs.Construct, id *string, props *PassProps)

func NewResult_Override

func NewResult_Override(r Result, value interface{})

func NewStateGraph_Override

func NewStateGraph_Override(s StateGraph, startState State, graphDescription *string)

func NewStateMachineFragment_Override

func NewStateMachineFragment_Override(s StateMachineFragment, scope constructs.Construct, id *string)

Creates a new construct node.

func NewStateMachine_Override

func NewStateMachine_Override(s StateMachine, scope constructs.Construct, id *string, props *StateMachineProps)

func NewStateTransitionMetric_Override

func NewStateTransitionMetric_Override(s StateTransitionMetric)

func NewState_Override

func NewState_Override(s State, scope constructs.Construct, id *string, props *StateProps)

func NewSucceed_Override

func NewSucceed_Override(s Succeed, scope constructs.Construct, id *string, props *SucceedProps)

func NewTaskStateBase_Override

func NewTaskStateBase_Override(t TaskStateBase, scope constructs.Construct, id *string, props *TaskStateBaseProps)

func NewWait_Override

func NewWait_Override(w Wait, scope constructs.Construct, id *string, props *WaitProps)

func Parallel_FilterNextables

func Parallel_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func Parallel_FindReachableEndStates

func Parallel_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func Parallel_FindReachableStates

func Parallel_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func Parallel_IsConstruct

func Parallel_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Parallel_PrefixStates

func Parallel_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func Pass_FilterNextables

func Pass_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func Pass_FindReachableEndStates

func Pass_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func Pass_FindReachableStates

func Pass_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func Pass_IsConstruct

func Pass_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Pass_PrefixStates

func Pass_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func StateMachineFragment_IsConstruct

func StateMachineFragment_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func StateMachine_IsConstruct

func StateMachine_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func StateMachine_IsResource

func StateMachine_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func StateTransitionMetric_Metric

func StateTransitionMetric_Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric

Return the given named metric for the service's state transition metrics.

func StateTransitionMetric_MetricConsumedCapacity

func StateTransitionMetric_MetricConsumedCapacity(props *awscloudwatch.MetricOptions) awscloudwatch.Metric

Metric for the number of available state transitions per second.

func StateTransitionMetric_MetricProvisionedBucketSize

func StateTransitionMetric_MetricProvisionedBucketSize(props *awscloudwatch.MetricOptions) awscloudwatch.Metric

Metric for the number of available state transitions.

func StateTransitionMetric_MetricProvisionedRefillRate

func StateTransitionMetric_MetricProvisionedRefillRate(props *awscloudwatch.MetricOptions) awscloudwatch.Metric

Metric for the provisioned steady-state execution rate.

func StateTransitionMetric_MetricThrottledEvents

func StateTransitionMetric_MetricThrottledEvents(props *awscloudwatch.MetricOptions) awscloudwatch.Metric

Metric for the number of throttled state transitions.

func State_FilterNextables

func State_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func State_FindReachableEndStates

func State_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func State_FindReachableStates

func State_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func State_IsConstruct

func State_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func State_PrefixStates

func State_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func Succeed_FilterNextables

func Succeed_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func Succeed_FindReachableEndStates

func Succeed_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func Succeed_FindReachableStates

func Succeed_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func Succeed_IsConstruct

func Succeed_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Succeed_PrefixStates

func Succeed_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func TaskStateBase_FilterNextables

func TaskStateBase_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func TaskStateBase_FindReachableEndStates

func TaskStateBase_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func TaskStateBase_FindReachableStates

func TaskStateBase_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func TaskStateBase_IsConstruct

func TaskStateBase_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func TaskStateBase_PrefixStates

func TaskStateBase_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

func Wait_FilterNextables

func Wait_FilterNextables(states *[]State) *[]INextable

Return only the states that allow chaining from an array of states.

func Wait_FindReachableEndStates

func Wait_FindReachableEndStates(start State, options *FindStateOptions) *[]State

Find the set of end states states reachable through transitions from the given start state.

func Wait_FindReachableStates

func Wait_FindReachableStates(start State, options *FindStateOptions) *[]State

Find the set of states reachable through transitions from the given start state.

This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch.

func Wait_IsConstruct

func Wait_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead

func Wait_PrefixStates

func Wait_PrefixStates(root constructs.IConstruct, prefix *string)

Add a prefix to the stateId of all States found in a construct tree.

Types

type Activity

type Activity interface {
	awscdk.Resource
	IActivity
	ActivityArn() *string
	ActivityName() *string
	Env() *awscdk.ResourceEnvironment
	Node() constructs.Node
	PhysicalName() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Grant(identity awsiam.IGrantable, actions ...*string) awsiam.Grant
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricFailed(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricHeartbeatTimedOut(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricRunTime(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricScheduled(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricScheduleTime(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricStarted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricSucceeded(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricTime(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricTimedOut(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	ToString() *string
}

Define a new Step Functions Activity.

TODO: EXAMPLE

func NewActivity

func NewActivity(scope constructs.Construct, id *string, props *ActivityProps) Activity

type ActivityProps

type ActivityProps struct {
	// The name for this activity.
	ActivityName *string `json:"activityName" yaml:"activityName"`
}

Properties for defining a new Step Functions Activity.

TODO: EXAMPLE

type AfterwardsOptions

type AfterwardsOptions struct {
	// Whether to include error handling states.
	//
	// If this is true, all states which are error handlers (added through 'onError')
	// and states reachable via error handlers will be included as well.
	IncludeErrorHandlers *bool `json:"includeErrorHandlers" yaml:"includeErrorHandlers"`
	// Whether to include the default/otherwise transition for the current Choice state.
	//
	// If this is true and the current Choice does not have a default outgoing
	// transition, one will be added included when .next() is called on the chain.
	IncludeOtherwise *bool `json:"includeOtherwise" yaml:"includeOtherwise"`
}

Options for selecting the choice paths.

TODO: EXAMPLE

type CatchProps

type CatchProps struct {
	// Errors to recover from by going to the given state.
	//
	// A list of error strings to retry, which can be either predefined errors
	// (for example Errors.NoChoiceMatched) or a self-defined error.
	Errors *[]*string `json:"errors" yaml:"errors"`
	// JSONPath expression to indicate where to inject the error data.
	//
	// May also be the special value DISCARD, which will cause the error
	// data to be discarded.
	ResultPath *string `json:"resultPath" yaml:"resultPath"`
}

Error handler details.

TODO: EXAMPLE

type CfnActivity

type CfnActivity interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Name() *string
	SetName(val *string)
	Node() constructs.Node
	Ref() *string
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::StepFunctions::Activity`.

An activity is a task that you write in any programming language and host on any machine that has access to AWS Step Functions . Activities must poll Step Functions using the `GetActivityTask` API action and respond using `SendTask*` API actions. This function lets Step Functions know the existence of your activity and returns an identifier for use in a state machine and when polling from the activity.

For information about creating an activity, see [Creating an Activity State Machine](https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-creating-activity-state-machine.html) in the *AWS Step Functions Developer Guide* and [CreateActivity](https://docs.aws.amazon.com/step-functions/latest/apireference/API_CreateActivity.html) in the *AWS Step Functions API Reference* .

TODO: EXAMPLE

func NewCfnActivity

func NewCfnActivity(scope constructs.Construct, id *string, props *CfnActivityProps) CfnActivity

Create a new `AWS::StepFunctions::Activity`.

type CfnActivityProps

type CfnActivityProps struct {
	// The name of the activity.
	//
	// A name must *not* contain:
	//
	// - white space
	// - brackets `< > { } [ ]`
	// - wildcard characters `? *`
	// - special characters `" # % \ ^ | ~ ` $ & , ; : /`
	// - control characters ( `U+0000-001F` , `U+007F-009F` )
	//
	// To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
	Name *string `json:"name" yaml:"name"`
	// The list of tags to add to a resource.
	//
	// Tags may only contain Unicode letters, digits, white space, or these symbols: `_ . : / = + - @` .
	Tags *[]*CfnActivity_TagsEntryProperty `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnActivity`.

TODO: EXAMPLE

type CfnActivity_TagsEntryProperty

type CfnActivity_TagsEntryProperty struct {
	// The `key` for a key-value pair in a tag entry.
	Key *string `json:"key" yaml:"key"`
	// The `value` for a key-value pair in a tag entry.
	Value *string `json:"value" yaml:"value"`
}

The `TagsEntry` property specifies *tags* to identify an activity.

TODO: EXAMPLE

type CfnStateMachine

type CfnStateMachine interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	Definition() interface{}
	SetDefinition(val interface{})
	DefinitionS3Location() interface{}
	SetDefinitionS3Location(val interface{})
	DefinitionString() *string
	SetDefinitionString(val *string)
	DefinitionSubstitutions() interface{}
	SetDefinitionSubstitutions(val interface{})
	LoggingConfiguration() interface{}
	SetLoggingConfiguration(val interface{})
	LogicalId() *string
	Node() constructs.Node
	Ref() *string
	RoleArn() *string
	SetRoleArn(val *string)
	Stack() awscdk.Stack
	StateMachineName() *string
	SetStateMachineName(val *string)
	StateMachineType() *string
	SetStateMachineType(val *string)
	Tags() awscdk.TagManager
	TracingConfiguration() interface{}
	SetTracingConfiguration(val interface{})
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OverrideLogicalId(newLogicalId *string)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::StepFunctions::StateMachine`.

Provisions a state machine. A state machine consists of a collection of states that can do work ( `Task` states), determine to which states to transition next ( `Choice` states), stop an execution with an error ( `Fail` states), and so on. State machines are specified using a JSON-based, structured language.

TODO: EXAMPLE

func NewCfnStateMachine

func NewCfnStateMachine(scope constructs.Construct, id *string, props *CfnStateMachineProps) CfnStateMachine

Create a new `AWS::StepFunctions::StateMachine`.

type CfnStateMachineProps

type CfnStateMachineProps struct {
	// The Amazon Resource Name (ARN) of the IAM role to use for this state machine.
	RoleArn *string `json:"roleArn" yaml:"roleArn"`
	// The Amazon States Language definition of the state machine.
	//
	// The state machine definition must be in JSON or YAML, and the format of the object must match the format of your AWS Step Functions template file. See [Amazon States Language](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html) .
	Definition interface{} `json:"definition" yaml:"definition"`
	// The name of the S3 bucket where the state machine definition is stored.
	//
	// The state machine definition must be a JSON or YAML file.
	DefinitionS3Location interface{} `json:"definitionS3Location" yaml:"definitionS3Location"`
	// The Amazon States Language definition of the state machine.
	//
	// The state machine definition must be in JSON. See [Amazon States Language](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html) .
	DefinitionString *string `json:"definitionString" yaml:"definitionString"`
	// A map (string to string) that specifies the mappings for placeholder variables in the state machine definition.
	//
	// This enables the customer to inject values obtained at runtime, for example from intrinsic functions, in the state machine definition. Variables can be template parameter names, resource logical IDs, resource attributes, or a variable in a key-value map.
	DefinitionSubstitutions interface{} `json:"definitionSubstitutions" yaml:"definitionSubstitutions"`
	// Defines what execution history events are logged and where they are logged.
	//
	// > By default, the `level` is set to `OFF` . For more information see [Log Levels](https://docs.aws.amazon.com/step-functions/latest/dg/cloudwatch-log-level.html) in the AWS Step Functions User Guide.
	LoggingConfiguration interface{} `json:"loggingConfiguration" yaml:"loggingConfiguration"`
	// The name of the state machine.
	//
	// A name must *not* contain:
	//
	// - white space
	// - brackets `< > { } [ ]`
	// - wildcard characters `? *`
	// - special characters `" # % \ ^ | ~ ` $ & , ; : /`
	// - control characters ( `U+0000-001F` , `U+007F-009F` )
	//
	// > If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
	StateMachineName *string `json:"stateMachineName" yaml:"stateMachineName"`
	// Determines whether a `STANDARD` or `EXPRESS` state machine is created.
	//
	// The default is `STANDARD` . You cannot update the `type` of a state machine once it has been created. For more information on `STANDARD` and `EXPRESS` workflows, see [Standard Versus Express Workflows](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html) in the AWS Step Functions Developer Guide.
	StateMachineType *string `json:"stateMachineType" yaml:"stateMachineType"`
	// The list of tags to add to a resource.
	//
	// Tags may only contain Unicode letters, digits, white space, or these symbols: `_ . : / = + - @` .
	Tags *[]*CfnStateMachine_TagsEntryProperty `json:"tags" yaml:"tags"`
	// Selects whether or not the state machine's AWS X-Ray tracing is enabled.
	TracingConfiguration interface{} `json:"tracingConfiguration" yaml:"tracingConfiguration"`
}

Properties for defining a `CfnStateMachine`.

TODO: EXAMPLE

type CfnStateMachine_CloudWatchLogsLogGroupProperty

type CfnStateMachine_CloudWatchLogsLogGroupProperty struct {
	// The ARN of the the CloudWatch log group to which you want your logs emitted to.
	//
	// The ARN must end with `:*`
	LogGroupArn *string `json:"logGroupArn" yaml:"logGroupArn"`
}

Defines a CloudWatch log group.

> For more information see [Standard Versus Express Workflows](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html) in the AWS Step Functions Developer Guide.

TODO: EXAMPLE

type CfnStateMachine_LogDestinationProperty

type CfnStateMachine_LogDestinationProperty struct {
	// An object describing a CloudWatch log group.
	//
	// For more information, see [AWS::Logs::LogGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html) in the AWS CloudFormation User Guide.
	CloudWatchLogsLogGroup interface{} `json:"cloudWatchLogsLogGroup" yaml:"cloudWatchLogsLogGroup"`
}

Defines a destination for `LoggingConfiguration` .

> For more information on logging with `EXPRESS` workflows, see [Logging Express Workflows Using CloudWatch Logs](https://docs.aws.amazon.com/step-functions/latest/dg/cw-logs.html) .

TODO: EXAMPLE

type CfnStateMachine_LoggingConfigurationProperty

type CfnStateMachine_LoggingConfigurationProperty struct {
	// An array of objects that describes where your execution history events will be logged.
	//
	// Limited to size 1. Required, if your log level is not set to `OFF` .
	Destinations interface{} `json:"destinations" yaml:"destinations"`
	// Determines whether execution data is included in your log.
	//
	// When set to `false` , data is excluded.
	IncludeExecutionData interface{} `json:"includeExecutionData" yaml:"includeExecutionData"`
	// Defines which category of execution history events are logged.
	Level *string `json:"level" yaml:"level"`
}

Defines what execution history events are logged and where they are logged.

> By default, the `level` is set to `OFF` . For more information see [Log Levels](https://docs.aws.amazon.com/step-functions/latest/dg/cloudwatch-log-level.html) in the AWS Step Functions User Guide.

TODO: EXAMPLE

type CfnStateMachine_S3LocationProperty

type CfnStateMachine_S3LocationProperty struct {
	// The name of the S3 bucket where the state machine definition JSON or YAML file is stored.
	Bucket *string `json:"bucket" yaml:"bucket"`
	// The name of the state machine definition file (Amazon S3 object name).
	Key *string `json:"key" yaml:"key"`
	// For versioning-enabled buckets, a specific version of the state machine definition.
	Version *string `json:"version" yaml:"version"`
}

Defines the S3 bucket location where a state machine definition is stored.

The state machine definition must be a JSON or YAML file.

TODO: EXAMPLE

type CfnStateMachine_TagsEntryProperty

type CfnStateMachine_TagsEntryProperty struct {
	// The `key` for a key-value pair in a tag entry.
	Key *string `json:"key" yaml:"key"`
	// The `value` for a key-value pair in a tag entry.
	Value *string `json:"value" yaml:"value"`
}

The `TagsEntry` property specifies *tags* to identify a state machine.

TODO: EXAMPLE

type CfnStateMachine_TracingConfigurationProperty

type CfnStateMachine_TracingConfigurationProperty struct {
	// When set to `true` , X-Ray tracing is enabled.
	Enabled interface{} `json:"enabled" yaml:"enabled"`
}

Selects whether or not the state machine's AWS X-Ray tracing is enabled.

To configure your state machine to send trace data to X-Ray, set `Enabled` to `true` .

TODO: EXAMPLE

type Chain

type Chain interface {
	IChainable
	EndStates() *[]INextable
	Id() *string
	StartState() State
	Next(next IChainable) Chain
	ToSingleState(id *string, props *ParallelProps) Parallel
}

A collection of states to chain onto.

A Chain has a start and zero or more chainable ends. If there are zero ends, calling next() on the Chain will fail.

TODO: EXAMPLE

func Chain_Custom

func Chain_Custom(startState State, endStates *[]INextable, lastAdded IChainable) Chain

Make a Chain with specific start and end states, and a last-added Chainable.

func Chain_Sequence

func Chain_Sequence(start IChainable, next IChainable) Chain

Make a Chain with the start from one chain and the ends from another.

func Chain_Start

func Chain_Start(state IChainable) Chain

Begin a new Chain from one chainable.

type Choice

type Choice interface {
	State
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	Afterwards(options *AfterwardsOptions) Chain
	BindToGraph(graph StateGraph)
	MakeDefault(def State)
	MakeNext(next State)
	Otherwise(def IChainable) Choice
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	When(condition Condition, next IChainable) Choice
	WhenBoundToGraph(graph StateGraph)
}

Define a Choice in the state machine.

A choice state can be used to make decisions based on the execution state.

TODO: EXAMPLE

func NewChoice

func NewChoice(scope constructs.Construct, id *string, props *ChoiceProps) Choice

type ChoiceProps

type ChoiceProps struct {
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
	// JSONPath expression to select part of the state to be the input to this state.
	//
	// May also be the special value DISCARD, which will cause the effective
	// input to be the empty object {}.
	InputPath *string `json:"inputPath" yaml:"inputPath"`
	// JSONPath expression to select part of the state to be the output to this state.
	//
	// May also be the special value DISCARD, which will cause the effective
	// output to be the empty object {}.
	OutputPath *string `json:"outputPath" yaml:"outputPath"`
}

Properties for defining a Choice state.

TODO: EXAMPLE

type Condition

type Condition interface {
	RenderCondition() interface{}
}

A Condition for use in a Choice state branch.

TODO: EXAMPLE

func Condition_And

func Condition_And(conditions ...Condition) Condition

Combine two or more conditions with a logical AND.

func Condition_BooleanEquals

func Condition_BooleanEquals(variable *string, value *bool) Condition

Matches if a boolean field has the given value.

func Condition_BooleanEqualsJsonPath

func Condition_BooleanEqualsJsonPath(variable *string, value *string) Condition

Matches if a boolean field equals to a value at a given mapping path.

func Condition_IsBoolean

func Condition_IsBoolean(variable *string) Condition

Matches if variable is boolean.

func Condition_IsNotBoolean

func Condition_IsNotBoolean(variable *string) Condition

Matches if variable is not boolean.

func Condition_IsNotNull

func Condition_IsNotNull(variable *string) Condition

Matches if variable is not null.

func Condition_IsNotNumeric

func Condition_IsNotNumeric(variable *string) Condition

Matches if variable is not numeric.

func Condition_IsNotPresent

func Condition_IsNotPresent(variable *string) Condition

Matches if variable is not present.

func Condition_IsNotString

func Condition_IsNotString(variable *string) Condition

Matches if variable is not a string.

func Condition_IsNotTimestamp

func Condition_IsNotTimestamp(variable *string) Condition

Matches if variable is not a timestamp.

func Condition_IsNull

func Condition_IsNull(variable *string) Condition

Matches if variable is Null.

func Condition_IsNumeric

func Condition_IsNumeric(variable *string) Condition

Matches if variable is numeric.

func Condition_IsPresent

func Condition_IsPresent(variable *string) Condition

Matches if variable is present.

func Condition_IsString

func Condition_IsString(variable *string) Condition

Matches if variable is a string.

func Condition_IsTimestamp

func Condition_IsTimestamp(variable *string) Condition

Matches if variable is a timestamp.

func Condition_Not

func Condition_Not(condition Condition) Condition

Negate a condition.

func Condition_NumberEquals

func Condition_NumberEquals(variable *string, value *float64) Condition

Matches if a numeric field has the given value.

func Condition_NumberEqualsJsonPath

func Condition_NumberEqualsJsonPath(variable *string, value *string) Condition

Matches if a numeric field has the value in a given mapping path.

func Condition_NumberGreaterThan

func Condition_NumberGreaterThan(variable *string, value *float64) Condition

Matches if a numeric field is greater than the given value.

func Condition_NumberGreaterThanEquals

func Condition_NumberGreaterThanEquals(variable *string, value *float64) Condition

Matches if a numeric field is greater than or equal to the given value.

func Condition_NumberGreaterThanEqualsJsonPath

func Condition_NumberGreaterThanEqualsJsonPath(variable *string, value *string) Condition

Matches if a numeric field is greater than or equal to the value at a given mapping path.

func Condition_NumberGreaterThanJsonPath

func Condition_NumberGreaterThanJsonPath(variable *string, value *string) Condition

Matches if a numeric field is greater than the value at a given mapping path.

func Condition_NumberLessThan

func Condition_NumberLessThan(variable *string, value *float64) Condition

Matches if a numeric field is less than the given value.

func Condition_NumberLessThanEquals

func Condition_NumberLessThanEquals(variable *string, value *float64) Condition

Matches if a numeric field is less than or equal to the given value.

func Condition_NumberLessThanEqualsJsonPath

func Condition_NumberLessThanEqualsJsonPath(variable *string, value *string) Condition

Matches if a numeric field is less than or equal to the numeric value at given mapping path.

func Condition_NumberLessThanJsonPath

func Condition_NumberLessThanJsonPath(variable *string, value *string) Condition

Matches if a numeric field is less than the value at the given mapping path.

func Condition_Or

func Condition_Or(conditions ...Condition) Condition

Combine two or more conditions with a logical OR.

func Condition_StringEquals

func Condition_StringEquals(variable *string, value *string) Condition

Matches if a string field has the given value.

func Condition_StringEqualsJsonPath

func Condition_StringEqualsJsonPath(variable *string, value *string) Condition

Matches if a string field equals to a value at a given mapping path.

func Condition_StringGreaterThan

func Condition_StringGreaterThan(variable *string, value *string) Condition

Matches if a string field sorts after a given value.

func Condition_StringGreaterThanEquals

func Condition_StringGreaterThanEquals(variable *string, value *string) Condition

Matches if a string field sorts after or equal to a given value.

func Condition_StringGreaterThanEqualsJsonPath

func Condition_StringGreaterThanEqualsJsonPath(variable *string, value *string) Condition

Matches if a string field sorts after or equal to value at a given mapping path.

func Condition_StringGreaterThanJsonPath

func Condition_StringGreaterThanJsonPath(variable *string, value *string) Condition

Matches if a string field sorts after a value at a given mapping path.

func Condition_StringLessThan

func Condition_StringLessThan(variable *string, value *string) Condition

Matches if a string field sorts before a given value.

func Condition_StringLessThanEquals

func Condition_StringLessThanEquals(variable *string, value *string) Condition

Matches if a string field sorts equal to or before a given value.

func Condition_StringLessThanEqualsJsonPath

func Condition_StringLessThanEqualsJsonPath(variable *string, value *string) Condition

Matches if a string field sorts equal to or before a given mapping.

func Condition_StringLessThanJsonPath

func Condition_StringLessThanJsonPath(variable *string, value *string) Condition

Matches if a string field sorts before a given value at a particular mapping.

func Condition_StringMatches

func Condition_StringMatches(variable *string, value *string) Condition

Matches if a field matches a string pattern that can contain a wild card (*) e.g: log-*.txt or *LATEST*. No other characters other than "*" have any special meaning - * can be escaped: \\*.

func Condition_TimestampEquals

func Condition_TimestampEquals(variable *string, value *string) Condition

Matches if a timestamp field is the same time as the given timestamp.

func Condition_TimestampEqualsJsonPath

func Condition_TimestampEqualsJsonPath(variable *string, value *string) Condition

Matches if a timestamp field is the same time as the timestamp at a given mapping path.

func Condition_TimestampGreaterThan

func Condition_TimestampGreaterThan(variable *string, value *string) Condition

Matches if a timestamp field is after the given timestamp.

func Condition_TimestampGreaterThanEquals

func Condition_TimestampGreaterThanEquals(variable *string, value *string) Condition

Matches if a timestamp field is after or equal to the given timestamp.

func Condition_TimestampGreaterThanEqualsJsonPath

func Condition_TimestampGreaterThanEqualsJsonPath(variable *string, value *string) Condition

Matches if a timestamp field is after or equal to the timestamp at a given mapping path.

func Condition_TimestampGreaterThanJsonPath

func Condition_TimestampGreaterThanJsonPath(variable *string, value *string) Condition

Matches if a timestamp field is after the timestamp at a given mapping path.

func Condition_TimestampLessThan

func Condition_TimestampLessThan(variable *string, value *string) Condition

Matches if a timestamp field is before the given timestamp.

func Condition_TimestampLessThanEquals

func Condition_TimestampLessThanEquals(variable *string, value *string) Condition

Matches if a timestamp field is before or equal to the given timestamp.

func Condition_TimestampLessThanEqualsJsonPath

func Condition_TimestampLessThanEqualsJsonPath(variable *string, value *string) Condition

Matches if a timestamp field is before or equal to the timestamp at a given mapping path.

func Condition_TimestampLessThanJsonPath

func Condition_TimestampLessThanJsonPath(variable *string, value *string) Condition

Matches if a timestamp field is before the timestamp at a given mapping path.

type CustomState

type CustomState interface {
	State
	IChainable
	INextable
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	BindToGraph(graph StateGraph)
	MakeDefault(def State)
	MakeNext(next State)
	Next(next IChainable) Chain
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

State defined by supplying Amazon States Language (ASL) in the state machine.

TODO: EXAMPLE

func NewCustomState

func NewCustomState(scope constructs.Construct, id *string, props *CustomStateProps) CustomState

type CustomStateProps

type CustomStateProps struct {
	// Amazon States Language (JSON-based) definition of the state.
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html
	//
	StateJson *map[string]interface{} `json:"stateJson" yaml:"stateJson"`
}

Properties for defining a custom state definition.

TODO: EXAMPLE

type Errors

type Errors interface {
}

Predefined error strings Error names in Amazon States Language - https://states-language.net/spec.html#appendix-a Error handling in Step Functions - https://docs.aws.amazon.com/step-functions/latest/dg/concepts-error-handling.html.

TODO: EXAMPLE

func NewErrors

func NewErrors() Errors

type Fail

type Fail interface {
	State
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	BindToGraph(graph StateGraph)
	MakeDefault(def State)
	MakeNext(next State)
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

Define a Fail state in the state machine.

Reaching a Fail state terminates the state execution in failure.

TODO: EXAMPLE

func NewFail

func NewFail(scope constructs.Construct, id *string, props *FailProps) Fail

type FailProps

type FailProps struct {
	// A description for the cause of the failure.
	Cause *string `json:"cause" yaml:"cause"`
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
	// Error code used to represent this failure.
	Error *string `json:"error" yaml:"error"`
}

Properties for defining a Fail state.

TODO: EXAMPLE

type FieldUtils

type FieldUtils interface {
}

Helper functions to work with structures containing fields.

type FindStateOptions

type FindStateOptions struct {
	// Whether or not to follow error-handling transitions.
	IncludeErrorHandlers *bool `json:"includeErrorHandlers" yaml:"includeErrorHandlers"`
}

Options for finding reachable states.

TODO: EXAMPLE

type IActivity

type IActivity interface {
	awscdk.IResource
	// The ARN of the activity.
	ActivityArn() *string
	// The name of the activity.
	ActivityName() *string
}

Represents a Step Functions Activity https://docs.aws.amazon.com/step-functions/latest/dg/concepts-activities.html.

func Activity_FromActivityArn

func Activity_FromActivityArn(scope constructs.Construct, id *string, activityArn *string) IActivity

Construct an Activity from an existing Activity ARN.

func Activity_FromActivityName

func Activity_FromActivityName(scope constructs.Construct, id *string, activityName *string) IActivity

Construct an Activity from an existing Activity Name.

type IChainable

type IChainable interface {
	// The chainable end state(s) of this chainable.
	EndStates() *[]INextable
	// Descriptive identifier for this chainable.
	Id() *string
	// The start state of this chainable.
	StartState() State
}

Interface for objects that can be used in a Chain.

type INextable

type INextable interface {
	// Go to the indicated state after this state.
	//
	// Returns: The chain of states built up
	Next(state IChainable) Chain
}

Interface for states that can have 'next' states.

type IStateMachine

type IStateMachine interface {
	awsiam.IGrantable
	awscdk.IResource
	// Grant the given identity custom permissions.
	Grant(identity awsiam.IGrantable, actions ...*string) awsiam.Grant
	// Grant the given identity permissions for all executions of a state machine.
	GrantExecution(identity awsiam.IGrantable, actions ...*string) awsiam.Grant
	// Grant the given identity read permissions for this state machine.
	GrantRead(identity awsiam.IGrantable) awsiam.Grant
	// Grant the given identity permissions to start an execution of this state machine.
	GrantStartExecution(identity awsiam.IGrantable) awsiam.Grant
	// Grant the given identity permissions to start a synchronous execution of this state machine.
	GrantStartSyncExecution(identity awsiam.IGrantable) awsiam.Grant
	// Grant the given identity read permissions for this state machine.
	GrantTaskResponse(identity awsiam.IGrantable) awsiam.Grant
	// Return the given named metric for this State Machine's executions.
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the number of executions that were aborted.
	MetricAborted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the number of executions that failed.
	MetricFailed(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the number of executions that were started.
	MetricStarted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the number of executions that succeeded.
	MetricSucceeded(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the number of executions that were throttled.
	MetricThrottled(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the interval, in milliseconds, between the time the execution starts and the time it closes.
	MetricTime(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the number of executions that timed out.
	MetricTimedOut(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The ARN of the state machine.
	StateMachineArn() *string
}

A State Machine.

func StateMachine_FromStateMachineArn

func StateMachine_FromStateMachineArn(scope constructs.Construct, id *string, stateMachineArn *string) IStateMachine

Import a state machine.

type InputType

type InputType string

The type of task input.

const (
	InputType_TEXT   InputType = "TEXT"
	InputType_OBJECT InputType = "OBJECT"
)

type IntegrationPattern

type IntegrationPattern string

AWS Step Functions integrates with services directly in the Amazon States Language.

You can control these AWS services using service integration patterns:

TODO: EXAMPLE

See: https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html

const (
	IntegrationPattern_REQUEST_RESPONSE    IntegrationPattern = "REQUEST_RESPONSE"
	IntegrationPattern_RUN_JOB             IntegrationPattern = "RUN_JOB"
	IntegrationPattern_WAIT_FOR_TASK_TOKEN IntegrationPattern = "WAIT_FOR_TASK_TOKEN"
)

type JsonPath

type JsonPath interface {
}

Extract a field from the State Machine data or context that gets passed around between states.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-paths.html

type LogLevel

type LogLevel string

Defines which category of execution history events are logged.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/step-functions/latest/dg/cloudwatch-log-level.html

const (
	LogLevel_OFF   LogLevel = "OFF"
	LogLevel_ALL   LogLevel = "ALL"
	LogLevel_ERROR LogLevel = "ERROR"
	LogLevel_FATAL LogLevel = "FATAL"
)

type LogOptions

type LogOptions struct {
	// The log group where the execution history events will be logged.
	Destination awslogs.ILogGroup `json:"destination" yaml:"destination"`
	// Determines whether execution data is included in your log.
	IncludeExecutionData *bool `json:"includeExecutionData" yaml:"includeExecutionData"`
	// Defines which category of execution history events are logged.
	Level LogLevel `json:"level" yaml:"level"`
}

Defines what execution history events are logged and where they are logged.

TODO: EXAMPLE

type Map

type Map interface {
	State
	INextable
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddCatch(handler IChainable, props *CatchProps) Map
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	AddRetry(props *RetryProps) Map
	BindToGraph(graph StateGraph)
	Iterator(iterator IChainable) Map
	MakeDefault(def State)
	MakeNext(next State)
	Next(next IChainable) Chain
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

Define a Map state in the state machine.

A `Map` state can be used to run a set of steps for each element of an input array. A Map state will execute the same steps for multiple entries of an array in the state input.

While the Parallel state executes multiple branches of steps using the same input, a Map state will execute the same steps for multiple entries of an array in the state input.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-map-state.html

func NewMap

func NewMap(scope constructs.Construct, id *string, props *MapProps) Map

type MapProps

type MapProps struct {
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
	// 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 {}.
	InputPath *string `json:"inputPath" yaml:"inputPath"`
	// JSONPath expression to select the array to iterate over.
	ItemsPath *string `json:"itemsPath" yaml:"itemsPath"`
	// MaxConcurrency.
	//
	// An upper bound on the number of iterations you want running at once.
	MaxConcurrency *float64 `json:"maxConcurrency" yaml:"maxConcurrency"`
	// 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 {}.
	OutputPath *string `json:"outputPath" yaml:"outputPath"`
	// The JSON that you want to override your default iteration input.
	Parameters *map[string]interface{} `json:"parameters" yaml:"parameters"`
	// 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.
	ResultPath *string `json:"resultPath" yaml:"resultPath"`
	// 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.
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector
	//
	ResultSelector *map[string]interface{} `json:"resultSelector" yaml:"resultSelector"`
}

Properties for defining a Map state.

TODO: EXAMPLE

type Parallel

type Parallel interface {
	State
	INextable
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddCatch(handler IChainable, props *CatchProps) Parallel
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	AddRetry(props *RetryProps) Parallel
	BindToGraph(graph StateGraph)
	Branch(branches ...IChainable) Parallel
	MakeDefault(def State)
	MakeNext(next State)
	Next(next IChainable) Chain
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

Define a Parallel state in the state machine.

A Parallel state can be used to run one or more state machines at the same time.

The Result of a Parallel state is an array of the results of its substatemachines.

TODO: EXAMPLE

func NewParallel

func NewParallel(scope constructs.Construct, id *string, props *ParallelProps) Parallel

type ParallelProps

type ParallelProps struct {
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
	// 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 {}.
	InputPath *string `json:"inputPath" yaml:"inputPath"`
	// 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 {}.
	OutputPath *string `json:"outputPath" yaml:"outputPath"`
	// 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.
	ResultPath *string `json:"resultPath" yaml:"resultPath"`
	// 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.
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector
	//
	ResultSelector *map[string]interface{} `json:"resultSelector" yaml:"resultSelector"`
}

Properties for defining a Parallel state.

TODO: EXAMPLE

type Pass

type Pass interface {
	State
	INextable
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	BindToGraph(graph StateGraph)
	MakeDefault(def State)
	MakeNext(next State)
	Next(next IChainable) Chain
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

Define a Pass in the state machine.

A Pass state can be used to transform the current execution's state.

TODO: EXAMPLE

func NewPass

func NewPass(scope constructs.Construct, id *string, props *PassProps) Pass

type PassProps

type PassProps struct {
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
	// 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 {}.
	InputPath *string `json:"inputPath" yaml:"inputPath"`
	// 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 {}.
	OutputPath *string `json:"outputPath" yaml:"outputPath"`
	// Parameters pass a collection of key-value pairs, either static values or JSONPath expressions that select from the input.
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-parameters
	//
	Parameters *map[string]interface{} `json:"parameters" yaml:"parameters"`
	// If given, treat as the result of this operation.
	//
	// Can be used to inject or replace the current execution state.
	Result Result `json:"result" yaml:"result"`
	// 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.
	ResultPath *string `json:"resultPath" yaml:"resultPath"`
}

Properties for defining a Pass state.

TODO: EXAMPLE

type Result

type Result interface {
	Value() interface{}
}

The result of a Pass operation.

TODO: EXAMPLE

func NewResult

func NewResult(value interface{}) Result

func Result_FromArray

func Result_FromArray(value *[]interface{}) Result

The result of the operation is an array.

func Result_FromBoolean

func Result_FromBoolean(value *bool) Result

The result of the operation is a boolean.

func Result_FromNumber

func Result_FromNumber(value *float64) Result

The result of the operation is a number.

func Result_FromObject

func Result_FromObject(value *map[string]interface{}) Result

The result of the operation is an object.

func Result_FromString

func Result_FromString(value *string) Result

The result of the operation is a string.

type RetryProps

type RetryProps struct {
	// Multiplication for how much longer the wait interval gets on every retry.
	BackoffRate *float64 `json:"backoffRate" yaml:"backoffRate"`
	// Errors to retry.
	//
	// A list of error strings to retry, which can be either predefined errors
	// (for example Errors.NoChoiceMatched) or a self-defined error.
	Errors *[]*string `json:"errors" yaml:"errors"`
	// How many seconds to wait initially before retrying.
	Interval awscdk.Duration `json:"interval" yaml:"interval"`
	// How many times to retry this particular error.
	//
	// May be 0 to disable retry for specific errors (in case you have
	// a catch-all retry policy).
	MaxAttempts *float64 `json:"maxAttempts" yaml:"maxAttempts"`
}

Retry details.

TODO: EXAMPLE

type ServiceIntegrationPattern

type ServiceIntegrationPattern string

Three ways to call an integrated service: Request Response, Run a Job and Wait for a Callback with Task Token. See: https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html

Here, they are named as FIRE_AND_FORGET, SYNC and WAIT_FOR_TASK_TOKEN respectfully.

const (
	ServiceIntegrationPattern_FIRE_AND_FORGET     ServiceIntegrationPattern = "FIRE_AND_FORGET"
	ServiceIntegrationPattern_SYNC                ServiceIntegrationPattern = "SYNC"
	ServiceIntegrationPattern_WAIT_FOR_TASK_TOKEN ServiceIntegrationPattern = "WAIT_FOR_TASK_TOKEN"
)

type SingleStateOptions

type SingleStateOptions struct {
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
	// 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 {}.
	InputPath *string `json:"inputPath" yaml:"inputPath"`
	// 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 {}.
	OutputPath *string `json:"outputPath" yaml:"outputPath"`
	// 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.
	ResultPath *string `json:"resultPath" yaml:"resultPath"`
	// 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.
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector
	//
	ResultSelector *map[string]interface{} `json:"resultSelector" yaml:"resultSelector"`
	// String to prefix all stateIds in the state machine with.
	PrefixStates *string `json:"prefixStates" yaml:"prefixStates"`
	// ID of newly created containing state.
	StateId *string `json:"stateId" yaml:"stateId"`
}

Options for creating a single state.

TODO: EXAMPLE

type State

type State interface {
	constructs.Construct
	IChainable
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	BindToGraph(graph StateGraph)
	MakeDefault(def State)
	MakeNext(next State)
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

Base class for all other state classes.

type StateGraph

type StateGraph interface {
	PolicyStatements() *[]awsiam.PolicyStatement
	StartState() State
	Timeout() awscdk.Duration
	SetTimeout(val awscdk.Duration)
	RegisterPolicyStatement(statement awsiam.PolicyStatement)
	RegisterState(state State)
	RegisterSuperGraph(graph StateGraph)
	ToGraphJson() *map[string]interface{}
	ToString() *string
}

A collection of connected states.

A StateGraph is used to keep track of all states that are connected (have transitions between them). It does not include the substatemachines in a Parallel's branches: those are their own StateGraphs, but the graphs themselves have a hierarchical relationship as well.

By assigning states to a definitive StateGraph, we verify that no state machines are constructed. In particular:

  • Every state object can only ever be in 1 StateGraph, and not inadvertently be used in two graphs.
  • Every stateId must be unique across all states in the entire state machine.

All policy statements in all states in all substatemachines are bubbled so that the top-level StateMachine instantiation can read them all and add them to the IAM Role.

You do not need to instantiate this class; it is used internally.

TODO: EXAMPLE

func NewStateGraph

func NewStateGraph(startState State, graphDescription *string) StateGraph

type StateMachine

type StateMachine interface {
	awscdk.Resource
	IStateMachine
	Env() *awscdk.ResourceEnvironment
	GrantPrincipal() awsiam.IPrincipal
	Node() constructs.Node
	PhysicalName() *string
	Role() awsiam.IRole
	Stack() awscdk.Stack
	StateMachineArn() *string
	StateMachineName() *string
	StateMachineType() StateMachineType
	AddToRolePolicy(statement awsiam.PolicyStatement)
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Grant(identity awsiam.IGrantable, actions ...*string) awsiam.Grant
	GrantExecution(identity awsiam.IGrantable, actions ...*string) awsiam.Grant
	GrantRead(identity awsiam.IGrantable) awsiam.Grant
	GrantStartExecution(identity awsiam.IGrantable) awsiam.Grant
	GrantStartSyncExecution(identity awsiam.IGrantable) awsiam.Grant
	GrantTaskResponse(identity awsiam.IGrantable) awsiam.Grant
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricAborted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricFailed(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricStarted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricSucceeded(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricThrottled(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricTime(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricTimedOut(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	ToString() *string
}

Define a StepFunctions State Machine.

TODO: EXAMPLE

func NewStateMachine

func NewStateMachine(scope constructs.Construct, id *string, props *StateMachineProps) StateMachine

type StateMachineFragment

type StateMachineFragment interface {
	constructs.Construct
	IChainable
	EndStates() *[]INextable
	Id() *string
	Node() constructs.Node
	StartState() State
	Next(next IChainable) Chain
	PrefixStates(prefix *string) StateMachineFragment
	ToSingleState(options *SingleStateOptions) Parallel
	ToString() *string
}

Base class for reusable state machine fragments.

TODO: EXAMPLE

type StateMachineProps

type StateMachineProps struct {
	// Definition for this state machine.
	Definition IChainable `json:"definition" yaml:"definition"`
	// Defines what execution history events are logged and where they are logged.
	Logs *LogOptions `json:"logs" yaml:"logs"`
	// The execution role for the state machine service.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// A name for the state machine.
	StateMachineName *string `json:"stateMachineName" yaml:"stateMachineName"`
	// Type of the state machine.
	StateMachineType StateMachineType `json:"stateMachineType" yaml:"stateMachineType"`
	// Maximum run time for this state machine.
	Timeout awscdk.Duration `json:"timeout" yaml:"timeout"`
	// Specifies whether Amazon X-Ray tracing is enabled for this state machine.
	TracingEnabled *bool `json:"tracingEnabled" yaml:"tracingEnabled"`
}

Properties for defining a State Machine.

TODO: EXAMPLE

type StateMachineType

type StateMachineType string

Two types of state machines are available in AWS Step Functions: EXPRESS AND STANDARD.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html

const (
	StateMachineType_EXPRESS  StateMachineType = "EXPRESS"
	StateMachineType_STANDARD StateMachineType = "STANDARD"
)

type StateProps

type StateProps struct {
	// A comment describing this state.
	Comment *string `json:"comment" yaml:"comment"`
	// 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 {}.
	InputPath *string `json:"inputPath" yaml:"inputPath"`
	// 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 {}.
	OutputPath *string `json:"outputPath" yaml:"outputPath"`
	// Parameters pass a collection of key-value pairs, either static values or JSONPath expressions that select from the input.
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-parameters
	//
	Parameters *map[string]interface{} `json:"parameters" yaml:"parameters"`
	// 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.
	ResultPath *string `json:"resultPath" yaml:"resultPath"`
	// 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.
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector
	//
	ResultSelector *map[string]interface{} `json:"resultSelector" yaml:"resultSelector"`
}

Properties shared by all states.

TODO: EXAMPLE

type StateTransitionMetric

type StateTransitionMetric interface {
}

Metrics on the rate limiting performed on state machine execution.

These rate limits are shared across all state machines.

TODO: EXAMPLE

func NewStateTransitionMetric

func NewStateTransitionMetric() StateTransitionMetric

type Succeed

type Succeed interface {
	State
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	BindToGraph(graph StateGraph)
	MakeDefault(def State)
	MakeNext(next State)
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

Define a Succeed state in the state machine.

Reaching a Succeed state terminates the state execution in success.

TODO: EXAMPLE

func NewSucceed

func NewSucceed(scope constructs.Construct, id *string, props *SucceedProps) Succeed

type SucceedProps

type SucceedProps struct {
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
	// 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 {}.
	InputPath *string `json:"inputPath" yaml:"inputPath"`
	// 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 {}.
	OutputPath *string `json:"outputPath" yaml:"outputPath"`
}

Properties for defining a Succeed state.

TODO: EXAMPLE

type TaskInput

type TaskInput interface {
	Type() InputType
	Value() interface{}
}

Type union for task classes that accept multiple types of payload.

TODO: EXAMPLE

func TaskInput_FromJsonPathAt

func TaskInput_FromJsonPathAt(path *string) TaskInput

Use a part of the execution data or task context as task input.

Use this when you want to use a subobject or string from the current state machine execution or the current task context as complete payload to a task.

func TaskInput_FromObject

func TaskInput_FromObject(obj *map[string]interface{}) TaskInput

Use an object as task input.

This object may contain JSON path fields as object values, if desired.

func TaskInput_FromText

func TaskInput_FromText(text *string) TaskInput

Use a literal string as task input.

This might be a JSON-encoded object, or just a text.

type TaskMetricsConfig

type TaskMetricsConfig struct {
	// The dimensions to attach to metrics.
	MetricDimensions *map[string]interface{} `json:"metricDimensions" yaml:"metricDimensions"`
	// Prefix for plural metric names of activity actions.
	MetricPrefixPlural *string `json:"metricPrefixPlural" yaml:"metricPrefixPlural"`
	// Prefix for singular metric names of activity actions.
	MetricPrefixSingular *string `json:"metricPrefixSingular" yaml:"metricPrefixSingular"`
}

Task Metrics.

TODO: EXAMPLE

type TaskStateBase

type TaskStateBase interface {
	State
	INextable
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	TaskMetrics() *TaskMetricsConfig
	TaskPolicies() *[]awsiam.PolicyStatement
	AddBranch(branch StateGraph)
	AddCatch(handler IChainable, props *CatchProps) TaskStateBase
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	AddRetry(props *RetryProps) TaskStateBase
	BindToGraph(graph StateGraph)
	MakeDefault(def State)
	MakeNext(next State)
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricFailed(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricHeartbeatTimedOut(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricRunTime(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricScheduled(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricScheduleTime(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricStarted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricSucceeded(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricTime(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricTimedOut(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	Next(next IChainable) Chain
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

Define a Task state in the state machine.

Reaching a Task state causes some work to be executed, represented by the Task's resource property. Task constructs represent a generic Amazon States Language Task.

For some resource types, more specific subclasses of Task may be available which are more convenient to use.

type TaskStateBaseProps

type TaskStateBaseProps struct {
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
	// Timeout for the heartbeat.
	Heartbeat awscdk.Duration `json:"heartbeat" yaml:"heartbeat"`
	// 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 {}.
	InputPath *string `json:"inputPath" yaml:"inputPath"`
	// AWS Step Functions integrates with services directly in the Amazon States Language.
	//
	// You can control these AWS services using service integration patterns
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token
	//
	IntegrationPattern IntegrationPattern `json:"integrationPattern" yaml:"integrationPattern"`
	// JSONPath expression to select select a portion of the state output to pass to the next state.
	//
	// May also be the special value JsonPath.DISCARD, which will cause the effective
	// output to be the empty object {}.
	OutputPath *string `json:"outputPath" yaml:"outputPath"`
	// 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.
	ResultPath *string `json:"resultPath" yaml:"resultPath"`
	// 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.
	// See: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector
	//
	ResultSelector *map[string]interface{} `json:"resultSelector" yaml:"resultSelector"`
	// Timeout for the state machine.
	Timeout awscdk.Duration `json:"timeout" yaml:"timeout"`
}

Props that are common to all tasks.

TODO: EXAMPLE

type Wait

type Wait interface {
	State
	INextable
	Branches() *[]StateGraph
	Comment() *string
	DefaultChoice() State
	SetDefaultChoice(val State)
	EndStates() *[]INextable
	Id() *string
	InputPath() *string
	Iteration() StateGraph
	SetIteration(val StateGraph)
	Node() constructs.Node
	OutputPath() *string
	Parameters() *map[string]interface{}
	ResultPath() *string
	ResultSelector() *map[string]interface{}
	StartState() State
	StateId() *string
	AddBranch(branch StateGraph)
	AddChoice(condition Condition, next State)
	AddIterator(iteration StateGraph)
	AddPrefix(x *string)
	BindToGraph(graph StateGraph)
	MakeDefault(def State)
	MakeNext(next State)
	Next(next IChainable) Chain
	RenderBranches() interface{}
	RenderChoices() interface{}
	RenderInputOutput() interface{}
	RenderIterator() interface{}
	RenderNextEnd() interface{}
	RenderResultSelector() interface{}
	RenderRetryCatch() interface{}
	ToStateJson() *map[string]interface{}
	ToString() *string
	ValidateState() *[]*string
	WhenBoundToGraph(graph StateGraph)
}

Define a Wait state in the state machine.

A Wait state can be used to delay execution of the state machine for a while.

TODO: EXAMPLE

func NewWait

func NewWait(scope constructs.Construct, id *string, props *WaitProps) Wait

type WaitProps

type WaitProps struct {
	// Wait duration.
	Time WaitTime `json:"time" yaml:"time"`
	// An optional description for this state.
	Comment *string `json:"comment" yaml:"comment"`
}

Properties for defining a Wait state.

TODO: EXAMPLE

type WaitTime

type WaitTime interface {
}

Represents the Wait state which delays a state machine from continuing for a specified time.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-wait-state.html

func WaitTime_Duration

func WaitTime_Duration(duration awscdk.Duration) WaitTime

Wait a fixed amount of time.

func WaitTime_SecondsPath

func WaitTime_SecondsPath(path *string) WaitTime

Wait for a number of seconds stored in the state object.

Example value: `$.waitSeconds`

func WaitTime_Timestamp

func WaitTime_Timestamp(timestamp *string) WaitTime

Wait until the given ISO8601 timestamp.

Example value: `2016-03-14T01:59:00Z`

func WaitTime_TimestampPath

func WaitTime_TimestampPath(path *string) WaitTime

Wait until a timestamp found in the state object.

Example value: `$.waitTimestamp`

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL