DurableOrchestrationContext class
Stellt Funktionen für den Anwendungscode bereit, der einen Orchestrierungsvorgang implementiert.
Eigenschaften
| current |
Ruft das aktuelle Datum/die aktuelle Uhrzeit auf eine Weise ab, die für die Verwendung durch Orchestratorfunktionen sicher ist. Dieser Datums-/Uhrzeitwert wird vom Orchestrierungsverlauf abgeleitet. Er gibt immer denselben Wert an bestimmten Punkten im Orchestratorfunktionscode zurück, wodurch er für die Wiedergabe deterministisch und sicher ist. |
| custom |
Benutzerdefinierter Status für die Orchestrierung |
| instance |
Die ID der aktuellen Orchestrierungsinstanz. Die Instanz-ID wird generiert und beim Planen der Orchestratorfunktion behoben. Es kann entweder automatisch generiert werden, in diesem Fall als GUID formatiert, oder es kann mit jedem beliebigen Format vom Benutzer angegeben werden. |
| is |
Ruft einen Wert ab, der angibt, ob die Orchestratorfunktion derzeit selbst wiedergegeben wird. Diese Eigenschaft ist nützlich, wenn logik vorhanden ist, die nur ausgeführt werden muss, wenn die Orchestratorfunktion nicht Wiedergabe ausgeführt wird. Beispielsweise können bestimmte Arten der Anwendungsprotokollierung zu laut werden, wenn sie als Teil der Wiedergabe der Orchestratorfunktion dupliziert werden. Der Orchestratorcode konnte überprüfen, ob die Funktion wiedergegeben wird, und dann die Protokollanweisungen ausstellen, wenn dieser Wert |
| parent |
Die ID der übergeordneten Orchestrierung der aktuellen Unterorchesterinstanz. Der Wert ist nur in Unter-Orchestrierungen verfügbar. Die id der übergeordneten Instanz wird generiert und beim Planen der übergeordneten Orchestratorfunktion behoben. Es kann entweder automatisch generiert werden, in diesem Fall als GUID formatiert, oder es kann mit jedem beliebigen Format vom Benutzer angegeben werden. |
| Task | Einstiegspunkt für Methoden zum Behandeln von Auflistungen ausstehender Aktionen, die durch Task Instanzen dargestellt werden. Zur Verwendung in Parallelisierungsvorgängen. |
Methoden
| call |
Plant eine Aktivitätsfunktion namens |
| call |
Plant eine Aktivitätsfunktion namens |
| call |
Ruft einen Vorgang für eine Entität auf, übergibt ein Argument und wartet darauf, bis er abgeschlossen ist. |
| call |
Plant einen dauerhaften HTTP-Aufruf an den angegebenen Endpunkt. |
| call |
Plant eine Orchestrierungsfunktion namens |
| call |
Plant eine Orchestratorfunktion namens |
| continue |
Startet die Orchestrierung neu, indem die Geschichte gelöscht wird. |
| create |
Erstellt einen dauerhaften Timer, der zu einem bestimmten Zeitpunkt abläuft. Alle dauerhaften Zeitgeber, die mit dieser Methode erstellt wurden, müssen entweder ablaufen oder mit |
| get |
Ruft die Eingabe der aktuellen Orchestratorfunktion als deserialisierten Wert ab. |
| new |
Erstellt eine neue GUID, die für die Wiedergabe innerhalb einer Orchestrierung oder eines Vorgangs sicher ist. Die Standardimplementierung dieser Methode erstellt eine namensbasierte UUID mit dem Algorithmus aus RFC 4122 §4.3. Die Zum Generieren dieses Werts verwendete Namenseingabe ist eine Kombination aus der Orchestrierungsinstanz-ID und einer intern verwalteten Sequenznummer. |
| set |
Legt den JSON-serialisierbaren Status der aktuellen Orchestratorfunktion fest. Der Der serialisierte |
| signal |
Senden Sie einen Signalvorgang an eine dauerhafte Entität, und übergeben Sie ein Argument, ohne auf eine Antwort zu warten. Ein Feuer-und-Vergessen-Vorgang. |
| wait |
Wartet asynchron, bis ein Ereignis mit dem Namen Externe Clients können Ereignisse mithilfe von |
Details zur Eigenschaft
currentUtcDateTime
Ruft das aktuelle Datum/die aktuelle Uhrzeit auf eine Weise ab, die für die Verwendung durch Orchestratorfunktionen sicher ist.
Dieser Datums-/Uhrzeitwert wird vom Orchestrierungsverlauf abgeleitet. Er gibt immer denselben Wert an bestimmten Punkten im Orchestratorfunktionscode zurück, wodurch er für die Wiedergabe deterministisch und sicher ist.
currentUtcDateTime: Date
Eigenschaftswert
Date
customStatus
Benutzerdefinierter Status für die Orchestrierung
customStatus: unknown
Eigenschaftswert
unknown
instanceId
Die ID der aktuellen Orchestrierungsinstanz.
Die Instanz-ID wird generiert und beim Planen der Orchestratorfunktion behoben. Es kann entweder automatisch generiert werden, in diesem Fall als GUID formatiert, oder es kann mit jedem beliebigen Format vom Benutzer angegeben werden.
instanceId: string
Eigenschaftswert
string
isReplaying
Ruft einen Wert ab, der angibt, ob die Orchestratorfunktion derzeit selbst wiedergegeben wird.
Diese Eigenschaft ist nützlich, wenn logik vorhanden ist, die nur ausgeführt werden muss, wenn die Orchestratorfunktion nicht Wiedergabe ausgeführt wird. Beispielsweise können bestimmte Arten der Anwendungsprotokollierung zu laut werden, wenn sie als Teil der Wiedergabe der Orchestratorfunktion dupliziert werden. Der Orchestratorcode konnte überprüfen, ob die Funktion wiedergegeben wird, und dann die Protokollanweisungen ausstellen, wenn dieser Wert falseist.
isReplaying: boolean
Eigenschaftswert
boolean
parentInstanceId
Die ID der übergeordneten Orchestrierung der aktuellen Unterorchesterinstanz. Der Wert ist nur in Unter-Orchestrierungen verfügbar.
Die id der übergeordneten Instanz wird generiert und beim Planen der übergeordneten Orchestratorfunktion behoben. Es kann entweder automatisch generiert werden, in diesem Fall als GUID formatiert, oder es kann mit jedem beliebigen Format vom Benutzer angegeben werden.
parentInstanceId: undefined | string
Eigenschaftswert
undefined | string
Task
Einstiegspunkt für Methoden zum Behandeln von Auflistungen ausstehender Aktionen, die durch Task Instanzen dargestellt werden. Zur Verwendung in Parallelisierungsvorgängen.
Task: { all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }
Eigenschaftswert
{ all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }
Details zur Methode
callActivity(string, unknown)
Plant eine Aktivitätsfunktion namens name für die Ausführung.
function callActivity(name: string, input?: unknown): Task
Parameter
- name
-
string
Der Name der aktivitätsfunktion, die aufgerufen werden soll.
- input
-
unknown
Die JSON-serialisierbare Eingabe, die an die Aktivitätsfunktion übergeben werden soll.
Gibt zurück
Ein dauerhafter Vorgang, der abgeschlossen wird, wenn die aufgerufene Aktivitätsfunktion abgeschlossen ist oder fehlschlägt.
callActivityWithRetry(string, RetryOptions, unknown)
Plant eine Aktivitätsfunktion namens name für die Ausführung mit Wiederholungsoptionen.
function callActivityWithRetry(name: string, retryOptions: RetryOptions, input?: unknown): Task
Parameter
- name
-
string
Der Name der aktivitätsfunktion, die aufgerufen werden soll.
- retryOptions
- RetryOptions
Die Wiederholungsoptionen für die Aktivitätsfunktion.
- input
-
unknown
Die JSON-serialisierbare Eingabe, die an die Aktivitätsfunktion übergeben werden soll.
Gibt zurück
callEntity(EntityId, string, unknown)
Ruft einen Vorgang für eine Entität auf, übergibt ein Argument und wartet darauf, bis er abgeschlossen ist.
function callEntity(entityId: EntityId, operationName: string, operationInput?: unknown): Task
Parameter
- entityId
- EntityId
Die Zielentität.
- operationName
-
string
Der Name des Vorgangs.
- operationInput
-
unknown
Die Eingabe für den Vorgang.
Gibt zurück
callHttp(CallHttpOptions)
Plant einen dauerhaften HTTP-Aufruf an den angegebenen Endpunkt.
function callHttp(options: CallHttpOptions): Task
Parameter
- options
- CallHttpOptions
Das HTTP-Optionsobjekt
Gibt zurück
callSubOrchestrator(string, unknown, string)
Plant eine Orchestrierungsfunktion namens name für die Ausführung.
function callSubOrchestrator(name: string, input?: unknown, instanceId?: string): Task
Parameter
- name
-
string
Der Name der orchestrator-Funktion, die aufgerufen werden soll.
- input
-
unknown
Die JSON-serialisierbare Eingabe, die an die Orchestratorfunktion übergeben werden soll.
- instanceId
-
string
Eine eindeutige ID, die für die Unter-Orchestrierungsinstanz verwendet werden soll.
Wenn instanceId nicht angegeben ist, generiert die Erweiterung eine ID im Format <calling orchestrator instance ID>:<#>
Gibt zurück
callSubOrchestratorWithRetry(string, RetryOptions, unknown, string)
Plant eine Orchestratorfunktion namens name für die Ausführung mit Wiederholungsoptionen.
function callSubOrchestratorWithRetry(name: string, retryOptions: RetryOptions, input?: unknown, instanceId?: string): Task
Parameter
- name
-
string
Der Name der orchestrator-Funktion, die aufgerufen werden soll.
- retryOptions
- RetryOptions
Die Wiederholungsoptionen für die Orchestratorfunktion.
- input
-
unknown
Die JSON-serialisierbare Eingabe, die an die Orchestratorfunktion übergeben werden soll.
- instanceId
-
string
Eine eindeutige ID, die für die Unter-Orchestrierungsinstanz verwendet werden soll.
Gibt zurück
continueAsNew(unknown)
Startet die Orchestrierung neu, indem die Geschichte gelöscht wird.
function continueAsNew(input: unknown)
Parameter
- input
-
unknown
Die JSON-serialisierbaren Daten, mit der die Instanz neu initialisiert werden soll.
createTimer(Date)
Erstellt einen dauerhaften Timer, der zu einem bestimmten Zeitpunkt abläuft.
Alle dauerhaften Zeitgeber, die mit dieser Methode erstellt wurden, müssen entweder ablaufen oder mit TimerTask.cancel() abgebrochen werden, bevor die Orchestratorfunktion abgeschlossen ist. Andernfalls behält das zugrunde liegende Framework die Instanz am Leben, bis der Timer abläuft.
function createTimer(fireAt: Date): TimerTask
Parameter
- fireAt
-
Date
Der Zeitpunkt, zu dem der Timer ablaufen soll.
Gibt zurück
Ein TimerTask, der abgeschlossen wird, wenn der dauerhafte Timer abläuft.
getInput<T>()
Ruft die Eingabe der aktuellen Orchestratorfunktion als deserialisierten Wert ab.
function getInput<T>(): T
Gibt zurück
T
newGuid(string)
Erstellt eine neue GUID, die für die Wiedergabe innerhalb einer Orchestrierung oder eines Vorgangs sicher ist.
Die Standardimplementierung dieser Methode erstellt eine namensbasierte UUID mit dem Algorithmus aus RFC 4122 §4.3. Die Zum Generieren dieses Werts verwendete Namenseingabe ist eine Kombination aus der Orchestrierungsinstanz-ID und einer intern verwalteten Sequenznummer.
function newGuid(input: string): string
Parameter
- input
-
string
wird verwendet, um die eindeutige GUID zu generieren.
Gibt zurück
string
setCustomStatus(unknown)
Legt den JSON-serialisierbaren Status der aktuellen Orchestratorfunktion fest.
Der customStatusObject Wert wird in JSON serialisiert und wird den Orchestrierungsstatus-API zur Verfügung gestellt. Der serialisierte JSON-Wert darf 16 KB UTF-16-codierter Text nicht überschreiten.
Der serialisierte customStatusObject-Wert wird den oben genannten APIs nach der nächsten yield- oder return-Anweisung zur Verfügung gestellt.
function setCustomStatus(customStatusObject: unknown)
Parameter
- customStatusObject
-
unknown
Der JSON-serialisierbare Wert, der als benutzerdefinierter Status der Orchestratorfunktion verwendet werden soll.
signalEntity(EntityId, string, unknown)
Senden Sie einen Signalvorgang an eine dauerhafte Entität, und übergeben Sie ein Argument, ohne auf eine Antwort zu warten. Ein Feuer-und-Vergessen-Vorgang.
function signalEntity(entityId: EntityId, operationName: string, operationInput?: unknown)
Parameter
- entityId
- EntityId
ID der Zielentität.
- operationName
-
string
Der Name des Vorgangs.
- operationInput
-
unknown
(optional) Eingabe für den Vorgang.
waitForExternalEvent(string)
Wartet asynchron, bis ein Ereignis mit dem Namen name ausgelöst wird und gibt die Ereignisdaten zurück.
Externe Clients können Ereignisse mithilfe von raiseEvent()auf eine wartende Orchestrierungsinstanz auslösen.
function waitForExternalEvent(name: string): Task
Parameter
- name
-
string
Der Name des externen Ereignisses, auf das gewartet werden soll.
Gibt zurück
eine Aufgabe, die abgeschlossen wird, wenn ein externes Ereignis des angegebenen Namens empfangen wird