你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

DurableClient class

用于启动、查询、终止和引发事件到业务流程和实体实例的客户端。

属性

taskHubName

在此业务流程客户端实例上配置的任务中心的名称。

方法

createCheckStatusResponse(undefined | HttpRequest, string)

创建可用于检查指定实例状态的 HTTP 响应。

createHttpManagementPayload(string)

创建包含实例管理 HTTP 终结点的 HttpManagementPayload 对象。

getStatus(string, GetStatusOptions)

获取指定业务流程实例的状态。

getStatusAll()

获取所有业务流程实例的状态。

getStatusBy(OrchestrationFilter)

获取与指定条件匹配的所有业务流程实例的状态。

purgeInstanceHistory(string)

清除特定业务流程实例的历史记录。

purgeInstanceHistoryBy(OrchestrationFilter)

清除与条件匹配的实例的业务流程历史记录。

raiseEvent(string, string, unknown, TaskHubOptions)

将事件通知消息发送到等待的业务流程实例。

readEntityState<T>(EntityId, TaskHubOptions)

尝试读取实体的当前状态。 如果实体不存在,或者实体的 JSON 序列化状态大于 16KB,则返回未定义。

rewind(string, string, TaskHubOptions)

以原因递减指定的失败业务流程实例。

signalEntity(EntityId, string, unknown, TaskHubOptions)

向实体发出执行作的信号。

startNew(string, StartNewOptions)

启动指定业务流程协调程序函数的新实例。

如果已存在具有指定 ID 的业务流程实例,则现有实例将被此新实例以无提示方式替换。

terminate(string, string)

终止正在运行的业务流程实例。

waitForCompletionOrCreateCheckStatusResponse(HttpRequest, string, WaitForCompletionOptions)

创建一个 HTTP 响应,该响应包含非已完成实例的管理 URL 的有效负载,或包含包含已完成业务流程输出的有效负载。

如果业务流程未在指定的超时范围内完成,则 HTTP 响应将与 createCheckStatusResponse() 的响应相同。

属性详细信息

taskHubName

在此业务流程客户端实例上配置的任务中心的名称。

taskHubName: string

属性值

string

方法详细信息

createCheckStatusResponse(undefined | HttpRequest, string)

创建可用于检查指定实例状态的 HTTP 响应。

function createCheckStatusResponse(request: undefined | HttpRequest, instanceId: string): HttpResponse

参数

request

undefined | HttpRequest

触发当前业务流程实例的 HTTP 请求。

instanceId

string

要检查的业务流程实例的 ID。

返回

包含 Location 标头和包含实例管理 URL 的有效负载的 HTTP 202 响应。

createHttpManagementPayload(string)

创建包含实例管理 HTTP 终结点的 HttpManagementPayload 对象。

function createHttpManagementPayload(instanceId: string): HttpManagementPayload

参数

instanceId

string

要检查的业务流程实例的 ID。

返回

getStatus(string, GetStatusOptions)

获取指定业务流程实例的状态。

function getStatus(instanceId: string, options?: GetStatusOptions): Promise<DurableOrchestrationStatus>

参数

instanceId

string

要查询的业务流程实例的 ID。

options
GetStatusOptions

指定额外配置的 options 对象

返回

getStatusAll()

获取所有业务流程实例的状态。

function getStatusAll(): Promise<DurableOrchestrationStatus[]>

返回

getStatusBy(OrchestrationFilter)

获取与指定条件匹配的所有业务流程实例的状态。

function getStatusBy(filter: OrchestrationFilter): Promise<DurableOrchestrationStatus[]>

参数

filter
OrchestrationFilter

指定要检索的业务流程的 OrchestrationFilter 对象。

返回

purgeInstanceHistory(string)

清除特定业务流程实例的历史记录。

function purgeInstanceHistory(instanceId: string): Promise<PurgeHistoryResult>

参数

instanceId

string

要清除的业务流程实例的 ID。

返回

purgeInstanceHistoryBy(OrchestrationFilter)

清除与条件匹配的实例的业务流程历史记录。

function purgeInstanceHistoryBy(filter: OrchestrationFilter): Promise<PurgeHistoryResult>

参数

filter
OrchestrationFilter

