Package google.longrunning

الفهرس

العمليات

تدير العمليات التي تستغرق وقتًا طويلاً باستخدام خدمة واجهة برمجة التطبيقات.

عندما تستغرق طريقة واجهة برمجة التطبيقات عادةً وقتًا طويلاً لإكمالها، يمكن تصميمها لعرض Operation للعميل، ويمكن للعميل استخدام هذه الواجهة لتلقّي الردّ الفعلي بشكل غير متزامن من خلال الاستعلام عن مورد العملية، أو تمرير مورد العملية إلى واجهة برمجة تطبيقات أخرى (مثل Pub/Sub API) لتلقّي الردّ. يجب أن تُنفِّذ أي خدمة واجهة برمجة تطبيقات تعرض عمليات تستغرق وقتًا طويلاً واجهة Operations حتى يحصل المطوّرون على تجربة متّسقة مع العملاء.

CancelOperation

rpc CancelOperation(CancelOperationRequest) returns (Empty)

يبدأ إلغاء غير متزامن لعملية تستغرق وقتًا طويلاً. يبذل الخادم قصارى جهده لإلغاء العملية، ولكن لا يمكن ضمان نجاح ذلك. إذا كان الخادم لا يتيح هذه الطريقة، يتم عرض google.rpc.Code.UNIMPLEMENTED. يمكن للعملاء استخدام Operations.GetOperation أو طرق أخرى للتحقّق مما إذا تم إلغاء الاشتراك أو اكتمال العملية على الرغم من إلغاء الاشتراك. عند إلغاء العملية بنجاح، لا يتم حذفها، بل تصبح عملية ذات قيمة Operation.error وgoogle.rpc.Status.code‏ = 1، ما يعادل Code.CANCELLED.

نطاقات التفويض

يجب توفير نطاق OAuth التالي:

  • https://www.googleapis.com/auth/cloud-platform
DeleteOperation

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

لحذف عملية طويلة الأمد تشير هذه الطريقة إلى أنّ العميل لم يعُد مهتمًا بنتيجة العملية. ولا يؤدي ذلك إلى إلغاء العملية. إذا كان الخادم لا يتيح هذه الطريقة، يتم عرض google.rpc.Code.UNIMPLEMENTED.

نطاقات التفويض

يجب توفير نطاق OAuth التالي:

  • https://www.googleapis.com/auth/cloud-platform
GetOperation

rpc GetOperation(GetOperationRequest) returns (Operation)

تحصل على أحدث حالة لعملية طويلة الأمد. يمكن للعملاء استخدام هذه الطريقة للاستعلام عن نتيجة العملية على فترات كما تنصح خدمة واجهة برمجة التطبيقات.

نطاقات التفويض

يجب توفير نطاق OAuth التالي:

  • https://www.googleapis.com/auth/cloud-platform
أذونات إدارة الهوية والوصول

يتطلب هذا الإجراء الحصول على إذن IAM التالي في مورد name:

  • routeoptimization.operations.get

لمزيد من المعلومات، يُرجى الاطّلاع على مستندات إدارة الهوية وإمكانية الوصول.

ListOperations

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

يسرد العمليات التي تتطابق مع الفلتر المحدّد في الطلب. إذا كان الخادم لا يتيح هذه الطريقة، يتم عرض UNIMPLEMENTED.

نطاقات التفويض

يجب توفير نطاق OAuth التالي:

  • https://www.googleapis.com/auth/cloud-platform
WaitOperation

rpc WaitOperation(WaitOperationRequest) returns (Operation)

ينتظر هذا الإجراء إلى أن تكتمل العملية المحدّدة التي تستغرق وقتًا طويلاً أو إلى أن تصل إلى مهلة محدّدة كحد أقصى، مع عرض أحدث حالة. إذا سبق أن اكتملت العملية، يتم عرض الحالة الأخيرة على الفور. إذا كانت مهلة الانتظار المحدّدة أكبر من مهلة الانتظار التلقائية لبروتوكول HTTP/RPC، يتم استخدام مهلة الانتظار لبروتوكول HTTP/RPC. إذا كان الخادم لا يتيح هذه الطريقة، يتم عرض google.rpc.Code.UNIMPLEMENTED. يُرجى العِلم أنّ هذه الطريقة تعتمد على أقصى الجهود المبذولة. وقد يعرض أحدث حالة قبل انتهاء مهلة الانتظار المحدّدة (بما في ذلك على الفور)، ما يعني أنّ الردّ الفوري لا يضمن اكتمال العملية.

