com.amazonaws.services.simpleworkflow.AmazonSimpleWorkflow Maven / Gradle / Ivy
Show all versions of aws-java-sdk-simpleworkflow Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.simpleworkflow;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.simpleworkflow.model.*;
/**
* Interface for accessing Amazon SWF.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.simpleworkflow.AbstractAmazonSimpleWorkflow} instead.
*
*
* Amazon Simple Workflow Service
*
* The Amazon Simple Workflow Service (Amazon SWF) makes it easy to build applications that use Amazon's cloud to
* coordinate work across distributed components. In Amazon SWF, a task represents a logical unit of work that is
* performed by a component of your workflow. Coordinating tasks in a workflow involves managing intertask dependencies,
* scheduling, and concurrency in accordance with the logical flow of the application.
*
*
* Amazon SWF gives you full control over implementing tasks and coordinating them without worrying about underlying
* complexities such as tracking their progress and maintaining their state.
*
*
* This documentation serves as reference only. For a broader overview of the Amazon SWF programming model, see the
* Amazon SWF Developer Guide .
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AmazonSimpleWorkflow {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "swf";
/**
* Overrides the default endpoint for this client ("swf.us-east-1.amazonaws.com"). Callers can use this method to
* control which AWS region they want to work with.
*
* Callers can pass in just the endpoint (ex: "swf.us-east-1.amazonaws.com") or a full URL, including the protocol
* (ex: "swf.us-east-1.amazonaws.com"). If the protocol is not specified here, the default protocol from this
* client's {@link ClientConfiguration} will be used, which by default is HTTPS.
*
* For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available
* endpoints for all AWS services, see: https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/java-dg-region-selection.html#region-selection-
* choose-endpoint
*
* This method is not threadsafe. An endpoint should be configured when the client is created and before any
* service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in
* transit or retrying.
*
* @param endpoint
* The endpoint (ex: "swf.us-east-1.amazonaws.com") or a full URL, including the protocol (ex:
* "swf.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will communicate with.
* @deprecated use {@link AwsClientBuilder#setEndpointConfiguration(AwsClientBuilder.EndpointConfiguration)} for
* example:
* {@code builder.setEndpointConfiguration(new EndpointConfiguration(endpoint, signingRegion));}
*/
@Deprecated
void setEndpoint(String endpoint);
/**
* An alternative to {@link AmazonSimpleWorkflow#setEndpoint(String)}, sets the regional endpoint for this client's
* service calls. Callers can use this method to control which AWS region they want to work with.
*
* By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the
* {@link ClientConfiguration} supplied at construction.
*
* This method is not threadsafe. A region should be configured when the client is created and before any service
* requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit
* or retrying.
*
* @param region
* The region this client will communicate with. See {@link Region#getRegion(com.amazonaws.regions.Regions)}
* for accessing a given region. Must not be null and must be a region where the service is available.
*
* @see Region#getRegion(com.amazonaws.regions.Regions)
* @see Region#createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)
* @see Region#isServiceSupported(String)
* @deprecated use {@link AwsClientBuilder#setRegion(String)}
*/
@Deprecated
void setRegion(Region region);
/**
*
* Returns the number of closed workflow executions within the given domain that meet the specified filtering
* criteria.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* tagFilter.tag
: String constraint. The key is swf:tagFilter.tag
.
*
*
* -
*
* typeFilter.name
: String constraint. The key is swf:typeFilter.name
.
*
*
* -
*
* typeFilter.version
: String constraint. The key is swf:typeFilter.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param countClosedWorkflowExecutionsRequest
* @return Result of the CountClosedWorkflowExecutions operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.CountClosedWorkflowExecutions
* @see AWS API Documentation
*/
WorkflowExecutionCount countClosedWorkflowExecutions(CountClosedWorkflowExecutionsRequest countClosedWorkflowExecutionsRequest);
/**
*
* Returns the number of open workflow executions within the given domain that meet the specified filtering
* criteria.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* tagFilter.tag
: String constraint. The key is swf:tagFilter.tag
.
*
*
* -
*
* typeFilter.name
: String constraint. The key is swf:typeFilter.name
.
*
*
* -
*
* typeFilter.version
: String constraint. The key is swf:typeFilter.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param countOpenWorkflowExecutionsRequest
* @return Result of the CountOpenWorkflowExecutions operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.CountOpenWorkflowExecutions
* @see AWS API Documentation
*/
WorkflowExecutionCount countOpenWorkflowExecutions(CountOpenWorkflowExecutionsRequest countOpenWorkflowExecutionsRequest);
/**
*
* Returns the estimated number of activity tasks in the specified task list. The count returned is an approximation
* and isn't guaranteed to be exact. If you specify a task list that no activity task was ever scheduled in then
* 0
is returned.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the taskList.name
parameter by using a Condition
element with the
* swf:taskList.name
key to allow the action to access only certain task lists.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param countPendingActivityTasksRequest
* @return Result of the CountPendingActivityTasks operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.CountPendingActivityTasks
* @see AWS
* API Documentation
*/
PendingTaskCount countPendingActivityTasks(CountPendingActivityTasksRequest countPendingActivityTasksRequest);
/**
*
* Returns the estimated number of decision tasks in the specified task list. The count returned is an approximation
* and isn't guaranteed to be exact. If you specify a task list that no decision task was ever scheduled in then
* 0
is returned.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the taskList.name
parameter by using a Condition
element with the
* swf:taskList.name
key to allow the action to access only certain task lists.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param countPendingDecisionTasksRequest
* @return Result of the CountPendingDecisionTasks operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.CountPendingDecisionTasks
* @see AWS
* API Documentation
*/
PendingTaskCount countPendingDecisionTasks(CountPendingDecisionTasksRequest countPendingDecisionTasksRequest);
/**
*
* Deletes the specified activity type.
*
*
* Note: Prior to deletion, activity types must first be deprecated.
*
*
* After an activity type has been deleted, you cannot schedule new activities of that type. Activities that started
* before the type was deleted will continue to run.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* activityType.name
: String constraint. The key is swf:activityType.name
.
*
*
* -
*
* activityType.version
: String constraint. The key is swf:activityType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param deleteActivityTypeRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws TypeNotDeprecatedException
* Returned when the resource type has not been deprecated.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DeleteActivityType
* @see AWS API
* Documentation
*/
void deleteActivityType(DeleteActivityTypeRequest deleteActivityTypeRequest);
/**
*
* Deletes the specified workflow type.
*
*
* Note: Prior to deletion, workflow types must first be deprecated.
*
*
* After a workflow type has been deleted, you cannot create new executions of that type. Executions that started
* before the type was deleted will continue to run.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* workflowType.name
: String constraint. The key is swf:workflowType.name
.
*
*
* -
*
* workflowType.version
: String constraint. The key is swf:workflowType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param deleteWorkflowTypeRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws TypeNotDeprecatedException
* Returned when the resource type has not been deprecated.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DeleteWorkflowType
* @see AWS API
* Documentation
*/
void deleteWorkflowType(DeleteWorkflowTypeRequest deleteWorkflowTypeRequest);
/**
*
* Deprecates the specified activity type. After an activity type has been deprecated, you cannot create new
* tasks of that activity type. Tasks of this type that were scheduled before the type was deprecated continue to
* run.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* activityType.name
: String constraint. The key is swf:activityType.name
.
*
*
* -
*
* activityType.version
: String constraint. The key is swf:activityType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param deprecateActivityTypeRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws TypeDeprecatedException
* Returned when the specified activity or workflow type was already deprecated.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DeprecateActivityType
* @see AWS API
* Documentation
*/
void deprecateActivityType(DeprecateActivityTypeRequest deprecateActivityTypeRequest);
/**
*
* Deprecates the specified domain. After a domain has been deprecated it cannot be used to create new workflow
* executions or register new types. However, you can still use visibility actions on this domain. Deprecating a
* domain also deprecates all activity and workflow types registered in the domain. Executions that were started
* before the domain was deprecated continues to run.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param deprecateDomainRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws DomainDeprecatedException
* Returned when the specified domain has been deprecated.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DeprecateDomain
* @see AWS API
* Documentation
*/
void deprecateDomain(DeprecateDomainRequest deprecateDomainRequest);
/**
*
* Deprecates the specified workflow type. After a workflow type has been deprecated, you cannot create new
* executions of that type. Executions that were started before the type was deprecated continues to run. A
* deprecated workflow type may still be used when calling visibility actions.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* workflowType.name
: String constraint. The key is swf:workflowType.name
.
*
*
* -
*
* workflowType.version
: String constraint. The key is swf:workflowType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param deprecateWorkflowTypeRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws TypeDeprecatedException
* Returned when the specified activity or workflow type was already deprecated.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DeprecateWorkflowType
* @see AWS API
* Documentation
*/
void deprecateWorkflowType(DeprecateWorkflowTypeRequest deprecateWorkflowTypeRequest);
/**
*
* Returns information about the specified activity type. This includes configuration settings provided when the
* type was registered and other general information about the type.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* activityType.name
: String constraint. The key is swf:activityType.name
.
*
*
* -
*
* activityType.version
: String constraint. The key is swf:activityType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param describeActivityTypeRequest
* @return Result of the DescribeActivityType operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DescribeActivityType
* @see AWS API
* Documentation
*/
ActivityTypeDetail describeActivityType(DescribeActivityTypeRequest describeActivityTypeRequest);
/**
*
* Returns information about the specified domain, including description and status.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param describeDomainRequest
* @return Result of the DescribeDomain operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DescribeDomain
* @see AWS API
* Documentation
*/
DomainDetail describeDomain(DescribeDomainRequest describeDomainRequest);
/**
*
* Returns information about the specified workflow execution including its type and some statistics.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param describeWorkflowExecutionRequest
* @return Result of the DescribeWorkflowExecution operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DescribeWorkflowExecution
* @see AWS
* API Documentation
*/
WorkflowExecutionDetail describeWorkflowExecution(DescribeWorkflowExecutionRequest describeWorkflowExecutionRequest);
/**
*
* Returns information about the specified workflow type. This includes configuration settings specified when
* the type was registered and other information such as creation date, current status, etc.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* workflowType.name
: String constraint. The key is swf:workflowType.name
.
*
*
* -
*
* workflowType.version
: String constraint. The key is swf:workflowType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param describeWorkflowTypeRequest
* @return Result of the DescribeWorkflowType operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.DescribeWorkflowType
* @see AWS API
* Documentation
*/
WorkflowTypeDetail describeWorkflowType(DescribeWorkflowTypeRequest describeWorkflowTypeRequest);
/**
*
* Returns the history of the specified workflow execution. The results may be split into multiple pages. To
* retrieve subsequent pages, make the call again using the nextPageToken
returned by the initial call.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param getWorkflowExecutionHistoryRequest
* @return Result of the GetWorkflowExecutionHistory operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.GetWorkflowExecutionHistory
* @see AWS API Documentation
*/
History getWorkflowExecutionHistory(GetWorkflowExecutionHistoryRequest getWorkflowExecutionHistoryRequest);
/**
*
* Returns information about all activities registered in the specified domain that match the specified name and
* registration status. The result includes information like creation date, current status of the activity, etc. The
* results may be split into multiple pages. To retrieve subsequent pages, make the call again using the
* nextPageToken
returned by the initial call.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param listActivityTypesRequest
* @return Result of the ListActivityTypes operation returned by the service.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @sample AmazonSimpleWorkflow.ListActivityTypes
* @see AWS API
* Documentation
*/
ActivityTypeInfos listActivityTypes(ListActivityTypesRequest listActivityTypesRequest);
/**
*
* Returns a list of closed workflow executions in the specified domain that meet the filtering criteria. The
* results may be split into multiple pages. To retrieve subsequent pages, make the call again using the
* nextPageToken returned by the initial call.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* tagFilter.tag
: String constraint. The key is swf:tagFilter.tag
.
*
*
* -
*
* typeFilter.name
: String constraint. The key is swf:typeFilter.name
.
*
*
* -
*
* typeFilter.version
: String constraint. The key is swf:typeFilter.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param listClosedWorkflowExecutionsRequest
* @return Result of the ListClosedWorkflowExecutions operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.ListClosedWorkflowExecutions
* @see AWS API Documentation
*/
WorkflowExecutionInfos listClosedWorkflowExecutions(ListClosedWorkflowExecutionsRequest listClosedWorkflowExecutionsRequest);
/**
*
* Returns the list of domains registered in the account. The results may be split into multiple pages. To retrieve
* subsequent pages, make the call again using the nextPageToken returned by the initial call.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains. The
* element must be set to arn:aws:swf::AccountID:domain/*
, where AccountID is the account ID,
* with no dashes.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param listDomainsRequest
* @return Result of the ListDomains operation returned by the service.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.ListDomains
* @see AWS API
* Documentation
*/
DomainInfos listDomains(ListDomainsRequest listDomainsRequest);
/**
*
* Returns a list of open workflow executions in the specified domain that meet the filtering criteria. The results
* may be split into multiple pages. To retrieve subsequent pages, make the call again using the nextPageToken
* returned by the initial call.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* tagFilter.tag
: String constraint. The key is swf:tagFilter.tag
.
*
*
* -
*
* typeFilter.name
: String constraint. The key is swf:typeFilter.name
.
*
*
* -
*
* typeFilter.version
: String constraint. The key is swf:typeFilter.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param listOpenWorkflowExecutionsRequest
* @return Result of the ListOpenWorkflowExecutions operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.ListOpenWorkflowExecutions
* @see AWS
* API Documentation
*/
WorkflowExecutionInfos listOpenWorkflowExecutions(ListOpenWorkflowExecutionsRequest listOpenWorkflowExecutionsRequest);
/**
*
* List tags for a given domain.
*
*
* @param listTagsForResourceRequest
* @return Result of the ListTagsForResource operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.ListTagsForResource
* @see AWS API
* Documentation
*/
ListTagsForResourceOutput listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* Returns information about workflow types in the specified domain. The results may be split into multiple pages
* that can be retrieved by making the call repeatedly.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param listWorkflowTypesRequest
* @return Result of the ListWorkflowTypes operation returned by the service.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @sample AmazonSimpleWorkflow.ListWorkflowTypes
* @see AWS API
* Documentation
*/
WorkflowTypeInfos listWorkflowTypes(ListWorkflowTypesRequest listWorkflowTypesRequest);
/**
*
* Used by workers to get an ActivityTask from the specified activity taskList
. This initiates a
* long poll, where the service holds the HTTP connection open and responds as soon as a task becomes available. The
* maximum time the service holds on to the request before responding is 60 seconds. If no task is available within
* 60 seconds, the poll returns an empty result. An empty result, in this context, means that an ActivityTask is
* returned, but that the value of taskToken is an empty string. If a task is returned, the worker should use its
* type to identify and process it correctly.
*
*
*
* Workers should set their client side socket timeout to at least 70 seconds (10 seconds higher than the maximum
* time service may hold the poll request).
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the taskList.name
parameter by using a Condition
element with the
* swf:taskList.name
key to allow the action to access only certain task lists.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param pollForActivityTaskRequest
* @return Result of the PollForActivityTask operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @sample AmazonSimpleWorkflow.PollForActivityTask
* @see AWS API
* Documentation
*/
ActivityTask pollForActivityTask(PollForActivityTaskRequest pollForActivityTaskRequest);
/**
*
* Used by deciders to get a DecisionTask from the specified decision taskList
. A decision task
* may be returned for any open workflow execution that is using the specified task list. The task includes a
* paginated view of the history of the workflow execution. The decider should use the workflow type and the history
* to determine how to properly handle the task.
*
*
* This action initiates a long poll, where the service holds the HTTP connection open and responds as soon a task
* becomes available. If no decision task is available in the specified task list before the timeout of 60 seconds
* expires, an empty result is returned. An empty result, in this context, means that a DecisionTask is returned,
* but that the value of taskToken is an empty string.
*
*
*
* Deciders should set their client side socket timeout to at least 70 seconds (10 seconds higher than the timeout).
*
*
*
* Because the number of workflow history events for a single workflow execution might be very large, the result
* returned might be split up across a number of pages. To retrieve subsequent pages, make additional calls to
* PollForDecisionTask
using the nextPageToken
returned by the initial call. Note that you
* do not call GetWorkflowExecutionHistory
with this nextPageToken
. Instead, call
* PollForDecisionTask
again.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the taskList.name
parameter by using a Condition
element with the
* swf:taskList.name
key to allow the action to access only certain task lists.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param pollForDecisionTaskRequest
* @return Result of the PollForDecisionTask operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @sample AmazonSimpleWorkflow.PollForDecisionTask
* @see AWS API
* Documentation
*/
DecisionTask pollForDecisionTask(PollForDecisionTaskRequest pollForDecisionTaskRequest);
/**
*
* Used by activity workers to report to the service that the ActivityTask represented by the specified
* taskToken
is still making progress. The worker can also specify details of the progress, for example
* percent complete, using the details
parameter. This action can also be used by the worker as a
* mechanism to check if cancellation is being requested for the activity task. If a cancellation is being attempted
* for the specified task, then the boolean cancelRequested
flag returned by the service is set to
* true
.
*
*
* This action resets the taskHeartbeatTimeout
clock. The taskHeartbeatTimeout
is
* specified in RegisterActivityType.
*
*
* This action doesn't in itself create an event in the workflow execution history. However, if the task times out,
* the workflow execution history contains a ActivityTaskTimedOut
event that contains the information
* from the last heartbeat generated by the activity worker.
*
*
*
* The taskStartToCloseTimeout
of an activity type is the maximum duration of an activity task,
* regardless of the number of RecordActivityTaskHeartbeat requests received. The
* taskStartToCloseTimeout
is also specified in RegisterActivityType.
*
*
*
* This operation is only useful for long-lived activities to report liveliness of the task and to determine if a
* cancellation is being attempted.
*
*
*
* If the cancelRequested
flag returns true
, a cancellation is being attempted. If the
* worker can cancel the activity, it should respond with RespondActivityTaskCanceled. Otherwise, it should
* ignore the cancellation request.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param recordActivityTaskHeartbeatRequest
* @return Result of the RecordActivityTaskHeartbeat operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.RecordActivityTaskHeartbeat
* @see AWS API Documentation
*/
ActivityTaskStatus recordActivityTaskHeartbeat(RecordActivityTaskHeartbeatRequest recordActivityTaskHeartbeatRequest);
/**
*
* Registers a new activity type along with its configuration settings in the specified domain.
*
*
*
* A TypeAlreadyExists
fault is returned if the type already exists in the domain. You cannot change
* any configuration settings of the type after its registration, and it must be registered as a new version.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* defaultTaskList.name
: String constraint. The key is swf:defaultTaskList.name
.
*
*
* -
*
* name
: String constraint. The key is swf:name
.
*
*
* -
*
* version
: String constraint. The key is swf:version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param registerActivityTypeRequest
* @throws TypeAlreadyExistsException
* Returned if the type already exists in the specified domain. You may get this fault if you are
* registering a type that is either already registered or deprecated, or if you undeprecate a type that is
* currently registered.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.RegisterActivityType
* @see AWS API
* Documentation
*/
void registerActivityType(RegisterActivityTypeRequest registerActivityTypeRequest);
/**
*
* Registers a new domain.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* You cannot use an IAM policy to control domain access for this action. The name of the domain being registered is
* available as the resource of this action.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param registerDomainRequest
* @throws DomainAlreadyExistsException
* Returned if the domain already exists. You may get this fault if you are registering a domain that is
* either already registered or deprecated, or if you undeprecate a domain that is currently registered.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @throws TooManyTagsException
* You've exceeded the number of tags allowed for a domain.
* @sample AmazonSimpleWorkflow.RegisterDomain
* @see AWS API
* Documentation
*/
void registerDomain(RegisterDomainRequest registerDomainRequest);
/**
*
* Registers a new workflow type and its configuration settings in the specified domain.
*
*
* The retention period for the workflow history is set by the RegisterDomain action.
*
*
*
* If the type already exists, then a TypeAlreadyExists
fault is returned. You cannot change the
* configuration settings of a workflow type once it is registered and it must be registered as a new version.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* defaultTaskList.name
: String constraint. The key is swf:defaultTaskList.name
.
*
*
* -
*
* name
: String constraint. The key is swf:name
.
*
*
* -
*
* version
: String constraint. The key is swf:version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param registerWorkflowTypeRequest
* @throws TypeAlreadyExistsException
* Returned if the type already exists in the specified domain. You may get this fault if you are
* registering a type that is either already registered or deprecated, or if you undeprecate a type that is
* currently registered.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.RegisterWorkflowType
* @see AWS API
* Documentation
*/
void registerWorkflowType(RegisterWorkflowTypeRequest registerWorkflowTypeRequest);
/**
*
* Records a WorkflowExecutionCancelRequested
event in the currently running workflow execution
* identified by the given domain, workflowId, and runId. This logically requests the cancellation of the workflow
* execution as a whole. It is up to the decider to take appropriate actions when it receives an execution history
* with this event.
*
*
*
* If the runId isn't specified, the WorkflowExecutionCancelRequested
event is recorded in the history
* of the current open workflow execution with the specified workflowId in the domain.
*
*
*
* Because this action allows the workflow to properly clean up and gracefully close, it should be used instead of
* TerminateWorkflowExecution when possible.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param requestCancelWorkflowExecutionRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.RequestCancelWorkflowExecution
* @see AWS API Documentation
*/
void requestCancelWorkflowExecution(RequestCancelWorkflowExecutionRequest requestCancelWorkflowExecutionRequest);
/**
*
* Used by workers to tell the service that the ActivityTask identified by the taskToken
was
* successfully canceled. Additional details
can be provided using the details
argument.
*
*
* These details
(if provided) appear in the ActivityTaskCanceled
event added to the
* workflow history.
*
*
*
* Only use this operation if the canceled
flag of a RecordActivityTaskHeartbeat request returns
* true
and if the activity can be safely undone or abandoned.
*
*
*
* A task is considered open from the time that it is scheduled until it is closed. Therefore a task is reported as
* open while a worker is processing it. A task is closed after it has been specified in a call to
* RespondActivityTaskCompleted, RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task
* has timed
* out.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param respondActivityTaskCanceledRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.RespondActivityTaskCanceled
* @see AWS API Documentation
*/
void respondActivityTaskCanceled(RespondActivityTaskCanceledRequest respondActivityTaskCanceledRequest);
/**
*
* Used by workers to tell the service that the ActivityTask identified by the taskToken
* completed successfully with a result
(if provided). The result
appears in the
* ActivityTaskCompleted
event in the workflow history.
*
*
*
* If the requested task doesn't complete successfully, use RespondActivityTaskFailed instead. If the worker
* finds that the task is canceled through the canceled
flag returned by
* RecordActivityTaskHeartbeat, it should cancel the task, clean up and then call
* RespondActivityTaskCanceled.
*
*
*
* A task is considered open from the time that it is scheduled until it is closed. Therefore a task is reported as
* open while a worker is processing it. A task is closed after it has been specified in a call to
* RespondActivityTaskCompleted, RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task
* has timed
* out.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param respondActivityTaskCompletedRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.RespondActivityTaskCompleted
* @see AWS API Documentation
*/
void respondActivityTaskCompleted(RespondActivityTaskCompletedRequest respondActivityTaskCompletedRequest);
/**
*
* Used by workers to tell the service that the ActivityTask identified by the taskToken
has
* failed with reason
(if specified). The reason
and details
appear in the
* ActivityTaskFailed
event added to the workflow history.
*
*
* A task is considered open from the time that it is scheduled until it is closed. Therefore a task is reported as
* open while a worker is processing it. A task is closed after it has been specified in a call to
* RespondActivityTaskCompleted, RespondActivityTaskCanceled, RespondActivityTaskFailed, or the task
* has timed
* out.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param respondActivityTaskFailedRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.RespondActivityTaskFailed
* @see AWS
* API Documentation
*/
void respondActivityTaskFailed(RespondActivityTaskFailedRequest respondActivityTaskFailedRequest);
/**
*
* Used by deciders to tell the service that the DecisionTask identified by the taskToken
has
* successfully completed. The decisions
argument specifies the list of decisions made while processing
* the task.
*
*
* A DecisionTaskCompleted
event is added to the workflow history. The executionContext
* specified is attached to the event in the workflow execution history.
*
*
* Access Control
*
*
* If an IAM policy grants permission to use RespondDecisionTaskCompleted
, it can express permissions
* for the list of decisions in the decisions
parameter. Each of the decisions has one or more
* parameters, much like a regular API call. To allow for policies to be as readable as possible, you can express
* permissions on decisions as if they were actual API calls, including applying conditions to some parameters. For
* more information, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param respondDecisionTaskCompletedRequest
* Input data for a TaskCompleted response to a decision task.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.RespondDecisionTaskCompleted
* @see AWS API Documentation
*/
void respondDecisionTaskCompleted(RespondDecisionTaskCompletedRequest respondDecisionTaskCompletedRequest);
/**
*
* Records a WorkflowExecutionSignaled
event in the workflow execution history and creates a decision
* task for the workflow execution identified by the given domain, workflowId and runId. The event is recorded with
* the specified user defined signalName and input (if provided).
*
*
*
* If a runId isn't specified, then the WorkflowExecutionSignaled
event is recorded in the history of
* the current open workflow with the matching workflowId in the domain.
*
*
*
* If the specified workflow execution isn't open, this method fails with UnknownResource
.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param signalWorkflowExecutionRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.SignalWorkflowExecution
* @see AWS
* API Documentation
*/
void signalWorkflowExecution(SignalWorkflowExecutionRequest signalWorkflowExecutionRequest);
/**
*
* Starts an execution of the workflow type in the specified domain using the provided workflowId
and
* input data.
*
*
* This action returns the newly started workflow execution.
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* tagList.member.0
: The key is swf:tagList.member.0
.
*
*
* -
*
* tagList.member.1
: The key is swf:tagList.member.1
.
*
*
* -
*
* tagList.member.2
: The key is swf:tagList.member.2
.
*
*
* -
*
* tagList.member.3
: The key is swf:tagList.member.3
.
*
*
* -
*
* tagList.member.4
: The key is swf:tagList.member.4
.
*
*
* -
*
* taskList
: String constraint. The key is swf:taskList.name
.
*
*
* -
*
* workflowType.name
: String constraint. The key is swf:workflowType.name
.
*
*
* -
*
* workflowType.version
: String constraint. The key is swf:workflowType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param startWorkflowExecutionRequest
* @return Result of the StartWorkflowExecution operation returned by the service.
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws TypeDeprecatedException
* Returned when the specified activity or workflow type was already deprecated.
* @throws WorkflowExecutionAlreadyStartedException
* Returned by StartWorkflowExecution when an open execution with the same workflowId is already
* running in the specified domain.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @throws DefaultUndefinedException
* The StartWorkflowExecution
API action was called without the required parameters set.
*
* Some workflow execution parameters, such as the decision taskList
, must be set to start the
* execution. However, these parameters might have been set as defaults when the workflow type was
* registered. In this case, you can omit these parameters from the StartWorkflowExecution
call
* and Amazon SWF uses the values defined in the workflow type.
*
*
*
* If these parameters aren't set and no default parameters were defined in the workflow type, this error is
* displayed.
*
* @sample AmazonSimpleWorkflow.StartWorkflowExecution
* @see AWS API
* Documentation
*/
Run startWorkflowExecution(StartWorkflowExecutionRequest startWorkflowExecutionRequest);
/**
*
* Add a tag to a Amazon SWF domain.
*
*
*
* Amazon SWF supports a maximum of 50 tags per resource.
*
*
*
* @param tagResourceRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws TooManyTagsException
* You've exceeded the number of tags allowed for a domain.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.TagResource
* @see AWS API
* Documentation
*/
void tagResource(TagResourceRequest tagResourceRequest);
/**
*
* Records a WorkflowExecutionTerminated
event and forces closure of the workflow execution identified
* by the given domain, runId, and workflowId. The child policy, registered with the workflow type or specified when
* starting this execution, is applied to any open child workflow executions of this workflow execution.
*
*
*
* If the identified workflow execution was in progress, it is terminated immediately.
*
*
*
* If a runId isn't specified, then the WorkflowExecutionTerminated
event is recorded in the history of
* the current open workflow with the matching workflowId in the domain.
*
*
*
* You should consider using RequestCancelWorkflowExecution action instead because it allows the workflow to
* gracefully close while TerminateWorkflowExecution doesn't.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param terminateWorkflowExecutionRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.TerminateWorkflowExecution
* @see AWS
* API Documentation
*/
void terminateWorkflowExecution(TerminateWorkflowExecutionRequest terminateWorkflowExecutionRequest);
/**
*
* Undeprecates a previously deprecated activity type. After an activity type has been undeprecated, you can
* create new tasks of that activity type.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* activityType.name
: String constraint. The key is swf:activityType.name
.
*
*
* -
*
* activityType.version
: String constraint. The key is swf:activityType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param undeprecateActivityTypeRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws TypeAlreadyExistsException
* Returned if the type already exists in the specified domain. You may get this fault if you are
* registering a type that is either already registered or deprecated, or if you undeprecate a type that is
* currently registered.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.UndeprecateActivityType
* @see AWS
* API Documentation
*/
void undeprecateActivityType(UndeprecateActivityTypeRequest undeprecateActivityTypeRequest);
/**
*
* Undeprecates a previously deprecated domain. After a domain has been undeprecated it can be used to create new
* workflow executions or register new types.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* You cannot use an IAM policy to constrain this action's parameters.
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param undeprecateDomainRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws DomainAlreadyExistsException
* Returned if the domain already exists. You may get this fault if you are registering a domain that is
* either already registered or deprecated, or if you undeprecate a domain that is currently registered.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.UndeprecateDomain
* @see AWS API
* Documentation
*/
void undeprecateDomain(UndeprecateDomainRequest undeprecateDomainRequest);
/**
*
* Undeprecates a previously deprecated workflow type. After a workflow type has been undeprecated, you can
* create new executions of that type.
*
*
*
* This operation is eventually consistent. The results are best effort and may not exactly reflect recent updates
* and changes.
*
*
*
* Access Control
*
*
* You can use IAM policies to control this action's access to Amazon SWF resources as follows:
*
*
* -
*
* Use a Resource
element with the domain name to limit the action to only specified domains.
*
*
* -
*
* Use an Action
element to allow or deny permission to call this action.
*
*
* -
*
* Constrain the following parameters by using a Condition
element with the appropriate keys.
*
*
* -
*
* workflowType.name
: String constraint. The key is swf:workflowType.name
.
*
*
* -
*
* workflowType.version
: String constraint. The key is swf:workflowType.version
.
*
*
*
*
*
*
* If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the
* specified constraints, the action fails. The associated event attribute's cause
parameter is set to
* OPERATION_NOT_PERMITTED
. For details and example IAM policies, see Using IAM to Manage Access to
* Amazon SWF Workflows in the Amazon SWF Developer Guide.
*
*
* @param undeprecateWorkflowTypeRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws TypeAlreadyExistsException
* Returned if the type already exists in the specified domain. You may get this fault if you are
* registering a type that is either already registered or deprecated, or if you undeprecate a type that is
* currently registered.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.UndeprecateWorkflowType
* @see AWS
* API Documentation
*/
void undeprecateWorkflowType(UndeprecateWorkflowTypeRequest undeprecateWorkflowTypeRequest);
/**
*
* Remove a tag from a Amazon SWF domain.
*
*
* @param untagResourceRequest
* @throws UnknownResourceException
* Returned when the named resource cannot be found with in the scope of this operation (region or domain).
* This could happen if the named resource was never created or is no longer available for this operation.
* @throws LimitExceededException
* Returned by any operation if a system imposed limitation has been reached. To address this fault you
* should either clean up unused resources or increase the limit by contacting AWS.
* @throws OperationNotPermittedException
* Returned when the caller doesn't have sufficient permissions to invoke the action.
* @sample AmazonSimpleWorkflow.UntagResource
* @see AWS API
* Documentation
*/
void untagResource(UntagResourceRequest untagResourceRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}