durable-functions package

Kelas

AggregatedError

Kesalahan tertentu muncul ketika context.df.Task.all() gagal. Pesannya berisi agregasi semua pengecualian yang gagal. Ini harus mengikuti format di bawah ini:

context.df.Task.all() mengalami pesan kesalahan di bawah ini:

Nama: DurableError Message: Fungsi aktivitas "ActivityA" gagal. StackTrace: <stacktrace>

Nama: DurableError Message: Fungsi aktivitas "ActivityB" gagal. StackTrace: <stacktrace>

DummyEntityContext

Konteks entitas dengan nilai default dummy untuk memfasilitasi mocking/stubbing Durable Functions API.

DummyOrchestrationContext

Konteks orkestrasi dengan nilai default dummy untuk memfasilitasi mocking/stubbing Durable Functions API.

DurableClient

Klien untuk memulai, mengkueri, mengakhiri, dan menaikkan peristiwa ke orkestrasi dan instans entitas.

DurableError

Kesalahan spekfik yang muncul ketika aktivitas terjadwal atau suborkestrator telah gagal. Kesalahan ini dapat diperiksa melalui penjaga instanceof untuk menangkap hanya pengecualian yang dilemparkan oleh pustaka DurableJS.

DurableOrchestrationContext

Menyediakan fungsionalitas untuk kode aplikasi yang menerapkan operasi orkestrasi.

DurableOrchestrationStatus

Mewakili status instans orkestrasi tahan lama.

Dapat diambil menggunakan DurableClient.getStatus()

EntityId

Pengidentifikasi unik untuk entitas, yang terdiri dari kelas entitas dan kunci entitas.

EntityStateResponse

Respons yang dikembalikan oleh DurableClient.readEntityState().

HttpManagementPayload

Struktur data yang berisi titik akhir HTTP manajemen instans.

ManagedIdentityTokenSource

Implementasi Sumber Token untuk Azure Managed Identities.

Contoh

Dapatkan daftar Langganan Azure dengan memanggil API HTTP 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

Kelas untuk menyimpan statistik tentang eksekusi riwayat penghapusan menyeluruh ini. Jenis pengembalian DurableClient.purgeHistory()

RetryOptions

Menentukan kebijakan coba lagi yang dapat diteruskan sebagai parameter ke berbagai operasi.

Antarmuka

ActivityOptions
ActivityTrigger
CallHttpOptions

Objek opsi yang disediakan untuk callHttp() metode pada konteks orkestrasi

DurableClientInput
DurableClientOptions

Mengonfigurasi input, output, dan handler untuk fungsi Durable Client.

DurableEntityContext

Menyediakan fungsionalitas untuk kode aplikasi yang menerapkan operasi entitas.

EntityContext

Objek konteks diteruskan ke Fungsi entitas.

EntityOptions
EntityTrigger
GetStatusOptions

Objek opsi diteruskan ke metode getStatus() klien

HttpDurableClientOptions

Mengonfigurasi opsi untuk fungsi Durable Client yang dipicu HTTP.

OrchestrationContext

Objek konteks diteruskan ke Fungsi orkestrasi.

OrchestrationFilter

Objek opsi diteruskan ke API DurableClient untuk memfilter orkestrasi untuk melakukan tindakan

OrchestrationOptions
OrchestrationTrigger
RegisteredActivityTask

Tugas Durable Functions.

RegisteredOrchestrationTask

Tugas Durable Functions.

StartNewOptions

Objek opsi yang disediakan sebagai argumen kedua opsional ke metode client.startNew()

Task

Tugas Durable Functions.

TaskHubOptions

Objek opsi diteruskan ke API DurableClient untuk menentukan properti hub tugas

TimerDurableClientOptions

Mengonfigurasi opsi untuk fungsi Durable Client yang dipicu timer.

TimerTask

Dikembalikan dari DurableClient.createTimer(Date) jika panggilan tidak yield-ed. Mewakili timer yang tertunda. Lihat dokumentasi tentang Tugas untuk informasi selengkapnya.

Semua timer yang tertunda harus diselesaikan atau dibatalkan agar orkestrasi selesai.

Contoh

Membatalkan 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();
}

Contoh

Membuat batas waktu

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

Objek opsi diteruskan ke metode durableClient.waitForCompletionOrCreateCheckStatusResponse() untuk menentukan batas waktu berapa lama menunggu output dari fungsi tahan lama dan seberapa sering memeriksa output.

Alias Jenis

ActivityHandler
DurableClientHandler

Jenis fungsi handler yang dipicu oleh beberapa pemicu dan menerima instans DurableClient sebagai input.

EntityHandler
HttpDurableClientHandler
OrchestrationHandler

Jenis Generator yang dapat didaftarkan sebagai orkestrasi

RegisteredActivity
RegisteredOrchestration
TimerDurableClientHandler
TokenSource

Enum

OrchestrationRuntimeStatus

Status instans orkestrasi.

Fungsi

getClient(InvocationContext)

Mengembalikan instans OrchestrationClient.

Detail Fungsi

getClient(InvocationContext)

Mengembalikan instans OrchestrationClient.

function getClient(context: InvocationContext): DurableClient

Parameter

context
InvocationContext

Objek konteks fungsi Azure yang isinya memanggil metode ini.

Mengembalikan