次の方法で共有


DurableOrchestrationContext class

オーケストレーション操作を実装するアプリケーション コードの機能を提供します。

プロパティ

currentUtcDateTime

オーケストレーター関数で安全に使用できる方法で現在の日付/時刻を取得します。

この日付/時刻値は、オーケストレーション履歴から派生します。 オーケストレーター関数コード内の特定のポイントで常に同じ値が返されるため、確定的で安全に再生できます。

customStatus

オーケストレーションのカスタム状態

instanceId

現在のオーケストレーション インスタンスの ID。

オーケストレーター関数がスケジュールされると、インスタンス ID が生成され、固定されます。 自動生成するか、その場合は GUID として書式設定するか、任意の形式でユーザー指定できます。

isReplaying

オーケストレーター関数が現在自身を再生しているかどうかを示す値を取得します。

このプロパティは、オーケストレーター関数が再生を しない場合にのみ実行する必要があるロジック 場合に便利です。 たとえば、オーケストレーター関数の再生の一部として重複すると、特定の種類のアプリケーション ログがノイズになりすぎる場合があります。 オーケストレーター コードは、関数が再生されているかどうかを確認し、この値が falseされたときにログ ステートメントを発行できます。

parentInstanceId

現在のサブオーケストレーション インスタンスの親オーケストレーションの ID。 この値は、サブオーケストレーションでのみ使用できます。

親オーケストレーター関数がスケジュールされると、親インスタンス ID が生成され、固定されます。 自動生成するか、その場合は GUID として書式設定するか、任意の形式でユーザー指定できます。

Task

Task インスタンスによって表される保留中のアクションのコレクションを処理するメソッドのエントリ ポイント。 並列化操作で使用します。

メソッド

callActivity(string, unknown)

実行する name という名前のアクティビティ関数をスケジュールします。

callActivityWithRetry(string, RetryOptions, unknown)

再試行オプションを使用して実行するために、name という名前のアクティビティ関数をスケジュールします。

callEntity(EntityId, string, unknown)

エンティティに対して操作を呼び出し、引数を渡し、完了するまで待機します。

callHttp(CallHttpOptions)

指定したエンドポイントへの永続的な HTTP 呼び出しをスケジュールします。

callSubOrchestrator(string, unknown, string)

name という名前のオーケストレーション関数の実行をスケジュールします。

callSubOrchestratorWithRetry(string, RetryOptions, unknown, string)

再試行オプションを使用して実行するために、name という名前のオーケストレーター関数をスケジュールします。

continueAsNew(unknown)

履歴をクリアしてオーケストレーションを再起動します。

createTimer(Date)

指定した時刻に期限切れになる永続的タイマーを作成します。

このメソッドを使用して作成されたすべての永続的タイマーは、オーケストレーター関数が完了する前に、TimerTask.cancel() を使用して有効期限が切れるか、取り消す必要があります。 それ以外の場合、基になるフレームワークは、タイマーの有効期限が切れるまでインスタンスを維持します。

getInput<T>()

現在のオーケストレーター関数の入力を逆シリアル化された値として取得します。

newGuid(string)

オーケストレーションまたは操作内で再生しても安全な新しい GUID を作成します。

このメソッドの既定の実装では、RFC 4122 §4.3 のアルゴリズムを使用して名前ベースの UUID が作成されます。 この値の生成に使用される名前入力は、オーケストレーション インスタンス ID と内部管理シーケンス番号の組み合わせです。

setCustomStatus(unknown)

現在のオーケストレーター関数の JSON シリアル化可能な状態を設定します。

customStatusObject 値は JSON にシリアル化され、オーケストレーション状態クエリ API で使用できるようになります。 シリアル化された JSON 値は、UTF-16 でエンコードされたテキストの 16 KB を超えてはなりません。

シリアル化された customStatusObject 値は、次の yield または return ステートメントの後に、前述の API で使用できるようになります。

signalEntity(EntityId, string, unknown)

