Package google.longrunning

Dizin

İşlemler

API hizmetiyle uzun süreli işlemleri yönetir.

Bir API yönteminin tamamlanması normalde uzun zaman aldığında, istemciye Operation döndürecek şekilde tasarlanabilir. İstemci, gerçek yanıtı almak için bu arayüzü kullanarak işlem kaynağını anketleyerek veya işlem kaynağını başka bir API'ye (ör. Pub/Sub API) aktararak yanıt alabilir. Uzun süren işlemler döndüren tüm API hizmetleri, geliştiricilerin tutarlı bir istemci deneyimi yaşayabilmesi için Operations arayüzünü uygulamalıdır.

CancelOperation

rpc CancelOperation(CancelOperationRequest) returns (Empty)

Uzun süren bir işlemde eşzamansız iptal işlemini başlatır. Sunucu, işlemi iptal etmek için elinden geleni yapar ancak işlemin iptal edileceği garanti edilmez. Sunucu bu yöntemi desteklemiyorsa google.rpc.Code.UNIMPLEMENTED döndürülür. İstemciler, iptal işleminin başarılı olup olmadığını veya iptal işlemine rağmen işlemin tamamlanıp tamamlanmadığını kontrol etmek için Operations.GetOperation'ü veya başka yöntemler kullanabilir. İptal işlemi başarılı olduğunda işlem silinmez. Bunun yerine, Code.CANCELLED değerine karşılık gelen 1 google.rpc.Status.code değerine sahip bir Operation.error değeri olan bir işlem olur.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamını gerektirir:

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

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

Uzun süreli bir işlemi siler. Bu yöntem, istemcinin artık işlem sonucuyla ilgilenmediğini gösterir. İşlemi iptal etmez. Sunucu bu yöntemi desteklemiyorsa google.rpc.Code.UNIMPLEMENTED döndürülür.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamını gerektirir:

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

rpc GetOperation(GetOperationRequest) returns (Operation)

Uzun süren bir işlemin son durumunu alır. İstemciler, API hizmeti tarafından önerilen aralıklarla işlem sonucunu yoklamak için bu yöntemi kullanabilir.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamını gerektirir:

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

name kaynağında aşağıdaki IAM izni gerekir:

  • routeoptimization.operations.get

Daha fazla bilgi için IAM belgelerini inceleyin.

ListOperations

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

İstekteki belirtilen filtreyle eşleşen işlemleri listeler. Sunucu bu yöntemi desteklemiyorsa UNIMPLEMENTED döndürülür.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamını gerektirir:

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

rpc WaitOperation(WaitOperationRequest) returns (Operation)

Belirtilen uzun süreli işlemin tamamlanmasını veya en fazla belirtilen zaman aşımına ulaşmasını bekleyip en son durumu döndürür. İşlem zaten tamamlandıysa en son durum hemen döndürülür. Belirtilen zaman aşımı, varsayılan HTTP/RPC zaman aşımından uzunsa HTTP/RPC zaman aşımı kullanılır. Sunucu bu yöntemi desteklemiyorsa google.rpc.Code.UNIMPLEMENTED döndürülür. Bu yöntemin en iyi girişim temel alınarak uygulandığını unutmayın. Belirtilen zaman aşımından önce (hemen yanıt dahil) son durumu döndürebilir. Yani anında yanıt bile işlemin tamamlandığını garanti etmez.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamını gerektirir:

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

CancelOperationRequest

Operations.CancelOperation için istek mesajı.

Alanlar
name

string

İptal edilecek işlem kaynağının adı.

DeleteOperationRequest

Operations.DeleteOperation için istek mesajı.

Alanlar
name

string

Silinecek işlem kaynağının adı.

GetOperationRequest

Operations.GetOperation için istek mesajı.

Alanlar
name

string

İşlem kaynağının adı.

ListOperationsRequest

Operations.ListOperations için istek mesajı.

Alanlar
name

string

İşlemin üst kaynağının adı.

filter

string

Standart liste filtresi.

page_size

int32

Standart liste sayfası boyutu.

page_token

string

Standart liste sayfası jetonu.

ListOperationsResponse

Operations.ListOperations için yanıt mesajı.

Alanlar
operations[]

Operation

İstekteki belirtilen filtreyle eşleşen işlemlerin listesi.

next_page_token

string

Standart liste sonraki sayfa jetonu.

İşlem

Bu kaynak, bir ağ API çağrısının sonucu olan uzun süreli bir işlemi temsil eder.

Alanlar
name

string

Sunucu tarafından atanan ad. Yalnızca ilk olarak döndürüldüğü hizmet içinde benzersizdir. Varsayılan HTTP eşlemesini kullanıyorsanız name, operations/{unique_id} ile biten bir kaynak adı olmalıdır.

metadata

Any

İşlemle ilişkili hizmete özgü meta veriler. Genellikle ilerleme bilgileri ve oluşturma zamanı gibi yaygın meta veriler içerir. Bazı hizmetler bu tür meta veriler sağlamayabilir. Uzun süren bir işlem döndüren tüm yöntemler, varsa meta veri türünü belgelemelidir.

done

bool

Değer false ise işlem hâlâ devam ediyor demektir. true ise işlem tamamlanmıştır ve error veya response kullanılabilir.

Birlik alanı result. İşlem sonucu. error veya geçerli bir response olabilir. done == false ise error veya response ayarlanmamıştır. done == true ise error veya response'ten tam olarak biri ayarlanabilir. Bazı hizmetler sonuç vermeyebilir. result yalnızca aşağıdakilerden biri olabilir:
error

Status

Başarısızlık veya iptal durumunda işlemin hata sonucu.

response

Any

İşlemin normal, başarılı yanıtı. Asıl yöntem, başarı durumunda veri döndürmezse (ör. Delete) yanıt google.protobuf.Empty olur. Orijinal yöntem standart Get/Create/Update ise yanıt kaynak olmalıdır. Diğer yöntemler için yanıtın türü XxxResponse olmalıdır. Burada Xxx, orijinal yöntem adıdır. Örneğin, orijinal yöntem adı TakeSnapshot() ise türetilen yanıt türü TakeSnapshotResponse olur.

WaitOperationRequest

Operations.WaitOperation için istek mesajı.

Alanlar
name

string

Beklemesi gereken işlem kaynağının adı.

timeout

Duration

Zaman aşımı süresi dolmadan önce beklenecek maksimum süre. Boş bırakılırsa bekleme süresi, temel HTTP/RPC protokolünün izin verdiği maksimum süre kadar olur. RPC bağlamı son tarihi de belirtilmişse daha kısa olan son tarih kullanılır.