Aracılığıyla paylaş


DurableOrchestrationContext class

Düzenleme işlemi uygulayan uygulama kodu için işlevsellik sağlar.

Özellikler

currentUtcDateTime

Geçerli tarih/saati orchestrator işlevleri tarafından kullanımı güvenli bir şekilde alır.

Bu tarih/saat değeri düzenleme geçmişinden türetilir. Orchestrator işlev kodunun belirli noktalarında her zaman aynı değeri döndürür ve bu da onu belirlenici ve yeniden yürütme için güvenli hale getirir.

customStatus

Düzenleme için özel durum

instanceId

Geçerli düzenleme örneğinin kimliği.

Orchestrator işlevi zamanlandığında örnek kimliği oluşturulur ve düzeltilir. Otomatik olarak oluşturulabilir, bu durumda GUID olarak biçimlendirilir veya herhangi bir biçimle kullanıcı tarafından belirtilebilir.

isReplaying

Orchestrator işlevinin şu anda kendisini yeniden oynatıp oynatmadığını belirten bir değer alır.

Bu özellik, yalnızca orchestrator işlevi yeniden yürütme olmadığında çalıştırılması gereken bir mantık olduğunda kullanışlıdır. Örneğin, orchestrator işlevi yeniden yürütmesinin bir parçası olarak çoğaltıldığında bazı uygulama günlüğü türleri çok gürültülü olabilir. Orchestrator kodu işlevin yeniden oynatılıp oynatılmadığını denetleyebiliyor ve bu değer falseolduğunda günlük deyimlerini yayınlayabilir.

parentInstanceId

Geçerli alt düzenleme örneğinin üst düzenlemesinin kimliği. Değer yalnızca alt düzenlemelerde kullanılabilir.

Üst düzenleyici işlevi zamanlandığında üst örnek kimliği oluşturulur ve düzeltilir. Otomatik olarak oluşturulabilir, bu durumda GUID olarak biçimlendirilir veya herhangi bir biçimle kullanıcı tarafından belirtilebilir.

Task

Görev örnekleri tarafından temsil edilen bekleyen eylemler koleksiyonlarını işleme yöntemlerinin giriş noktası. Paralelleştirme işlemlerinde kullanmak için.

Yöntemler

callActivity(string, unknown)

Yürütme için name adlı bir etkinlik işlevi zamanlar.

callActivityWithRetry(string, RetryOptions, unknown)

Yeniden deneme seçenekleriyle yürütme için name adlı bir etkinlik işlevi zamanlar.

callEntity(EntityId, string, unknown)

Bağımsız değişken geçirerek varlık üzerindeki bir işlemi çağırır ve tamamlanmasını bekler.

callHttp(CallHttpOptions)

Belirtilen uç noktaya dayanıklı bir HTTP çağrısı zamanlar.

callSubOrchestrator(string, unknown, string)

Yürütme için name adlı bir düzenleme işlevi zamanlar.

callSubOrchestratorWithRetry(string, RetryOptions, unknown, string)

Yeniden deneme seçenekleriyle yürütme için name adlı bir orchestrator işlevi zamanlar.

continueAsNew(unknown)

Geçmişini temizleyerek düzenlemeyi yeniden başlatır.

createTimer(Date)

Belirtilen zamanda süresi dolan dayanıklı bir zamanlayıcı oluşturur.

Orchestrator işlevi tamamlanmadan önce bu yöntem kullanılarak oluşturulan tüm dayanıklı zamanlayıcıların süresi dolmalı veya TimerTask.cancel() kullanılarak iptal edilmelidir. Aksi takdirde, temel alınan çerçeve zamanlayıcının süresi dolana kadar örneği canlı tutar.

getInput<T>()

Geçerli orchestrator işlevinin girdisini seri durumdan çıkarılmış bir değer olarak alır.

newGuid(string)

Düzenleme veya işlem içinde yeniden yürütme için güvenli olan yeni bir GUID oluşturur.

Bu yöntemin varsayılan uygulaması RFC 4122 §4.3 algoritmasını kullanarak ad tabanlı bir UUID oluşturur. Bu değeri oluşturmak için kullanılan ad girişi, düzenleme örneği kimliğinin ve dahili olarak yönetilen bir sıra numarasının birleşimidir.

setCustomStatus(unknown)

Geçerli düzenleyici işlevinin JSON serileştirilebilir durumunu ayarlar.

customStatusObject değeri JSON olarak serileştirilir ve düzenleme durumu sorgu API'lerinin kullanımına sunulur. Serileştirilmiş JSON değeri 16 KB UTF-16 kodlanmış metni aşmamalıdır.

Serileştirilmiş customStatusObject değeri, bir sonraki yield veya return deyiminden sonra yukarıda belirtilen API'ler için kullanılabilir hale getirilir.

