Freigeben über


@azure/core-lro package

Klassen

LroEngine

Die LRO-Engine, eine Klasse, die Abrufvorgänge durchführt.

Poller

Eine Klasse, die die Definition eines Programms darstellt, das aufeinanderfolgende Anforderungen abruft, bis es einen Abschlussstatus erreicht.

Ein Poller kann manuell ausgeführt werden, indem anforderungsweise durch wiederholtes Aufrufen der poll() -Methode abgerufen wird, bis der Vorgang abgeschlossen ist. Es bietet auch eine Möglichkeit, zu warten, bis der Vorgang abgeschlossen ist, indem aufgerufen pollUntilDone() und gewartet wird, bis der Vorgang abgeschlossen ist. Poller können auch den Abbruch des laufenden Prozesses anfordern, für den der zugrunde liegende lang andauernde Vorgang bereitgestellt wird.

const poller = new MyPoller();

// Polling just once:
await poller.poll();

// We can try to cancel the request here, by calling:
//
//     await poller.cancelOperation();
//

// Getting the final result:
const result = await poller.pollUntilDone();

Der Poller wird durch zwei Typen definiert: ein Typ, der den Zustand des Pollers darstellt, der einen grundlegenden Satz von Eigenschaften aus PollOperationState<TResult>enthalten muss, und einen durch definierten Rückgabetyp, der beliebig TResultsein kann.

Die Poller-Klasse implementiert die PollerLike -Schnittstelle, die Pollerimplementierungen ermöglicht, um zu vermeiden, dass die Poller-Klasse direkt exportiert werden muss, sondern nur den bereits instanziierten Poller mit dem PollerLike-Typ exportieren.

class Client {
  public async makePoller: PollerLike<MyOperationState, MyResult> {
    const poller = new MyPoller({});
    // It might be preferred to return the poller after the first request is made,
    // so that some information can be obtained right away.
    await poller.poll();
    return poller;
  }
}

const poller: PollerLike<MyOperationState, MyResult> = myClient.makePoller();

Ein Poller kann über seinen Konstruktor erstellt und dann abgefragt werden, bis er abgeschlossen ist. Der Zustand des Pollers kann jederzeit ohne Verzögerung über die getOperationState-Methode abgerufen werden. Die Zwischenformen des Ergebnistyps können jederzeit ohne Verzögerung angefordert werden. Sobald der zugrunde liegende Vorgang als abgeschlossen markiert ist, wird der Poller beendet, und der endgültige Wert wird zurückgegeben.

const poller = myClient.makePoller();
const state: MyOperationState = poller.getOperationState();

// The intermediate result can be obtained at any time.
const result: MyResult | undefined = poller.getResult();

// The final result can only be obtained after the poller finishes.
const result: MyResult = await poller.pollUntilDone();
PollerCancelledError

Wenn der Vorgang abgebrochen wird, wird der Poller mit einer Instanz von PollerCancelledError abgelehnt.

PollerStoppedError

Wenn ein Poller manuell über die stopPolling -Methode angehalten wird, wird der Poller mit einer Instanz von PollerStoppedError abgelehnt.

Schnittstellen

CreateHttpPollerOptions

Optionen für createPoller.

LongRunningOperation

Beschreibung eines Vorgangs mit langer Ausführungsdauer.

LroEngineOptions

Optionen für den LRO-Poller.

LroResponse

Der Typ der Antwort eines LRO.

OperationState

Während der Poller als lokaler Steuerungsmechanismus fungiert, um mit dem Auslösen zu beginnen und auf einen Vorgang mit langer Ausführungszeit zu warten, dokumentiert OperationState den Status des Remotevorgangs mit langer Ausführungsdauer. Sie wird nach jeder Umfrage aktualisiert.

PollOperation

PollOperation ist eine Schnittstelle, die definiert, wie der lokale Verweis des Zustands des Remotevorgangs mit langer Ausführungsdauer aktualisiert wird, ebenso wie das Anfordern des Abbruchs desselben Vorgangs.

Es verfügt auch über eine Methode zum Serialisieren des Vorgangs, sodass er jederzeit gespeichert und fortgesetzt werden kann.

PollOperationState

PollOperationState enthält eine liste der kleinsten Eigenschaften, die zum Definieren von Abfragevorgängen mit langer Ausführungszeit erforderlich sind.

Während die Poller-Klasse als lokaler Steuerungsmechanismus zum Starten des Auslösens, Wartens und Abbrechen eines vorgangs mit langer Ausführung funktioniert, dokumentiert PollOperationState den Status des Remotevorgangs mit langer Ausführungsdauer.

Es sollte mindestens aktualisiert werden, wenn der Vorgang gestartet wird, wenn er abgeschlossen ist und wenn er abgebrochen wird. Implementierungen können jedoch eine beliebige andere Anzahl von Eigenschaften aufweisen, die aus anderen Gründen aktualisiert werden können.

PollerLike

Abstrakte Darstellung eines Pollers, die nur die minimale API verfügbar machen soll, mit der der Benutzer arbeiten muss.

RawResponse

Einfacher Typ der Unformatierten Antwort.

SimplePollerLike

Eine einfache Poller-Schnittstelle.

Typaliase

CancelOnProgress

CancelOnProgress wird als Rückgabewert der onProgress-Methode eines Pollers verwendet. Wenn ein Benutzer onProgress aufruft, muss er eine Funktion übergeben, die bei jeder Aktualisierung des Abrufvorgangs mit den neuen Daten als Rückruf aufgerufen wird. onProgress gibt eine Funktion zurück, die verhindert, dass weitere Aktualisierungen den ursprünglichen Rückruf erreichen.

LroResourceLocationConfig

Die potenzielle Position des Ergebnisses der LRO, wenn es durch die LRO-Erweiterung im Swagger angegeben wird.

OperationStatus

Der Satz möglicher Zustände, in dem sich ein Vorgang zu einem beliebigen Zeitpunkt befinden kann.

PollProgressCallback

PollProgressCallback ist der Typ der Rückruffunktionen, die an onProgress gesendet werden. Diese Funktionen erhalten einen TState, der von Ihrer Implementierung der Poller-Klasse definiert wird.

Functions

createHttpPoller<TResult, TState>(LongRunningOperation<unknown>, CreateHttpPollerOptions<TResult, TState>)

Erstellt einen Poller, der zum Abfragen eines Vorgangs mit langer Ausführungszeit verwendet werden kann.

Details zur Funktion

createHttpPoller<TResult, TState>(LongRunningOperation<unknown>, CreateHttpPollerOptions<TResult, TState>)

Erstellt einen Poller, der zum Abfragen eines Vorgangs mit langer Ausführungszeit verwendet werden kann.

function createHttpPoller<TResult, TState>(lro: LongRunningOperation<unknown>, options?: CreateHttpPollerOptions<TResult, TState>): Promise<SimplePollerLike<TState, TResult>>

Parameter

lro

LongRunningOperation<unknown>

Beschreibung des zeitintensiven Vorgangs

options

CreateHttpPollerOptions<TResult, TState>

Optionen zum Konfigurieren des Abrufs

Gibt zurück

Promise<SimplePollerLike<TState, TResult>>

ein initialisierter Poller