Dela via


durable-functions package

Klasser

AggregatedError

Ett specifikt fel uppstår när context.df.Task.all() misslyckas. Meddelandet innehåller en aggregering av alla undantag som misslyckades. Det bör följa formatet nedan:

context.df.Task.all() påträffade felmeddelandena nedan:

Namn: DurableError-meddelande: Aktivitetsfunktionen "ActivityA" misslyckades. StackTrace: <stacktrace>

Namn: DurableError-meddelande: Aktivitetsfunktionen "ActivityB" misslyckades. StackTrace: <stacktrace>

DummyEntityContext

En entitetskontext med dummy-standardvärden för att underlätta mocking/stubbing av Durable Functions-API:et.

DummyOrchestrationContext

En orkestreringskontext med dummy-standardvärden för att underlätta mocking/stubbing av Durable Functions-API:et.

DurableClient

Klient för att starta, fråga, avsluta och höja händelser till orkestrerings- och entitetsinstanser.

DurableError

Ett specifikationsfel uppstod när en schemalagd aktivitet eller suborchestrator misslyckades. Det här felet kan kontrolleras via instanceof vakter för att fånga endast undantag som genereras av DurableJS-biblioteket.

DurableOrchestrationContext

Tillhandahåller funktioner för programkod som implementerar en orkestreringsåtgärd.

DurableOrchestrationStatus

Representerar statusen för en varaktig orkestreringsinstans.

Kan hämtas med hjälp av DurableClient.getStatus()

EntityId

En unik identifierare för en entitet som består av entitetsklass och entitetsnyckel.

EntityStateResponse

Svaret som returnerades av DurableClient.readEntityState().

HttpManagementPayload

Datastruktur som innehåller HTTP-slutpunkter för instanshantering.

ManagedIdentityTokenSource

Token source implementation for Azure Managed Identities.

Exempel

Hämta en lista över Azure-prenumerationer genom att anropa HTTP-API:et för Azure Resource Manager.

const df = require("durable-functions");

df.app.orchestration(function* (context) {
  return yield context.df.callHttp({
      method: "GET",
      url: "https://management.azure.com/subscriptions?api-version=2019-06-01",
      tokenSource: df.ManagedIdentityTokenSource("https://management.core.windows.net"),
  });
});
PurgeHistoryResult

Klass för att lagra statistik om den här körningen av rensningshistoriken. Returtypen DurableClient.purgeHistory()

RetryOptions

Definierar återförsöksprinciper som kan skickas som parametrar till olika åtgärder.

Gränssnitt

ActivityOptions
ActivityTrigger
CallHttpOptions

Alternativobjekt som tillhandahålls för callHttp() metoder för orkestreringskontexter

DurableClientInput
DurableClientOptions

Konfigurerar indata, utdata och hanterare för en Durable Client-funktion.

DurableEntityContext

Tillhandahåller funktioner för programkod som implementerar en entitetsåtgärd.

EntityContext

Kontextobjekt som skickas till entitetsfunktioner.

EntityOptions
EntityTrigger
GetStatusOptions

Alternativobjekt som skickas till metoden klient getStatus()

HttpDurableClientOptions

Konfigurerar alternativ för en HTTP-utlöst Durable Client-funktion.

OrchestrationContext

Kontextobjekt som skickas till orkestreringsfunktioner.

OrchestrationFilter

Alternativobjekt som skickas till DurableClient-API:er för att filtrera orkestreringar som du vill utföra åtgärder på

OrchestrationOptions
OrchestrationTrigger
RegisteredActivityTask

En durable Functions-uppgift.

RegisteredOrchestrationTask

En durable Functions-uppgift.

StartNewOptions

Alternativobjekt som tillhandahålls som ett valfritt andra argument till metoden client.startNew()

Task

En durable Functions-uppgift.

TaskHubOptions

Alternativobjekt som skickas till DurableClient-API:er för att ange egenskaper för aktivitetshubben

TimerDurableClientOptions

Konfigurerar alternativ för en timerutlöst durable client-funktion.

TimerTask

Returneras från DurableClient.createTimer(Date) om anropet inte är yield-ed. Representerar en väntande timer. Mer information finns i dokumentationen om aktivitet.

Alla väntande timers måste slutföras eller avbrytas för att orkestreringen ska slutföras.

Exempel

Avbryt en timer

// calculate expiration date
const timeoutTask = context.df.createTimer(expirationDate);

// do some work

if (!timeoutTask.isCompleted) {
    // An orchestration won't get marked as completed until all its scheduled
    // tasks have returned, or been cancelled. Therefore, it is important
    // to cancel timers when they're no longer needed
    timeoutTask.cancel();
}

Exempel

Skapa en timeout

const now = Date.now();
const expiration = new Date(now.valueOf()).setMinutes(now.getMinutes() + 30);

const timeoutTask = context.df.createTimer(expirationDate);
const otherTask = context.df.callActivity("DoWork");

const winner = yield context.df.Task.any([timeoutTask, otherTask]);

if (winner === otherTask) {
    // do some more work
}

if (!timeoutTask.isCompleted) {
    // An orchestration won't get marked as completed until all its scheduled
    // tasks have returned, or been cancelled. Therefore, it is important
    // to cancel timers when they're no longer needed
    timeoutTask.cancel();
}
WaitForCompletionOptions

Alternativobjekt som skickas till metoden durableClient.waitForCompletionOrCreateCheckStatusResponse() för att ange tidsgränser för hur länge du ska vänta på utdata från den hållbara funktionen och hur ofta utdata ska kontrolleras.

Typalias

ActivityHandler
DurableClientHandler

Typ av en hanterarfunktion som utlöses av en utlösare och tar emot en DurableClient instans som indata.

EntityHandler
HttpDurableClientHandler
OrchestrationHandler

Typ av en generator som kan registreras som orkestrering

RegisteredActivity
RegisteredOrchestration
TimerDurableClientHandler
TokenSource

Uppräkningar

OrchestrationRuntimeStatus

Status för en orkestreringsinstans.

Funktioner

getClient(InvocationContext)

Returnerar en OrchestrationClient-instans.

Funktionsinformation

getClient(InvocationContext)

Returnerar en OrchestrationClient-instans.

function getClient(context: InvocationContext): DurableClient

Parametrar

context
InvocationContext

Kontextobjektet för Den Azure-funktion vars brödtext anropar den här metoden.

Returer