thrift/cadence.thrift (374 lines of code) (raw):
// Copyright (c) 2017 Uber Technologies, Inc.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
include "shared.thrift"
namespace java com.uber.cadence
/**
* WorkflowService API is exposed to provide support for long running applications. Application is expected to call
* StartWorkflowExecution to create an instance for each instance of long running workflow. Such applications are expected
* to have a worker which regularly polls for DecisionTask and ActivityTask from the WorkflowService. For each
* DecisionTask, application is expected to process the history of events for that session and respond back with next
* decisions. For each ActivityTask, application is expected to execute the actual logic for that task and respond back
* with completion or failure. Worker is expected to regularly heartbeat while activity task is running.
**/
service WorkflowService {
/**
* RegisterDomain creates a new domain which can be used as a container for all resources. Domain is a top level
* entity within Cadence, used as a container for all resources like workflow executions, tasklists, etc. Domain
* acts as a sandbox and provides isolation for all resources within the domain. All resources belongs to exactly one
* domain.
**/
void RegisterDomain(1: shared.RegisterDomainRequest registerRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.DomainAlreadyExistsError domainExistsError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* DescribeDomain returns the information and configuration for a registered domain.
**/
shared.DescribeDomainResponse DescribeDomain(1: shared.DescribeDomainRequest describeRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* ListDomains returns the information and configuration for all domains.
**/
shared.ListDomainsResponse ListDomains(1: shared.ListDomainsRequest listRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* UpdateDomain is used to update the information and configuration for a registered domain.
**/
shared.UpdateDomainResponse UpdateDomain(1: shared.UpdateDomainRequest updateRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* DeprecateDomain us used to update status of a registered domain to DEPRECATED. Once the domain is deprecated
* it cannot be used to start new workflow executions. Existing workflow executions will continue to run on
* deprecated domains.
**/
void DeprecateDomain(1: shared.DeprecateDomainRequest deprecateRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* RestartWorkflowExecution restarts a previous workflow
* If the workflow is currently running it will terminate and restart
**/
shared.RestartWorkflowExecutionResponse RestartWorkflowExecution(1: shared.RestartWorkflowExecutionRequest restartRequest)
throws (
1: shared.BadRequestError badRequestError,
2: shared.ServiceBusyError serviceBusyError,
3: shared.DomainNotActiveError domainNotActiveError,
4: shared.LimitExceededError limitExceededError,
5: shared.EntityNotExistsError entityNotExistError,
6: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* StartWorkflowExecution starts a new long running workflow instance. It will create the instance with
* 'WorkflowExecutionStarted' event in history and also schedule the first DecisionTask for the worker to make the
* first decision for this instance. It will return 'WorkflowExecutionAlreadyStartedError', if an instance already
* exists with same workflowId.
**/
shared.StartWorkflowExecutionResponse StartWorkflowExecution(1: shared.StartWorkflowExecutionRequest startRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.WorkflowExecutionAlreadyStartedError sessionAlreadyExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.LimitExceededError limitExceededError,
7: shared.EntityNotExistsError entityNotExistError,
8: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* StartWorkflowExecutionAsync starts a new long running workflow instance asynchronously. It will push a StartWorkflowExecutionRequest to a queue
* and immediately return a response. The request will be processed by a separate consumer eventually.
**/
shared.StartWorkflowExecutionAsyncResponse StartWorkflowExecutionAsync(1: shared.StartWorkflowExecutionAsyncRequest startRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.WorkflowExecutionAlreadyStartedError sessionAlreadyExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.LimitExceededError limitExceededError,
7: shared.EntityNotExistsError entityNotExistError,
8: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* Returns the history of specified workflow execution. It fails with 'EntityNotExistError' if speficied workflow
* execution in unknown to the service.
**/
shared.GetWorkflowExecutionHistoryResponse GetWorkflowExecutionHistory(1: shared.GetWorkflowExecutionHistoryRequest getRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* PollForDecisionTask is called by application worker to process DecisionTask from a specific taskList. A
* DecisionTask is dispatched to callers for active workflow executions, with pending decisions.
* Application is then expected to call 'RespondDecisionTaskCompleted' API when it is done processing the DecisionTask.
* It will also create a 'DecisionTaskStarted' event in the history for that session before handing off DecisionTask to
* application worker.
**/
shared.PollForDecisionTaskResponse PollForDecisionTask(1: shared.PollForDecisionTaskRequest pollRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.ServiceBusyError serviceBusyError,
4: shared.LimitExceededError limitExceededError,
5: shared.EntityNotExistsError entityNotExistError,
6: shared.DomainNotActiveError domainNotActiveError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* RespondDecisionTaskCompleted is called by application worker to complete a DecisionTask handed as a result of
* 'PollForDecisionTask' API call. Completing a DecisionTask will result in new events for the workflow execution and
* potentially new ActivityTask being created for corresponding decisions. It will also create a DecisionTaskCompleted
* event in the history for that session. Use the 'taskToken' provided as response of PollForDecisionTask API call
* for completing the DecisionTask.
* The response could contain a new decision task if there is one or if the request asking for one.
**/
shared.RespondDecisionTaskCompletedResponse RespondDecisionTaskCompleted(1: shared.RespondDecisionTaskCompletedRequest completeRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RespondDecisionTaskFailed is called by application worker to indicate failure. This results in
* DecisionTaskFailedEvent written to the history and a new DecisionTask created. This API can be used by client to
* either clear sticky tasklist or report any panics during DecisionTask processing. Cadence will only append first
* DecisionTaskFailed event to the history of workflow execution for consecutive failures.
**/
void RespondDecisionTaskFailed(1: shared.RespondDecisionTaskFailedRequest failedRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* PollForActivityTask is called by application worker to process ActivityTask from a specific taskList. ActivityTask
* is dispatched to callers whenever a ScheduleTask decision is made for a workflow execution.
* Application is expected to call 'RespondActivityTaskCompleted' or 'RespondActivityTaskFailed' once it is done
* processing the task.
* Application also needs to call 'RecordActivityTaskHeartbeat' API within 'heartbeatTimeoutSeconds' interval to
* prevent the task from getting timed out. An event 'ActivityTaskStarted' event is also written to workflow execution
* history before the ActivityTask is dispatched to application worker.
**/
shared.PollForActivityTaskResponse PollForActivityTask(1: shared.PollForActivityTaskRequest pollRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.ServiceBusyError serviceBusyError,
4: shared.LimitExceededError limitExceededError,
5: shared.EntityNotExistsError entityNotExistError,
6: shared.DomainNotActiveError domainNotActiveError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* RecordActivityTaskHeartbeat is called by application worker while it is processing an ActivityTask. If worker fails
* to heartbeat within 'heartbeatTimeoutSeconds' interval for the ActivityTask, then it will be marked as timedout and
* 'ActivityTaskTimedOut' event will be written to the workflow history. Calling 'RecordActivityTaskHeartbeat' will
* fail with 'EntityNotExistsError' in such situations. Use the 'taskToken' provided as response of
* PollForActivityTask API call for heartbeating.
**/
shared.RecordActivityTaskHeartbeatResponse RecordActivityTaskHeartbeat(1: shared.RecordActivityTaskHeartbeatRequest heartbeatRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RecordActivityTaskHeartbeatByID is called by application worker while it is processing an ActivityTask. If worker fails
* to heartbeat within 'heartbeatTimeoutSeconds' interval for the ActivityTask, then it will be marked as timedout and
* 'ActivityTaskTimedOut' event will be written to the workflow history. Calling 'RecordActivityTaskHeartbeatByID' will
* fail with 'EntityNotExistsError' in such situations. Instead of using 'taskToken' like in RecordActivityTaskHeartbeat,
* use Domain, WorkflowID and ActivityID
**/
shared.RecordActivityTaskHeartbeatResponse RecordActivityTaskHeartbeatByID(1: shared.RecordActivityTaskHeartbeatByIDRequest heartbeatRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RespondActivityTaskCompleted is called by application worker when it is done processing an ActivityTask. It will
* result in a new 'ActivityTaskCompleted' event being written to the workflow history and a new DecisionTask
* created for the workflow so new decisions could be made. Use the 'taskToken' provided as response of
* PollForActivityTask API call for completion. It fails with 'EntityNotExistsError' if the taskToken is not valid
* anymore due to activity timeout.
**/
void RespondActivityTaskCompleted(1: shared.RespondActivityTaskCompletedRequest completeRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RespondActivityTaskCompletedByID is called by application worker when it is done processing an ActivityTask.
* It will result in a new 'ActivityTaskCompleted' event being written to the workflow history and a new DecisionTask
* created for the workflow so new decisions could be made. Similar to RespondActivityTaskCompleted but use Domain,
* WorkflowID and ActivityID instead of 'taskToken' for completion. It fails with 'EntityNotExistsError'
* if the these IDs are not valid anymore due to activity timeout.
**/
void RespondActivityTaskCompletedByID(1: shared.RespondActivityTaskCompletedByIDRequest completeRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RespondActivityTaskFailed is called by application worker when it is done processing an ActivityTask. It will
* result in a new 'ActivityTaskFailed' event being written to the workflow history and a new DecisionTask
* created for the workflow instance so new decisions could be made. Use the 'taskToken' provided as response of
* PollForActivityTask API call for completion. It fails with 'EntityNotExistsError' if the taskToken is not valid
* anymore due to activity timeout.
**/
void RespondActivityTaskFailed(1: shared.RespondActivityTaskFailedRequest failRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RespondActivityTaskFailedByID is called by application worker when it is done processing an ActivityTask.
* It will result in a new 'ActivityTaskFailed' event being written to the workflow history and a new DecisionTask
* created for the workflow instance so new decisions could be made. Similar to RespondActivityTaskFailed but use
* Domain, WorkflowID and ActivityID instead of 'taskToken' for completion. It fails with 'EntityNotExistsError'
* if the these IDs are not valid anymore due to activity timeout.
**/
void RespondActivityTaskFailedByID(1: shared.RespondActivityTaskFailedByIDRequest failRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RespondActivityTaskCanceled is called by application worker when it is successfully canceled an ActivityTask. It will
* result in a new 'ActivityTaskCanceled' event being written to the workflow history and a new DecisionTask
* created for the workflow instance so new decisions could be made. Use the 'taskToken' provided as response of
* PollForActivityTask API call for completion. It fails with 'EntityNotExistsError' if the taskToken is not valid
* anymore due to activity timeout.
**/
void RespondActivityTaskCanceled(1: shared.RespondActivityTaskCanceledRequest canceledRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RespondActivityTaskCanceledByID is called by application worker when it is successfully canceled an ActivityTask.
* It will result in a new 'ActivityTaskCanceled' event being written to the workflow history and a new DecisionTask
* created for the workflow instance so new decisions could be made. Similar to RespondActivityTaskCanceled but use
* Domain, WorkflowID and ActivityID instead of 'taskToken' for completion. It fails with 'EntityNotExistsError'
* if the these IDs are not valid anymore due to activity timeout.
**/
void RespondActivityTaskCanceledByID(1: shared.RespondActivityTaskCanceledByIDRequest canceledRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.DomainNotActiveError domainNotActiveError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* RequestCancelWorkflowExecution is called by application worker when it wants to request cancellation of a workflow instance.
* It will result in a new 'WorkflowExecutionCancelRequested' event being written to the workflow history and a new DecisionTask
* created for the workflow instance so new decisions could be made. It fails with 'EntityNotExistsError' if the workflow is not valid
* anymore due to completion or doesn't exist.
**/
void RequestCancelWorkflowExecution(1: shared.RequestCancelWorkflowExecutionRequest cancelRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.CancellationAlreadyRequestedError cancellationAlreadyRequestedError,
5: shared.ServiceBusyError serviceBusyError,
6: shared.DomainNotActiveError domainNotActiveError,
7: shared.LimitExceededError limitExceededError,
8: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
9: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* SignalWorkflowExecution is used to send a signal event to running workflow execution. This results in
* WorkflowExecutionSignaled event recorded in the history and a decision task being created for the execution.
**/
void SignalWorkflowExecution(1: shared.SignalWorkflowExecutionRequest signalRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.LimitExceededError limitExceededError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* SignalWithStartWorkflowExecution is used to ensure sending signal to a workflow.
* If the workflow is running, this results in WorkflowExecutionSignaled event being recorded in the history
* and a decision task being created for the execution.
* If the workflow is not running or not found, this results in WorkflowExecutionStarted and WorkflowExecutionSignaled
* events being recorded in history, and a decision task being created for the execution
**/
shared.StartWorkflowExecutionResponse SignalWithStartWorkflowExecution(1: shared.SignalWithStartWorkflowExecutionRequest signalWithStartRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.LimitExceededError limitExceededError,
7: shared.WorkflowExecutionAlreadyStartedError workflowAlreadyStartedError,
8: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* SignalWithStartWorkflowExecutionAsync is used to ensure sending signal to a workflow asynchronously. It will push a SignalWithStartWorkflowExecutionRequest to a queue
* and immediately return a response. The request will be processed by a separate consumer eventually.
**/
shared.SignalWithStartWorkflowExecutionAsyncResponse SignalWithStartWorkflowExecutionAsync(1: shared.SignalWithStartWorkflowExecutionAsyncRequest signalWithStartRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.WorkflowExecutionAlreadyStartedError sessionAlreadyExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.LimitExceededError limitExceededError,
7: shared.EntityNotExistsError entityNotExistError,
8: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* ResetWorkflowExecution reset an existing workflow execution to DecisionTaskCompleted event(exclusive).
* And it will immediately terminating the current execution instance.
**/
shared.ResetWorkflowExecutionResponse ResetWorkflowExecution(1: shared.ResetWorkflowExecutionRequest resetRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.LimitExceededError limitExceededError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* TerminateWorkflowExecution terminates an existing workflow execution by recording WorkflowExecutionTerminated event
* in the history and immediately terminating the execution instance.
**/
void TerminateWorkflowExecution(1: shared.TerminateWorkflowExecutionRequest terminateRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.DomainNotActiveError domainNotActiveError,
6: shared.LimitExceededError limitExceededError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* ListOpenWorkflowExecutions is a visibility API to list the open executions in a specific domain.
**/
shared.ListOpenWorkflowExecutionsResponse ListOpenWorkflowExecutions(1: shared.ListOpenWorkflowExecutionsRequest listRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.LimitExceededError limitExceededError,
6: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* ListClosedWorkflowExecutions is a visibility API to list the closed executions in a specific domain.
**/
shared.ListClosedWorkflowExecutionsResponse ListClosedWorkflowExecutions(1: shared.ListClosedWorkflowExecutionsRequest listRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* ListWorkflowExecutions is a visibility API to list workflow executions in a specific domain.
**/
shared.ListWorkflowExecutionsResponse ListWorkflowExecutions(1: shared.ListWorkflowExecutionsRequest listRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* ListArchivedWorkflowExecutions is a visibility API to list archived workflow executions in a specific domain.
**/
shared.ListArchivedWorkflowExecutionsResponse ListArchivedWorkflowExecutions(1: shared.ListArchivedWorkflowExecutionsRequest listRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* ScanWorkflowExecutions is a visibility API to list large amount of workflow executions in a specific domain without order.
**/
shared.ListWorkflowExecutionsResponse ScanWorkflowExecutions(1: shared.ListWorkflowExecutionsRequest listRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* CountWorkflowExecutions is a visibility API to count of workflow executions in a specific domain.
**/
shared.CountWorkflowExecutionsResponse CountWorkflowExecutions(1: shared.CountWorkflowExecutionsRequest countRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* GetSearchAttributes is a visibility API to get all legal keys that could be used in list APIs
**/
shared.GetSearchAttributesResponse GetSearchAttributes()
throws (
2: shared.ServiceBusyError serviceBusyError,
3: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* RespondQueryTaskCompleted is called by application worker to complete a QueryTask (which is a DecisionTask for query)
* as a result of 'PollForDecisionTask' API call. Completing a QueryTask will unblock the client call to 'QueryWorkflow'
* API and return the query result to client as a response to 'QueryWorkflow' API call.
**/
void RespondQueryTaskCompleted(1: shared.RespondQueryTaskCompletedRequest completeRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.LimitExceededError limitExceededError,
5: shared.ServiceBusyError serviceBusyError,
6: shared.DomainNotActiveError domainNotActiveError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* Reset the sticky tasklist related information in mutable state of a given workflow.
* Things cleared are:
* 1. StickyTaskList
* 2. StickyScheduleToStartTimeout
* 3. ClientLibraryVersion
* 4. ClientFeatureVersion
* 5. ClientImpl
**/
shared.ResetStickyTaskListResponse ResetStickyTaskList(1: shared.ResetStickyTaskListRequest resetRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.LimitExceededError limitExceededError,
5: shared.ServiceBusyError serviceBusyError,
6: shared.DomainNotActiveError domainNotActiveError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
8: shared.WorkflowExecutionAlreadyCompletedError workflowExecutionAlreadyCompletedError,
)
/**
* QueryWorkflow returns query result for a specified workflow execution
**/
shared.QueryWorkflowResponse QueryWorkflow(1: shared.QueryWorkflowRequest queryRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.QueryFailedError queryFailedError,
5: shared.LimitExceededError limitExceededError,
6: shared.ServiceBusyError serviceBusyError,
7: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* DescribeWorkflowExecution returns information about the specified workflow execution.
**/
shared.DescribeWorkflowExecutionResponse DescribeWorkflowExecution(1: shared.DescribeWorkflowExecutionRequest describeRequest)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.LimitExceededError limitExceededError,
5: shared.ServiceBusyError serviceBusyError,
6: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* DescribeTaskList returns information about the target tasklist, right now this API returns the
* pollers which polled this tasklist in last few minutes.
**/
shared.DescribeTaskListResponse DescribeTaskList(1: shared.DescribeTaskListRequest request)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.LimitExceededError limitExceededError,
5: shared.ServiceBusyError serviceBusyError,
6: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* GetClusterInfo returns information about cadence cluster
**/
shared.ClusterInfo GetClusterInfo()
throws (
1: shared.InternalServiceError internalServiceError,
2: shared.ServiceBusyError serviceBusyError,
)
/**
* GetTaskListsByDomain returns the list of all the task lists for a domainName.
**/
shared.GetTaskListsByDomainResponse GetTaskListsByDomain(1: shared.GetTaskListsByDomainRequest request)
throws (
1: shared.BadRequestError badRequestError,
2: shared.EntityNotExistsError entityNotExistError,
3: shared.LimitExceededError limitExceededError,
4: shared.ServiceBusyError serviceBusyError,
5: shared.ClientVersionNotSupportedError clientVersionNotSupportedError,
)
/**
* ReapplyEvents applies stale events to the current workflow and current run
**/
shared.ListTaskListPartitionsResponse ListTaskListPartitions(1: shared.ListTaskListPartitionsRequest request)
throws (
1: shared.BadRequestError badRequestError,
3: shared.EntityNotExistsError entityNotExistError,
4: shared.LimitExceededError limitExceededError,
5: shared.ServiceBusyError serviceBusyError,
)
/**
* RefreshWorkflowTasks refreshes all tasks of a workflow
**/
void RefreshWorkflowTasks(1: shared.RefreshWorkflowTasksRequest request)
throws (
1: shared.BadRequestError badRequestError,
2: shared.DomainNotActiveError domainNotActiveError,
3: shared.ServiceBusyError serviceBusyError,
4: shared.EntityNotExistsError entityNotExistError,
)
}