応答を待たずに、Durable Entity にシグナル操作を送信し、引数を渡します。 ファイア アンド フォーゲット操作。

waitForExternalEvent(string)

name という名前でイベントが発生するまで非同期的に待機し、イベント データを返します。

外部クライアントは、raiseEvent()を使用して待機中のオーケストレーション インスタンスにイベントを発生させることができます。

プロパティの詳細

currentUtcDateTime

オーケストレーター関数で安全に使用できる方法で現在の日付/時刻を取得します。

この日付/時刻値は、オーケストレーション履歴から派生します。 オーケストレーター関数コード内の特定のポイントで常に同じ値が返されるため、確定的で安全に再生できます。

currentUtcDateTime: Date

プロパティ値

Date

customStatus

オーケストレーションのカスタム状態

customStatus: unknown

プロパティ値

unknown

instanceId

現在のオーケストレーション インスタンスの ID。

オーケストレーター関数がスケジュールされると、インスタンス ID が生成され、固定されます。 自動生成するか、その場合は GUID として書式設定するか、任意の形式でユーザー指定できます。

instanceId: string

プロパティ値

string

isReplaying

オーケストレーター関数が現在自身を再生しているかどうかを示す値を取得します。

このプロパティは、オーケストレーター関数が再生を しない場合にのみ実行する必要があるロジック 場合に便利です。 たとえば、オーケストレーター関数の再生の一部として重複すると、特定の種類のアプリケーション ログがノイズになりすぎる場合があります。 オーケストレーター コードは、関数が再生されているかどうかを確認し、この値が falseされたときにログ ステートメントを発行できます。

isReplaying: boolean

プロパティ値

boolean

parentInstanceId

現在のサブオーケストレーション インスタンスの親オーケストレーションの ID。 この値は、サブオーケストレーションでのみ使用できます。

親オーケストレーター関数がスケジュールされると、親インスタンス ID が生成され、固定されます。 自動生成するか、その場合は GUID として書式設定するか、任意の形式でユーザー指定できます。

parentInstanceId: undefined | string

プロパティ値

undefined | string

Task

Task インスタンスによって表される保留中のアクションのコレクションを処理するメソッドのエントリ ポイント。 並列化操作で使用します。

Task: { all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }

プロパティ値

{ all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }

メソッドの詳細

callActivity(string, unknown)

実行する name という名前のアクティビティ関数をスケジュールします。

function callActivity(name: string, input?: unknown): Task

パラメーター

name

string

呼び出すアクティビティ関数の名前。

input

unknown

アクティビティ関数に渡す JSON シリアル化可能な入力。

戻り値

呼び出されたアクティビティ関数が完了または失敗したときに完了する Durable Task。

callActivityWithRetry(string, RetryOptions, unknown)

再試行オプションを使用して実行するために、name という名前のアクティビティ関数をスケジュールします。

function callActivityWithRetry(name: string, retryOptions: RetryOptions, input?: unknown): Task

パラメーター

name

string

呼び出すアクティビティ関数の名前。

retryOptions
RetryOptions

アクティビティ関数の再試行オプション。

input

unknown

アクティビティ関数に渡す JSON シリアル化可能な入力。

戻り値

callEntity(EntityId, string, unknown)

エンティティに対して操作を呼び出し、引数を渡し、完了するまで待機します。

function callEntity(entityId: EntityId, operationName: string, operationInput?: unknown): Task

パラメーター

entityId
EntityId

ターゲット エンティティ。

operationName

string

操作の名前。

operationInput

unknown

操作の入力。

戻り値

callHttp(CallHttpOptions)

指定したエンドポイントへの永続的な HTTP 呼び出しをスケジュールします。

function callHttp(options: CallHttpOptions): Task

パラメーター

options
CallHttpOptions

HTTP オプション オブジェクト

戻り値

callSubOrchestrator(string, unknown, string)

name という名前のオーケストレーション関数の実行をスケジュールします。