نطاقات التفويض

يجب توفير نطاق OAuth التالي:

  • https://www.googleapis.com/auth/cloud-platform

CancelOperationRequest

رسالة الطلب لـ Operations.CancelOperation.

الحقول
name

string

اسم مورد العملية المطلوب إلغاؤه.

DeleteOperationRequest

رسالة الطلب لـ Operations.DeleteOperation.

الحقول
name

string

اسم مورد العملية المطلوب حذفه

GetOperationRequest

رسالة الطلب لـ Operations.GetOperation.

الحقول
name

string

اسم مورد العملية.

ListOperationsRequest

رسالة الطلب لـ Operations.ListOperations.

الحقول
name

string

اسم المورد الرئيسي للعملية

filter

string

فلتر القائمة العادي

page_size

int32

حجم صفحة القائمة العادي.

page_token

string

الرمز المميّز العادي لصفحة القائمة

ListOperationsResponse

رسالة الردّ لـ Operations.ListOperations

الحقول
operations[]

Operation

قائمة بالعمليات التي تتطابق مع الفلتر المحدّد في الطلب

next_page_token

string

الرمز المميّز العادي للصفحة التالية في القائمة

العملية

يمثّل هذا المورد عملية طويلة الأمد هي نتيجة طلب بيانات من واجهة برمجة تطبيقات الشبكة.

الحقول
name

string

الاسم الذي يحدّده الخادم، والذي يكون فريدًا فقط ضمن الخدمة نفسها التي تعرضه في الأصل. في حال استخدام عملية الربط التلقائية لبروتوكول HTTP، يجب أن يكون name اسم مورد ينتهي بـ operations/{unique_id}.

metadata

Any

البيانات الوصفية الخاصة بالخدمة والمرتبطة بالعملية وعادةً ما يحتوي على معلومات عن مستوى التقدّم والبيانات الوصفية الشائعة، مثل وقت الإنشاء. قد لا تقدّم بعض الخدمات هذه البيانات الوصفية. يجب أن توثّق أي طريقة تعرض عملية تستغرق وقتًا طويلاً نوع البيانات الوصفية، إن توفّر.

done

bool

إذا كانت القيمة هي false، يعني ذلك أنّ العملية لا تزال قيد التنفيذ. إذا كان true، تكون العملية قد اكتملت، ويكون الخيار error أو response متاحًا.

حقل الربط result نتيجة العملية، والتي يمكن أن تكون إما error أو response صالحًا. إذا كان done == false، لن يتم ضبط error أو response. إذا كان done == true، يمكن ضبط واحد بالضبط من error أو response. قد لا تقدّم بعض الخدمات النتيجة. يمكن أن يكون result واحدًا فقط مما يلي:
error

Status

نتيجة الخطأ في العملية في حال تعذّر إكمالها أو إلغائها

response

Any

الاستجابة العادية والناجحة للعملية. إذا لم تُرجع الطريقة الأصلية أي بيانات عند النجاح، مثل Delete، تكون الاستجابة هي google.protobuf.Empty. إذا كانت الطريقة الأصلية هي الطريقة العادية Get/Create/Update، يجب أن يكون الردّ هو المورد. بالنسبة إلى الطرق الأخرى، يجب أن يكون للردّ النوع XxxResponse، حيث يكون Xxx هو اسم الطريقة الأصلي. على سبيل المثال، إذا كان اسم الطريقة الأصلي هو TakeSnapshot()، يكون نوع الاستجابة المستنتج هو TakeSnapshotResponse.

WaitOperationRequest

رسالة الطلب لـ Operations.WaitOperation.

الحقول
name

string

اسم مورد العملية المطلوب الانتظار عليه

timeout

Duration

الحد الأقصى لمدة الانتظار قبل انتهاء مهلة الانتظار في حال ترك هذا الحقل فارغًا، سيكون وقت الانتظار هو الحد الأقصى للوقت المسموح به من خلال بروتوكول HTTP/RPC الأساسي. في حال تحديد الموعد النهائي لسياق RPC أيضًا، سيتم استخدام الموعد الأقصر.