signalEntity(EntityId, string, unknown)

Yanıt beklemeden bir bağımsız değişken geçirerek Dayanıklı Varlığa sinyal işlemi gönderin. Ateş ve unutma operasyonu.

waitForExternalEvent(string)

Bir olayın name adıyla yükseltilmesi için zaman uyumsuz olarak bekler ve olay verilerini döndürür.

Dış istemciler, raiseEvent()kullanarak bekleyen bir düzenleme örneğine olay oluşturabilir.

Özellik Ayrıntıları

currentUtcDateTime

Geçerli tarih/saati orchestrator işlevleri tarafından kullanımı güvenli bir şekilde alır.

Bu tarih/saat değeri düzenleme geçmişinden türetilir. Orchestrator işlev kodunun belirli noktalarında her zaman aynı değeri döndürür ve bu da onu belirlenici ve yeniden yürütme için güvenli hale getirir.

currentUtcDateTime: Date

Özellik Değeri

Date

customStatus

Düzenleme için özel durum

customStatus: unknown

Özellik Değeri

unknown

instanceId

Geçerli düzenleme örneğinin kimliği.

Orchestrator işlevi zamanlandığında örnek kimliği oluşturulur ve düzeltilir. Otomatik olarak oluşturulabilir, bu durumda GUID olarak biçimlendirilir veya herhangi bir biçimle kullanıcı tarafından belirtilebilir.

instanceId: string

Özellik Değeri

string

isReplaying

Orchestrator işlevinin şu anda kendisini yeniden oynatıp oynatmadığını belirten bir değer alır.

Bu özellik, yalnızca orchestrator işlevi yeniden yürütme olmadığında çalıştırılması gereken bir mantık olduğunda kullanışlıdır. Örneğin, orchestrator işlevi yeniden yürütmesinin bir parçası olarak çoğaltıldığında bazı uygulama günlüğü türleri çok gürültülü olabilir. Orchestrator kodu işlevin yeniden oynatılıp oynatılmadığını denetleyebiliyor ve bu değer falseolduğunda günlük deyimlerini yayınlayabilir.

isReplaying: boolean

Özellik Değeri

boolean

parentInstanceId

Geçerli alt düzenleme örneğinin üst düzenlemesinin kimliği. Değer yalnızca alt düzenlemelerde kullanılabilir.

Üst düzenleyici işlevi zamanlandığında üst örnek kimliği oluşturulur ve düzeltilir. Otomatik olarak oluşturulabilir, bu durumda GUID olarak biçimlendirilir veya herhangi bir biçimle kullanıcı tarafından belirtilebilir.

parentInstanceId: undefined | string

Özellik Değeri

undefined | string

Task

Görev örnekleri tarafından temsil edilen bekleyen eylemler koleksiyonlarını işleme yöntemlerinin giriş noktası. Paralelleştirme işlemlerinde kullanmak için.

Task: { all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }

Özellik Değeri

{ all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }

Yöntem Ayrıntıları

callActivity(string, unknown)

Yürütme için name adlı bir etkinlik işlevi zamanlar.

function callActivity(name: string, input?: unknown): Task

Parametreler

name

string

Çağrılacak etkinlik işlevinin adı.

input

unknown

Etkinlik işlevine geçirmek için JSON-serializable girişi.

Döndürülenler

Çağrılan etkinlik işlevi tamamlandığında veya başarısız olduğunda tamamlanan Dayanıklı Görev.

callActivityWithRetry(string, RetryOptions, unknown)

Yeniden deneme seçenekleriyle yürütme için name adlı bir etkinlik işlevi zamanlar.

function callActivityWithRetry(name: string, retryOptions: RetryOptions, input?: unknown): Task

Parametreler

name

string

Çağrılacak etkinlik işlevinin adı.

retryOptions
RetryOptions

Etkinlik işlevi için yeniden deneme seçenekleri.

input

unknown

Etkinlik işlevine geçirmek için JSON-serializable girişi.

Döndürülenler

callEntity(EntityId, string, unknown)

Bağımsız değişken geçirerek varlık üzerindeki bir işlemi çağırır ve tamamlanmasını bekler.

function callEntity(entityId: EntityId, operationName: string, operationInput?: unknown): Task

Parametreler

entityId
EntityId

Hedef varlık.

operationName

string

İşlemin adı.

operationInput

unknown

İşlemin girişi.

Döndürülenler

callHttp(CallHttpOptions)

Belirtilen uç noktaya dayanıklı bir HTTP çağrısı zamanlar.

function callHttp(options: CallHttpOptions): Task

Parametreler

options
CallHttpOptions

HTTP seçenekleri nesnesi