function callSubOrchestrator(name: string, input?: unknown, instanceId?: string): Task

パラメーター

name

string

呼び出すオーケストレーター関数の名前。

input

unknown

オーケストレーター関数に渡す JSON シリアル化可能な入力。

instanceId

string

サブオーケストレーション インスタンスに使用する一意の ID。 instanceId が指定されていない場合、拡張機能は <calling orchestrator instance ID>:<#> 形式で ID を生成します

戻り値

callSubOrchestratorWithRetry(string, RetryOptions, unknown, string)

再試行オプションを使用して実行するために、name という名前のオーケストレーター関数をスケジュールします。

function callSubOrchestratorWithRetry(name: string, retryOptions: RetryOptions, input?: unknown, instanceId?: string): Task

パラメーター

name

string

呼び出すオーケストレーター関数の名前。

retryOptions
RetryOptions

オーケストレーター関数の再試行オプション。

input

unknown

オーケストレーター関数に渡す JSON シリアル化可能な入力。

instanceId

string

サブオーケストレーション インスタンスに使用する一意の ID。

戻り値

continueAsNew(unknown)

履歴をクリアしてオーケストレーションを再起動します。

function continueAsNew(input: unknown)

パラメーター

input

unknown

インスタンスを再初期化する JSON シリアル化可能なデータ。

createTimer(Date)

指定した時刻に期限切れになる永続的タイマーを作成します。

このメソッドを使用して作成されたすべての永続的タイマーは、オーケストレーター関数が完了する前に、TimerTask.cancel() を使用して有効期限が切れるか、取り消す必要があります。 それ以外の場合、基になるフレームワークは、タイマーの有効期限が切れるまでインスタンスを維持します。

function createTimer(fireAt: Date): TimerTask

パラメーター

fireAt

Date

タイマーの有効期限が切れる時刻。

戻り値

持続的タイマーの有効期限が切れたときに完了する TimerTask。

getInput<T>()

現在のオーケストレーター関数の入力を逆シリアル化された値として取得します。

function getInput<T>(): T

戻り値

T

newGuid(string)

オーケストレーションまたは操作内で再生しても安全な新しい GUID を作成します。

このメソッドの既定の実装では、RFC 4122 §4.3 のアルゴリズムを使用して名前ベースの UUID が作成されます。 この値の生成に使用される名前入力は、オーケストレーション インスタンス ID と内部管理シーケンス番号の組み合わせです。

function newGuid(input: string): string

パラメーター

input

string

一意の GUID を生成するために使用されます

戻り値

string

setCustomStatus(unknown)

現在のオーケストレーター関数の JSON シリアル化可能な状態を設定します。

customStatusObject 値は JSON にシリアル化され、オーケストレーション状態クエリ API で使用できるようになります。 シリアル化された JSON 値は、UTF-16 でエンコードされたテキストの 16 KB を超えてはなりません。

シリアル化された customStatusObject 値は、次の yield または return ステートメントの後に、前述の API で使用できるようになります。

function setCustomStatus(customStatusObject: unknown)

パラメーター

customStatusObject

unknown

オーケストレーター関数のカスタム状態として使用する JSON シリアル化可能な値。

signalEntity(EntityId, string, unknown)

応答を待たずに、Durable Entity にシグナル操作を送信し、引数を渡します。 ファイア アンド フォーゲット操作。

function signalEntity(entityId: EntityId, operationName: string, operationInput?: unknown)

パラメーター

entityId
EntityId

ターゲット エンティティの ID。

operationName

string

操作の名前。

operationInput

unknown

(省略可能) 操作の入力。

waitForExternalEvent(string)

name という名前でイベントが発生するまで非同期的に待機し、イベント データを返します。

外部クライアントは、raiseEvent()を使用して待機中のオーケストレーション インスタンスにイベントを発生させることができます。

function waitForExternalEvent(name: string): Task

パラメーター

name

string

待機する外部イベントの名前。

戻り値

指定した名前の外部イベントを受信したときに完了するタスク