DurableOrchestrationContext class
يوفر وظائف للتعليمات البرمجية للتطبيق الذي ينفذ عملية تزامن.
الخصائص
| current |
يحصل على التاريخ/الوقت الحالي بطريقة آمنة للاستخدام من قبل دالات المنسق. يتم اشتقاق قيمة التاريخ/الوقت هذه من محفوظات التنسيق. يقوم دائما بإرجاع نفس القيمة عند نقاط محددة في التعليمات البرمجية لدالة المنسق، ما يجعلها محددة وآمنة لإعادة التشغيل. |
| custom |
الحالة المخصصة للتنسيق |
| instance |
معرف مثيل التنسيق الحالي. يتم إنشاء معرف المثيل وإصلاحه عند جدولة دالة المنسق. يمكن إنشاؤه تلقائيا، وفي هذه الحالة يتم تنسيقه كمعرف GUID، أو يمكن تحديده من قبل المستخدم بأي تنسيق. |
| is |
يحصل على قيمة تشير إلى ما إذا كانت دالة المنسق تعيد تشغيل نفسها حاليا. تكون هذه الخاصية مفيدة عندما يكون هناك منطق يحتاج إلى التشغيل فقط عندما تكون وظيفة المنسق لا إعادة التشغيل. على سبيل المثال، قد تصبح أنواع معينة من تسجيل التطبيقات مزعجة جدا عند تكرارها كجزء من إعادة تشغيل دالة المنسق. يمكن أن تتحقق التعليمات البرمجية للمنسق لمعرفة ما إذا كانت الدالة تتم إعادة تشغيلها ثم إصدار عبارات السجل عندما تكون هذه القيمة |
| parent |
معرف التنسيق الأصل لمثيل التنسيق الفرعي الحالي. ستكون القيمة متاحة فقط في التنسيقات الفرعية. يتم إنشاء معرف المثيل الأصل وإصلاحه عند جدولة دالة المنسق الأصل. يمكن إنشاؤه تلقائيا، وفي هذه الحالة يتم تنسيقه كمعرف GUID، أو يمكن تحديده من قبل المستخدم بأي تنسيق. |
| Task | نقطة إدخال لأساليب معالجة مجموعات الإجراءات المعلقة التي تمثلها مثيلات المهمة. للاستخدام في عمليات التوازي. |
الأساليب
| call |
جدولة دالة نشاط تسمى |
| call |
جدولة دالة نشاط تسمى |
| call |
يستدعي عملية على كيان، ويمرر وسيطة، وينتظر حتى يكتمل. |
| call |
جدولة استدعاء HTTP دائم إلى نقطة النهاية المحددة. |
| call |
جدولة دالة تزامن تسمى |
| call |
جدولة دالة منسق تسمى |
| continue |
إعادة تشغيل التنسيق عن طريق مسح محفوظاته. |
| create |
إنشاء مؤقت دائم تنتهي صلاحيته في وقت محدد. يجب أن تنتهي صلاحية جميع المؤقتات الدائمة التي تم إنشاؤها باستخدام هذا الأسلوب أو يتم إلغاؤها باستخدام |
| get |
يحصل على إدخال دالة المنسق الحالية كقيمة غير تسلسلية. |
| new |
إنشاء GUID جديد آمن لإعادة التشغيل ضمن تنسيق أو عملية. يؤدي التنفيذ الافتراضي لهذا الأسلوب إلى إنشاء UUID يستند إلى الاسم باستخدام الخوارزمية من RFC 4122 #4.3. إدخال الاسم المستخدم لإنشاء هذه القيمة هو مزيج من معرف مثيل التزامن ورقم تسلسل مدار داخليا. |
| set |
تعيين حالة JSON القابلة للتسلسل لدالة المنسق الحالية. يتم تسلسل قيمة سيتم توفير قيمة |
| signal |
إرسال عملية إشارة إلى كيان دائم، وتمرير وسيطة، دون انتظار استجابة. عملية حريق ونسيان. |
| wait |
ينتظر بشكل غير متزامن حتى يتم رفع حدث بالاسم يمكن للعملاء الخارجيين رفع الأحداث إلى مثيل تزامن انتظار باستخدام |
تفاصيل الخاصية
currentUtcDateTime
يحصل على التاريخ/الوقت الحالي بطريقة آمنة للاستخدام من قبل دالات المنسق.
يتم اشتقاق قيمة التاريخ/الوقت هذه من محفوظات التنسيق. يقوم دائما بإرجاع نفس القيمة عند نقاط محددة في التعليمات البرمجية لدالة المنسق، ما يجعلها محددة وآمنة لإعادة التشغيل.
currentUtcDateTime: Date
قيمة الخاصية
Date
customStatus
الحالة المخصصة للتنسيق
customStatus: unknown
قيمة الخاصية
unknown
instanceId
معرف مثيل التنسيق الحالي.
يتم إنشاء معرف المثيل وإصلاحه عند جدولة دالة المنسق. يمكن إنشاؤه تلقائيا، وفي هذه الحالة يتم تنسيقه كمعرف GUID، أو يمكن تحديده من قبل المستخدم بأي تنسيق.
instanceId: string
قيمة الخاصية
string
isReplaying
يحصل على قيمة تشير إلى ما إذا كانت دالة المنسق تعيد تشغيل نفسها حاليا.
تكون هذه الخاصية مفيدة عندما يكون هناك منطق يحتاج إلى التشغيل فقط عندما تكون وظيفة المنسق لا إعادة التشغيل. على سبيل المثال، قد تصبح أنواع معينة من تسجيل التطبيقات مزعجة جدا عند تكرارها كجزء من إعادة تشغيل دالة المنسق. يمكن أن تتحقق التعليمات البرمجية للمنسق لمعرفة ما إذا كانت الدالة تتم إعادة تشغيلها ثم إصدار عبارات السجل عندما تكون هذه القيمة false.
isReplaying: boolean
قيمة الخاصية
boolean
parentInstanceId
معرف التنسيق الأصل لمثيل التنسيق الفرعي الحالي. ستكون القيمة متاحة فقط في التنسيقات الفرعية.
يتم إنشاء معرف المثيل الأصل وإصلاحه عند جدولة دالة المنسق الأصل. يمكن إنشاؤه تلقائيا، وفي هذه الحالة يتم تنسيقه كمعرف GUID، أو يمكن تحديده من قبل المستخدم بأي تنسيق.
parentInstanceId: undefined | string
قيمة الخاصية
undefined | string
Task
نقطة إدخال لأساليب معالجة مجموعات الإجراءات المعلقة التي تمثلها مثيلات المهمة. للاستخدام في عمليات التوازي.
Task: { all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }
قيمة الخاصية
{ all: (tasks: Task[]) => Task, any: (tasks: Task[]) => Task }
تفاصيل الأسلوب
callActivity(string, unknown)
جدولة دالة نشاط تسمى name للتنفيذ.
function callActivity(name: string, input?: unknown): Task
المعلمات
- name
-
string
اسم دالة النشاط التي يجب استدعاها.
- input
-
unknown
إدخال JSON القابل للتسلسل لتمريره إلى دالة النشاط.
المرتجعات
مهمة دائمة تكتمل عند اكتمال وظيفة النشاط المسماة أو فشلها.
callActivityWithRetry(string, RetryOptions, unknown)
جدولة دالة نشاط تسمى name للتنفيذ باستخدام خيارات إعادة المحاولة.
function callActivityWithRetry(name: string, retryOptions: RetryOptions, input?: unknown): Task
المعلمات
- name
-
string
اسم دالة النشاط التي يجب استدعاها.
- retryOptions
- RetryOptions
خيارات إعادة المحاولة لدالة النشاط.
- input
-
unknown
إدخال JSON القابل للتسلسل لتمريره إلى دالة النشاط.
المرتجعات
callEntity(EntityId, string, unknown)
callHttp(CallHttpOptions)
جدولة استدعاء HTTP دائم إلى نقطة النهاية المحددة.
function callHttp(options: CallHttpOptions): Task
المعلمات
- options
- CallHttpOptions
كائن خيارات HTTP
المرتجعات
callSubOrchestrator(string, unknown, string)
جدولة دالة تزامن تسمى name للتنفيذ.
function callSubOrchestrator(name: string, input?: unknown, instanceId?: string): Task
المعلمات
- name
-
string
اسم دالة المنسق لاستدعاء.
- input
-
unknown
إدخال JSON القابل للتسلسل لتمريره إلى دالة المنسق.
- instanceId
-
string
معرف فريد لاستخدامه لمثيل التنسيق الفرعي.
إذا لم يتم تحديد instanceId، فسينشئ الملحق معرفا بالتنسيق <calling orchestrator instance ID>:<#>
المرتجعات
callSubOrchestratorWithRetry(string, RetryOptions, unknown, string)
جدولة دالة منسق تسمى name للتنفيذ مع خيارات إعادة المحاولة.
function callSubOrchestratorWithRetry(name: string, retryOptions: RetryOptions, input?: unknown, instanceId?: string): Task
المعلمات
- name
-
string
اسم دالة المنسق لاستدعاء.
- retryOptions
- RetryOptions
خيارات إعادة المحاولة لدالة المنسق.
- input
-
unknown
إدخال JSON القابل للتسلسل لتمريره إلى دالة المنسق.
- instanceId
-
string
معرف فريد لاستخدامه لمثيل التنسيق الفرعي.
المرتجعات
continueAsNew(unknown)
إعادة تشغيل التنسيق عن طريق مسح محفوظاته.
function continueAsNew(input: unknown)
المعلمات
- input
-
unknown
البيانات القابلة للتسلسل JSON لإعادة تهيئة المثيل باستخدام.
createTimer(Date)
إنشاء مؤقت دائم تنتهي صلاحيته في وقت محدد.
يجب أن تنتهي صلاحية جميع المؤقتات الدائمة التي تم إنشاؤها باستخدام هذا الأسلوب أو يتم إلغاؤها باستخدام TimerTask.cancel() قبل اكتمال وظيفة المنسق. وإلا، فسيحافظ إطار العمل الأساسي على بقاء المثيل حيا حتى تنتهي صلاحية المؤقت.
function createTimer(fireAt: Date): TimerTask
المعلمات
- fireAt
-
Date
الوقت الذي يجب أن تنتهي فيه صلاحية المؤقت.
المرتجعات
TimerTask الذي يكتمل عند انتهاء صلاحية المؤقت الدائم.
getInput<T>()
يحصل على إدخال دالة المنسق الحالية كقيمة غير تسلسلية.
function getInput<T>(): T
المرتجعات
T
newGuid(string)
إنشاء GUID جديد آمن لإعادة التشغيل ضمن تنسيق أو عملية.
يؤدي التنفيذ الافتراضي لهذا الأسلوب إلى إنشاء UUID يستند إلى الاسم باستخدام الخوارزمية من RFC 4122 #4.3. إدخال الاسم المستخدم لإنشاء هذه القيمة هو مزيج من معرف مثيل التزامن ورقم تسلسل مدار داخليا.
function newGuid(input: string): string
المعلمات
- input
-
string
يستخدم لإنشاء GUID الفريد
المرتجعات
string
setCustomStatus(unknown)
تعيين حالة JSON القابلة للتسلسل لدالة المنسق الحالية.
يتم تسلسل قيمة customStatusObject إلى JSON وسيتم توفيرها لواجهات برمجة تطبيقات استعلام حالة التنسيق. يجب ألا تتجاوز قيمة JSON المتسلسلة 16 كيلوبايت من النص المشفرة UTF-16.
سيتم توفير قيمة customStatusObject المتسلسلة لواجهات برمجة التطبيقات المذكورة أعلاه بعد عبارة yield أو return التالية.
function setCustomStatus(customStatusObject: unknown)
المعلمات
- customStatusObject
-
unknown
قيمة JSON القابلة للتسلسل لاستخدامها كحالة مخصصة لدالة المنسق.
signalEntity(EntityId, string, unknown)
إرسال عملية إشارة إلى كيان دائم، وتمرير وسيطة، دون انتظار استجابة. عملية حريق ونسيان.
function signalEntity(entityId: EntityId, operationName: string, operationInput?: unknown)
المعلمات
- entityId
- EntityId
معرف الكيان الهدف.
- operationName
-
string
اسم العملية.
- operationInput
-
unknown
(اختياري) إدخال للعملية.
waitForExternalEvent(string)
ينتظر بشكل غير متزامن حتى يتم رفع حدث بالاسم name وإرجاع بيانات الحدث.
يمكن للعملاء الخارجيين رفع الأحداث إلى مثيل تزامن انتظار باستخدام raiseEvent().
function waitForExternalEvent(name: string): Task
المعلمات
- name
-
string
اسم الحدث الخارجي الذي يجب انتظاره.
المرتجعات
مهمة تكتمل عند تلقي حدث خارجي للاسم المحدد