Döndürülenler

callSubOrchestrator(string, unknown, string)

Yürütme için name adlı bir düzenleme işlevi zamanlar.

function callSubOrchestrator(name: string, input?: unknown, instanceId?: string): Task

Parametreler

name

string

Çağrılacak orchestrator işlevinin adı.

input

unknown

Orchestrator işlevine geçirmek için JSON-serializable girişi.

instanceId

string

Alt düzenleme örneği için kullanılacak benzersiz bir kimlik. instanceId belirtilmezse, uzantı <calling orchestrator instance ID>:<#> biçiminde bir kimlik oluşturur

Döndürülenler

callSubOrchestratorWithRetry(string, RetryOptions, unknown, string)

Yeniden deneme seçenekleriyle yürütme için name adlı bir orchestrator işlevi zamanlar.

function callSubOrchestratorWithRetry(name: string, retryOptions: RetryOptions, input?: unknown, instanceId?: string): Task

Parametreler

name

string

Çağrılacak orchestrator işlevinin adı.

retryOptions
RetryOptions

Orchestrator işlevi için yeniden deneme seçenekleri.

input

unknown

Orchestrator işlevine geçirmek için JSON-serializable girişi.

instanceId

string

Alt düzenleme örneği için kullanılacak benzersiz bir kimlik.

Döndürülenler

continueAsNew(unknown)

Geçmişini temizleyerek düzenlemeyi yeniden başlatır.

function continueAsNew(input: unknown)

Parametreler

input

unknown

Örneği yeniden başlatmak için JSON-serializable verileri.

createTimer(Date)

Belirtilen zamanda süresi dolan dayanıklı bir zamanlayıcı oluşturur.

Orchestrator işlevi tamamlanmadan önce bu yöntem kullanılarak oluşturulan tüm dayanıklı zamanlayıcıların süresi dolmalı veya TimerTask.cancel() kullanılarak iptal edilmelidir. Aksi takdirde, temel alınan çerçeve zamanlayıcının süresi dolana kadar örneği canlı tutar.

function createTimer(fireAt: Date): TimerTask

Parametreler

fireAt

Date

Süreölçerin süresinin dolması gereken zaman.

Döndürülenler

Dayanıklı süreölçerin süresi dolduğunda tamamlanan TimerTask.

getInput<T>()

Geçerli orchestrator işlevinin girdisini seri durumdan çıkarılmış bir değer olarak alır.

function getInput<T>(): T

Döndürülenler

T

newGuid(string)

Düzenleme veya işlem içinde yeniden yürütme için güvenli olan yeni bir GUID oluşturur.

Bu yöntemin varsayılan uygulaması RFC 4122 §4.3 algoritmasını kullanarak ad tabanlı bir UUID oluşturur. Bu değeri oluşturmak için kullanılan ad girişi, düzenleme örneği kimliğinin ve dahili olarak yönetilen bir sıra numarasının birleşimidir.

function newGuid(input: string): string

Parametreler

input

string

benzersiz GUID oluşturmak için kullanılır

Döndürülenler

string

setCustomStatus(unknown)

Geçerli düzenleyici işlevinin JSON serileştirilebilir durumunu ayarlar.

customStatusObject değeri JSON olarak serileştirilir ve düzenleme durumu sorgu API'lerinin kullanımına sunulur. Serileştirilmiş JSON değeri 16 KB UTF-16 kodlanmış metni aşmamalıdır.

Serileştirilmiş customStatusObject değeri, bir sonraki yield veya return deyiminden sonra yukarıda belirtilen API'ler için kullanılabilir hale getirilir.

function setCustomStatus(customStatusObject: unknown)

Parametreler

customStatusObject

unknown

Orchestrator işlevinin özel durumu olarak kullanılacak JSON serileştirilebilir değeri.

signalEntity(EntityId, string, unknown)

Yanıt beklemeden bir bağımsız değişken geçirerek Dayanıklı Varlığa sinyal işlemi gönderin. Ateş ve unutma operasyonu.

function signalEntity(entityId: EntityId, operationName: string, operationInput?: unknown)

Parametreler

entityId
EntityId

Hedef varlığın kimliği.

operationName

string

İşlemin adı.

operationInput

unknown

(isteğe bağlı) giriş.

waitForExternalEvent(string)

Bir olayın name adıyla yükseltilmesi için zaman uyumsuz olarak bekler ve olay verilerini döndürür.

Dış istemciler, raiseEvent()kullanarak bekleyen bir düzenleme örneğine olay oluşturabilir.

function waitForExternalEvent(name: string): Task

Parametreler

name

string

Beklenecek dış olayın adı.

Döndürülenler

Belirtilen adda bir dış olay alındığında tamamlanan bir Görev