// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.

package sfn

import (
	"github.com/aws/aws-sdk-go/private/protocol"
)

const (

	// ErrCodeActivityAlreadyExists for service response error code
	// "ActivityAlreadyExists".
	//
	// Activity already exists. EncryptionConfiguration may not be updated.
	ErrCodeActivityAlreadyExists = "ActivityAlreadyExists"

	// ErrCodeActivityDoesNotExist for service response error code
	// "ActivityDoesNotExist".
	//
	// The specified activity does not exist.
	ErrCodeActivityDoesNotExist = "ActivityDoesNotExist"

	// ErrCodeActivityLimitExceeded for service response error code
	// "ActivityLimitExceeded".
	//
	// The maximum number of activities has been reached. Existing activities must
	// be deleted before a new activity can be created.
	ErrCodeActivityLimitExceeded = "ActivityLimitExceeded"

	// ErrCodeActivityWorkerLimitExceeded for service response error code
	// "ActivityWorkerLimitExceeded".
	//
	// The maximum number of workers concurrently polling for activity tasks has
	// been reached.
	ErrCodeActivityWorkerLimitExceeded = "ActivityWorkerLimitExceeded"

	// ErrCodeConflictException for service response error code
	// "ConflictException".
	//
	// Updating or deleting a resource can cause an inconsistent state. This error
	// occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion,
	// or UpdateStateMachine with the publish parameter set to true.
	//
	// HTTP Status Code: 409
	ErrCodeConflictException = "ConflictException"

	// ErrCodeExecutionAlreadyExists for service response error code
	// "ExecutionAlreadyExists".
	//
	// The execution has the same name as another execution (but a different input).
	//
	// Executions with the same name and input are considered idempotent.
	ErrCodeExecutionAlreadyExists = "ExecutionAlreadyExists"

	// ErrCodeExecutionDoesNotExist for service response error code
	// "ExecutionDoesNotExist".
	//
	// The specified execution does not exist.
	ErrCodeExecutionDoesNotExist = "ExecutionDoesNotExist"

	// ErrCodeExecutionLimitExceeded for service response error code
	// "ExecutionLimitExceeded".
	//
	// The maximum number of running executions has been reached. Running executions
	// must end or be stopped before a new execution can be started.
	ErrCodeExecutionLimitExceeded = "ExecutionLimitExceeded"

	// ErrCodeExecutionNotRedrivable for service response error code
	// "ExecutionNotRedrivable".
	//
	// The execution Amazon Resource Name (ARN) that you specified for executionArn
	// cannot be redriven.
	ErrCodeExecutionNotRedrivable = "ExecutionNotRedrivable"

	// ErrCodeInvalidArn for service response error code
	// "InvalidArn".
	//
	// The provided Amazon Resource Name (ARN) is not valid.
	ErrCodeInvalidArn = "InvalidArn"

	// ErrCodeInvalidDefinition for service response error code
	// "InvalidDefinition".
	//
	// The provided Amazon States Language definition is not valid.
	ErrCodeInvalidDefinition = "InvalidDefinition"

	// ErrCodeInvalidEncryptionConfiguration for service response error code
	// "InvalidEncryptionConfiguration".
	//
	// Received when encryptionConfiguration is specified but various conditions
	// exist which make the configuration invalid. For example, if type is set to
	// CUSTOMER_MANAGED_KMS_KEY, but kmsKeyId is null, or kmsDataKeyReusePeriodSeconds
	// is not between 60 and 900, or the KMS key is not symmetric or inactive.
	ErrCodeInvalidEncryptionConfiguration = "InvalidEncryptionConfiguration"

	// ErrCodeInvalidExecutionInput for service response error code
	// "InvalidExecutionInput".
	//
	// The provided JSON input data is not valid.
	ErrCodeInvalidExecutionInput = "InvalidExecutionInput"

	// ErrCodeInvalidLoggingConfiguration for service response error code
	// "InvalidLoggingConfiguration".
	//
	// Configuration is not valid.
	ErrCodeInvalidLoggingConfiguration = "InvalidLoggingConfiguration"

	// ErrCodeInvalidName for service response error code
	// "InvalidName".
	//
	// The provided name is not valid.
	ErrCodeInvalidName = "InvalidName"

	// ErrCodeInvalidOutput for service response error code
	// "InvalidOutput".
	//
	// The provided JSON output data is not valid.
	ErrCodeInvalidOutput = "InvalidOutput"

	// ErrCodeInvalidToken for service response error code
	// "InvalidToken".
	//
	// The provided token is not valid.
	ErrCodeInvalidToken = "InvalidToken"

	// ErrCodeInvalidTracingConfiguration for service response error code
	// "InvalidTracingConfiguration".
	//
	// Your tracingConfiguration key does not match, or enabled has not been set
	// to true or false.
	ErrCodeInvalidTracingConfiguration = "InvalidTracingConfiguration"

	// ErrCodeKmsAccessDeniedException for service response error code
	// "KmsAccessDeniedException".
	//
	// Either your KMS key policy or API caller does not have the required permissions.
	ErrCodeKmsAccessDeniedException = "KmsAccessDeniedException"

	// ErrCodeKmsInvalidStateException for service response error code
	// "KmsInvalidStateException".
	//
	// The KMS key is not in valid state, for example: Disabled or Deleted.
	ErrCodeKmsInvalidStateException = "KmsInvalidStateException"

	// ErrCodeKmsThrottlingException for service response error code
	// "KmsThrottlingException".
	//
	// Received when KMS returns ThrottlingException for a KMS call that Step Functions
	// makes on behalf of the caller.
	ErrCodeKmsThrottlingException = "KmsThrottlingException"

	// ErrCodeMissingRequiredParameter for service response error code
	// "MissingRequiredParameter".
	//
	// Request is missing a required parameter. This error occurs if both definition
	// and roleArn are not specified.
	ErrCodeMissingRequiredParameter = "MissingRequiredParameter"

	// ErrCodeResourceNotFound for service response error code
	// "ResourceNotFound".
	//
	// Could not find the referenced resource.
	ErrCodeResourceNotFound = "ResourceNotFound"

	// ErrCodeServiceQuotaExceededException for service response error code
	// "ServiceQuotaExceededException".
	//
	// The request would cause a service quota to be exceeded.
	//
	// HTTP Status Code: 402
	ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException"

	// ErrCodeStateMachineAlreadyExists for service response error code
	// "StateMachineAlreadyExists".
	//
	// A state machine with the same name but a different definition or role ARN
	// already exists.
	ErrCodeStateMachineAlreadyExists = "StateMachineAlreadyExists"

	// ErrCodeStateMachineDeleting for service response error code
	// "StateMachineDeleting".
	//
	// The specified state machine is being deleted.
	ErrCodeStateMachineDeleting = "StateMachineDeleting"

	// ErrCodeStateMachineDoesNotExist for service response error code
	// "StateMachineDoesNotExist".
	//
	// The specified state machine does not exist.
	ErrCodeStateMachineDoesNotExist = "StateMachineDoesNotExist"

	// ErrCodeStateMachineLimitExceeded for service response error code
	// "StateMachineLimitExceeded".
	//
	// The maximum number of state machines has been reached. Existing state machines
	// must be deleted before a new state machine can be created.
	ErrCodeStateMachineLimitExceeded = "StateMachineLimitExceeded"

	// ErrCodeStateMachineTypeNotSupported for service response error code
	// "StateMachineTypeNotSupported".
	//
	// State machine type is not supported.
	ErrCodeStateMachineTypeNotSupported = "StateMachineTypeNotSupported"

	// ErrCodeTaskDoesNotExist for service response error code
	// "TaskDoesNotExist".
	//
	// The activity does not exist.
	ErrCodeTaskDoesNotExist = "TaskDoesNotExist"

	// ErrCodeTaskTimedOut for service response error code
	// "TaskTimedOut".
	//
	// The task token has either expired or the task associated with the token has
	// already been closed.
	ErrCodeTaskTimedOut = "TaskTimedOut"

	// ErrCodeTooManyTags for service response error code
	// "TooManyTags".
	//
	// You've exceeded the number of tags allowed for a resource. See the Limits
	// Topic (https://docs.aws.amazon.com/step-functions/latest/dg/limits.html)
	// in the Step Functions Developer Guide.
	ErrCodeTooManyTags = "TooManyTags"

	// ErrCodeValidationException for service response error code
	// "ValidationException".
	//
	// The input does not satisfy the constraints specified by an Amazon Web Services
	// service.
	ErrCodeValidationException = "ValidationException"
)

