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 does not have sufficient permissions to invoke the action, or the parameter
values fall outside the specified constraints, the action fails by throwing
OperationNotPermitted
. For details and example IAM policies, see Using IAM to
Manage Access to Amazon SWF Workflows.
Access
public
Parameters
Parameter |
Type |
Required |
Description |
---|---|---|---|
|
Optional |
An associative array of parameters that can have the following keys:
|
Returns
Type |
Description |
---|---|
A |
Examples
Activity Type CRUD.
Shows an example of activity type CRUD methods.
This sample uses anonymous functions, which are only available in PHP 5.3+. For PHP 5.2 users, you must used named functions instead of anonymous ones.
// Instantiate the class $swf = new AmazonSWF(); // Setup $timestamp = time(); $workflow_domain = 'my-domain' . $timestamp; $activity_type_name = 'my-activity-type'; //-----------------------------------------------------------------// // Register a new activity type echo '# Registering a new activity type...' . PHP_EOL; $workflow_type = $swf->register_activity_type(array( 'domain' => $workflow_domain, 'name' => $activity_type_name, 'version' => '1.0', 'description' => 'A test task to show how this thing works.', 'defaultChildPolicy' => AmazonSWF::POLICY_TERMINATE, 'defaultTaskList' => array( 'name' => 'my-task-list' ), )); if ($domain->isOK()) { echo 'Waiting for the activity type to become ready...' . PHP_EOL; do { sleep(1); $describe = $swf->describe_activity_type(array( 'domain' => $workflow_domain, 'activityType' => array( 'name' => $activity_type_name, 'version' => '1.0' ) )); } while ((string) $describe->body->typeInfo->status !== AmazonSWF::STATUS_REGISTERED); echo 'Activity type was created successfully.' . PHP_EOL; } else { echo 'Activity type creation failed.'; } echo PHP_EOL; //-----------------------------------------------------------------// // List all registered activity types echo "# Listing all registered activity types for the \"${workflow_domain}\" domain..." . PHP_EOL; // Anonymous callbacks require PHP 5.3. PHP 5.2 users can create a // named function and pass it to the each() method. $swf->list_activity_types(array( 'domain' => $workflow_domain, 'registrationStatus' => AmazonSWF::STATUS_REGISTERED, )) ->body->typeInfos()->each(function($item) { echo (string) $item->status . ': ' . (string) $item->activityType->name . ' ' . (string) $item->activityType->version . PHP_EOL; }); echo PHP_EOL; //-----------------------------------------------------------------// // Describing a specific activity type echo "# Describing the \"${activity_type_name}\" workflow type from the \"${workflow_domain}\" domain..." . PHP_EOL; // Describe a domain $describe = $swf->describe_activity_type(array( 'domain' => $workflow_domain, 'activityType' => array( 'name' => $activity_type_name, 'version' => '1.0' ) )); print_r($describe->body); echo PHP_EOL; //-----------------------------------------------------------------// // Deprecate a activity type echo '# Deprecating an activity type...' . PHP_EOL; $deprecate_activity_type = $swf->deprecate_activity_type(array( 'domain' => $workflow_domain, 'activityType' => array( 'name' => $activity_type_name, 'version' => '1.0', ) )); if ($domain->isOK()) { echo 'Activity flow was deprecated successfully.' . PHP_EOL; } else { echo 'Activity flow deprecation failed.'; } echo PHP_EOL;
Source
Method defined in services/swf.class.php | Toggle source view (6 lines) | View on GitHub