Freigeben über


LroEngine class

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

Extends

Poller<TState, TResult>

Konstruktoren

LroEngine<TResult, TState>(LongRunningOperation<TResult>, LroEngineOptions<TResult, TState>)

Methoden

delay()

Die Methode, die vom Poller verwendet wird, um zu warten, bevor versucht wird, den Vorgang zu aktualisieren.

Geerbte Methoden

cancelOperation({ abortSignal?: AbortSignalLike })

Versucht, den zugrunde liegenden Vorgang abzubrechen.

Es empfängt nur optional ein Objekt mit einer abortSignal-Eigenschaft von @azure/abort-controller'AbortSignalLike.

Wenn es erneut aufgerufen wird, bevor er abgeschlossen ist, wird ein Fehler ausgelöst.

getOperationState()

Gibt den Status des Vorgangs zurück.

Obwohl TState innerhalb einer beliebigen Erweiterung der Poller-Klasse derselbe Typ ist, können Implementierungen der Poller-Klasse anpassen, was für die Öffentlichkeit freigegeben wird, indem sie eine eigene Version der getOperationState Methode schreiben und zwei Typen definieren, einen, der den internen Zustand des Pollers darstellt, und einen öffentlichen Typ, der eine sichere Teilmenge der Eigenschaften des internen Zustands darstellt. Ihre Definition von getOperationState kann dann ihren öffentlichen Typ zurückgeben.

Beispiel:

// Let's say we have our poller's operation state defined as:
interface MyOperationState extends PollOperationState<ResultType> {
  privateProperty?: string;
  publicProperty?: string;
}

// To allow us to have a true separation of public and private state, we have to define another interface:
interface PublicState extends PollOperationState<ResultType> {
  publicProperty?: string;
}

// Then, we define our Poller as follows:
export class MyPoller extends Poller<MyOperationState, ResultType> {
  // ... More content is needed here ...

  public getOperationState(): PublicState {
    const state: PublicState = this.operation.state;
    return {
      // Properties from PollOperationState<TResult>
      isStarted: state.isStarted,
      isCompleted: state.isCompleted,
      isCancelled: state.isCancelled,
      error: state.error,
      result: state.result,

      // The only other property needed by PublicState.
      publicProperty: state.publicProperty
    }
  }
}

Sie können dies in den Tests dieses Repositorys sehen, wechseln Sie zur Datei:../test/utils/testPoller.ts und suchen Sie nach der getOperationState-Implementierung.

getResult()

Gibt den Ergebniswert des Vorgangs zurück, unabhängig vom Zustand des Pollers. Je nach Implementierung kann eine undefinierte oder unvollständige Form des endgültigen TResult-Werts zurückgegeben werden.

isDone()

Gibt true zurück, wenn der Abrufer die Abfrage abgeschlossen hat.

isStopped()

Gibt true zurück, wenn der Poller beendet wird.

onProgress((state: TState) => void)

Ruft den bereitgestellten Rückruf auf, nachdem die einzelnen Abrufe abgeschlossen sind, und sendet den aktuellen Zustand des Abrufvorgangs.

Es gibt eine Methode zurück, die verwendet werden kann, um den Empfang von Updates für die angegebene Rückruffunktion zu beenden.

poll({ abortSignal?: AbortSignalLike })

Gibt eine Zusage zurück, die aufgelöst wird, sobald eine einzelne Abrufanforderung abgeschlossen ist. Dazu wird die Updatemethode des Pollers-Vorgangs aufgerufen.

Es empfängt nur optional ein Objekt mit einer abortSignal-Eigenschaft von @azure/abort-controller'AbortSignalLike.

pollUntilDone({ abortSignal?: AbortSignalLike })

Gibt eine Zusage zurück, die nach Abschluss des zugrunde liegenden Vorgangs aufgelöst wird.

stopPolling()

Hindert den Poller daran, die Abfrage fortzusetzen.

toString()

Gibt eine serialisierte Version des Abrufvorgangs zurück, indem die toString-Methode des Vorgangs aufgerufen wird.

Details zum Konstruktor

LroEngine<TResult, TState>(LongRunningOperation<TResult>, LroEngineOptions<TResult, TState>)

new LroEngine(lro: LongRunningOperation<TResult>, options?: LroEngineOptions<TResult, TState>)

Parameter

lro

LongRunningOperation<TResult>

options

LroEngineOptions<TResult, TState>

Details zur Methode

delay()

Die Methode, die vom Poller verwendet wird, um zu warten, bevor versucht wird, den Vorgang zu aktualisieren.

function delay(): Promise<void>

Gibt zurück

Promise<void>

Details zur geerbten Methode

cancelOperation({ abortSignal?: AbortSignalLike })

Versucht, den zugrunde liegenden Vorgang abzubrechen.

Es empfängt nur optional ein Objekt mit einer abortSignal-Eigenschaft von @azure/abort-controller'AbortSignalLike.