var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{
	"ActivityAlreadyExists":          newErrorActivityAlreadyExists,
	"ActivityDoesNotExist":           newErrorActivityDoesNotExist,
	"ActivityLimitExceeded":          newErrorActivityLimitExceeded,
	"ActivityWorkerLimitExceeded":    newErrorActivityWorkerLimitExceeded,
	"ConflictException":              newErrorConflictException,
	"ExecutionAlreadyExists":         newErrorExecutionAlreadyExists,
	"ExecutionDoesNotExist":          newErrorExecutionDoesNotExist,
	"ExecutionLimitExceeded":         newErrorExecutionLimitExceeded,
	"ExecutionNotRedrivable":         newErrorExecutionNotRedrivable,
	"InvalidArn":                     newErrorInvalidArn,
	"InvalidDefinition":              newErrorInvalidDefinition,
	"InvalidEncryptionConfiguration": newErrorInvalidEncryptionConfiguration,
	"InvalidExecutionInput":          newErrorInvalidExecutionInput,
	"InvalidLoggingConfiguration":    newErrorInvalidLoggingConfiguration,
	"InvalidName":                    newErrorInvalidName,
	"InvalidOutput":                  newErrorInvalidOutput,
	"InvalidToken":                   newErrorInvalidToken,
	"InvalidTracingConfiguration":    newErrorInvalidTracingConfiguration,
	"KmsAccessDeniedException":       newErrorKmsAccessDeniedException,
	"KmsInvalidStateException":       newErrorKmsInvalidStateException,
	"KmsThrottlingException":         newErrorKmsThrottlingException,
	"MissingRequiredParameter":       newErrorMissingRequiredParameter,
	"ResourceNotFound":               newErrorResourceNotFound,
	"ServiceQuotaExceededException":  newErrorServiceQuotaExceededException,
	"StateMachineAlreadyExists":      newErrorStateMachineAlreadyExists,
	"StateMachineDeleting":           newErrorStateMachineDeleting,
	"StateMachineDoesNotExist":       newErrorStateMachineDoesNotExist,
	"StateMachineLimitExceeded":      newErrorStateMachineLimitExceeded,
	"StateMachineTypeNotSupported":   newErrorStateMachineTypeNotSupported,
	"TaskDoesNotExist":               newErrorTaskDoesNotExist,
	"TaskTimedOut":                   newErrorTaskTimedOut,
	"TooManyTags":                    newErrorTooManyTags,
	"ValidationException":            newErrorValidationException,
}