用于指定要清除的业务流程的 OrchestrationFilter 对象。

返回

raiseEvent(string, string, unknown, TaskHubOptions)

将事件通知消息发送到等待的业务流程实例。

function raiseEvent(instanceId: string, eventName: string, eventData: unknown, options?: TaskHubOptions): Promise<void>

参数

instanceId

string

将处理事件的业务流程实例的 ID。

eventName

string

事件的名称。

eventData

unknown

与事件关联的 JSON 可序列化数据。

options
TaskHubOptions

提供业务流程实例的 TaskHubName 及其关联连接字符串的名称的对象

返回

Promise<void>

一个承诺,用于在事件通知消息排队时解析。

若要处理事件,目标业务流程实例必须等待使用 eventName命名 waitForExternalEvent(string) 的事件。

如果未找到或未运行指定的实例,此作将不起作用。

readEntityState<T>(EntityId, TaskHubOptions)

尝试读取实体的当前状态。 如果实体不存在,或者实体的 JSON 序列化状态大于 16KB,则返回未定义。

function readEntityState<T>(entityId: EntityId, options?: TaskHubOptions): Promise<EntityStateResponse<T>>

参数

entityId
EntityId

目标实体。

options
TaskHubOptions

提供目标实体的 TaskHubName 及其关联连接字符串的名称的可选对象

返回

Promise<EntityStateResponse<T>>

包含实体的当前状态的响应。

rewind(string, string, TaskHubOptions)

以原因递减指定的失败业务流程实例。

function rewind(instanceId: string, reason: string, options?: TaskHubOptions): Promise<void>

参数

instanceId

string

要倒退的业务流程实例的 ID。

reason

string

倒退业务流程实例的原因。

options
TaskHubOptions

提供业务流程实例的 TaskHubName 及其关联连接字符串的名称的对象

返回

Promise<void>

一个承诺,用于在卷入回退消息时解析。

此功能目前以预览版提供。

signalEntity(EntityId, string, unknown, TaskHubOptions)

向实体发出执行作的信号。

function signalEntity(entityId: EntityId, operationName?: string, operationContent?: unknown, options?: TaskHubOptions): Promise<void>

参数

entityId
EntityId

目标实体。

operationName

string

作的名称。

operationContent

unknown

作的内容。

options
TaskHubOptions

提供实体实例的 TaskHubName 及其关联连接字符串的名称的对象

返回

Promise<void>

startNew(string, StartNewOptions)

启动指定业务流程协调程序函数的新实例。

如果已存在具有指定 ID 的业务流程实例,则现有实例将被此新实例以无提示方式替换。

function startNew(orchestratorFunctionName: string, options?: StartNewOptions): Promise<string>

参数

orchestratorFunctionName

string

要启动的业务流程协调程序函数的名称。

options
StartNewOptions

用于控制计划的业务流程协调程序(例如提供输入、instanceID)的可选对象

返回

Promise<string>

新业务流程实例的 ID。

terminate(string, string)

终止正在运行的业务流程实例。

function terminate(instanceId: string, reason: string): Promise<void>

参数

instanceId

string

要终止的业务流程实例的 ID。

reason

string

终止业务流程实例的原因。

返回

Promise<void>

一个承诺,用于在终止消息排队时解析。

终止业务流程实例不会影响当前业务流程实例启动的任何正在进行的活动函数执行或子业务流程。

waitForCompletionOrCreateCheckStatusResponse(HttpRequest, string, WaitForCompletionOptions)

创建一个 HTTP 响应,该响应包含非已完成实例的管理 URL 的有效负载,或包含包含已完成业务流程输出的有效负载。

如果业务流程未在指定的超时范围内完成,则 HTTP 响应将与 createCheckStatusResponse() 的响应相同。

function waitForCompletionOrCreateCheckStatusResponse(request: HttpRequest, instanceId: string, waitOptions?: WaitForCompletionOptions): Promise<HttpResponse>

参数

request
HttpRequest

触发当前函数的 HTTP 请求。

instanceId

string

要检查的实例的唯一 ID。

waitOptions
WaitForCompletionOptions

options 对象,指定等待持久函数输出的超时时间,以及检查输出的频率。

返回

Promise<HttpResponse>