Wenn es erneut aufgerufen wird, bevor er abgeschlossen ist, wird ein Fehler ausgelöst.

function cancelOperation(options?: { abortSignal?: AbortSignalLike }): Promise<void>

Parameter

options

{ abortSignal?: AbortSignalLike }

Optionale Eigenschaften, die an die Updatemethode des Vorgangs übergeben werden.

Gibt zurück

Promise<void>

Geerbt vonPoller.cancelOperation

getOperationState()

Gibt den Status des Vorgangs zurück.

Obwohl TState innerhalb einer beliebigen Erweiterung der Poller-Klasse derselbe Typ ist, können Implementierungen der Poller-Klasse anpassen, was für die Öffentlichkeit freigegeben wird, indem sie eine eigene Version der getOperationState Methode schreiben und zwei Typen definieren, einen, der den internen Zustand des Pollers darstellt, und einen öffentlichen Typ, der eine sichere Teilmenge der Eigenschaften des internen Zustands darstellt. Ihre Definition von getOperationState kann dann ihren öffentlichen Typ zurückgeben.

Beispiel:

// Let's say we have our poller's operation state defined as:
interface MyOperationState extends PollOperationState<ResultType> {
  privateProperty?: string;
  publicProperty?: string;
}

// To allow us to have a true separation of public and private state, we have to define another interface:
interface PublicState extends PollOperationState<ResultType> {
  publicProperty?: string;
}

// Then, we define our Poller as follows:
export class MyPoller extends Poller<MyOperationState, ResultType> {
  // ... More content is needed here ...

  public getOperationState(): PublicState {
    const state: PublicState = this.operation.state;
    return {
      // Properties from PollOperationState<TResult>
      isStarted: state.isStarted,
      isCompleted: state.isCompleted,
      isCancelled: state.isCancelled,
      error: state.error,
      result: state.result,

      // The only other property needed by PublicState.
      publicProperty: state.publicProperty
    }
  }
}

Sie können dies in den Tests dieses Repositorys sehen, wechseln Sie zur Datei:../test/utils/testPoller.ts und suchen Sie nach der getOperationState-Implementierung.

function getOperationState(): TState

Gibt zurück

TState

Geerbt vonPoller.getOperationState

getResult()

Gibt den Ergebniswert des Vorgangs zurück, unabhängig vom Zustand des Pollers. Je nach Implementierung kann eine undefinierte oder unvollständige Form des endgültigen TResult-Werts zurückgegeben werden.

function getResult(): undefined | TResult

Gibt zurück

undefined | TResult

Geerbt vonPoller.getResult

isDone()

Gibt true zurück, wenn der Abrufer die Abfrage abgeschlossen hat.

function isDone(): boolean

Gibt zurück

boolean

Geerbt vonPoller.isDone

isStopped()

Gibt true zurück, wenn der Poller beendet wird.

function isStopped(): boolean

Gibt zurück

boolean

Geerbt vonPoller.isStopped

onProgress((state: TState) => void)

Ruft den bereitgestellten Rückruf auf, nachdem die einzelnen Abrufe abgeschlossen sind, und sendet den aktuellen Zustand des Abrufvorgangs.

Es gibt eine Methode zurück, die verwendet werden kann, um den Empfang von Updates für die angegebene Rückruffunktion zu beenden.

function onProgress(callback: (state: TState) => void): CancelOnProgress

Parameter

callback

(state: TState) => void

Gibt zurück

Geerbt vonPoller.onProgress

poll({ abortSignal?: AbortSignalLike })

Gibt eine Zusage zurück, die aufgelöst wird, sobald eine einzelne Abrufanforderung abgeschlossen ist. Dazu wird die Updatemethode des Pollers-Vorgangs aufgerufen.

Es empfängt nur optional ein Objekt mit einer abortSignal-Eigenschaft von @azure/abort-controller'AbortSignalLike.

function poll(options?: { abortSignal?: AbortSignalLike }): Promise<void>

Parameter

options

{ abortSignal?: AbortSignalLike }

Optionale Eigenschaften, die an die Updatemethode des Vorgangs übergeben werden.

Gibt zurück

Promise<void>

Geerbt vonPoller.poll

pollUntilDone({ abortSignal?: AbortSignalLike })

Gibt eine Zusage zurück, die nach Abschluss des zugrunde liegenden Vorgangs aufgelöst wird.

function pollUntilDone(pollOptions?: { abortSignal?: AbortSignalLike }): Promise<TResult>

Parameter

pollOptions

{ abortSignal?: AbortSignalLike }

Gibt zurück

Promise<TResult>

Geerbt vonPoller.pollUntilDone

stopPolling()

Hindert den Poller daran, die Abfrage fortzusetzen.

function stopPolling()

Geerbt vonPoller.stopPolling

toString()

Gibt eine serialisierte Version des Abrufvorgangs zurück, indem die toString-Methode des Vorgangs aufgerufen wird.

function toString(): string

Gibt zurück

string

Geerbt vonPoller.toString