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
أذونات إدارة الهوية وإمكانية الوصول

يتطلب هذا الإجراء الحصول على إذن إدارة الهوية وإمكانية الوصول التالي في مورد 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) أيضًا، سيتم استخدام الموعد الأقصر.