Package google.longrunning

الفهرس

العمليات

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

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

إلغاء العملية

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/datastore
  • https://www.googleapis.com/auth/cloud-platform

لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة حول المصادقة.

عملية الحذف

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

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

نطاقات الأذونات

يتطلب هذا الإعداد أحد نطاقات OAuth التالية:

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

لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة حول المصادقة.

الحصول على التشغيل

rpc GetOperation(GetOperationRequest) returns (Operation)

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

نطاقات الأذونات

يتطلب هذا الإعداد أحد نطاقات OAuth التالية:

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

لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة حول المصادقة.

عمليات القائمة

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

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

نطاقات الأذونات

يتطلب هذا الإعداد أحد نطاقات OAuth التالية:

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

لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة حول المصادقة.

عملية الانتظار

rpc WaitOperation(WaitOperationRequest) returns (Operation)

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

نطاقات الأذونات

يتطلب هذا الإعداد أحد نطاقات OAuth التالية:

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

لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة حول المصادقة.

طلب إلغاء العملية

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

الحقول
name

string

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

طلب حذف عملية

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

الحقول
name

string

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

طلب الحصول على العملية

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

الحقول
name

string

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

طلب عمليات القائمة

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

الحقول
name

string

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

filter

string

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

page_size

int32

تمثّل هذه السمة حجم صفحة القائمة العادي.

page_token

string

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

استجابة عمليات القائمة

رسالة الردّ على 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.

طلب إتمام عملية سريعة

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

الحقول
name

string

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

timeout

Duration

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