Package google.longrunning

Dizin

İşlemler

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

Normalde bir API yönteminin tamamlanması uzun sürdüğünde, istemciye Operation döndürecek şekilde tasarlanabilir. İstemci, işlem kaynağını yoklayarak gerçek yanıtı eşzamansız olarak almak için bu arayüzü kullanabilir veya yanıtı almak üzere işlem kaynağını başka bir API'ye (ör. Pub/Sub API) iletebilir. 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 başlatır. Sunucu, işlemi iptal etmek için elinden geleni yapar ancak başarı garanti edilmez. Sunucu bu yöntemi desteklemiyorsa google.rpc.Code.UNIMPLEMENTED döndürür. İstemciler, iptalin başarılı olup olmadığını veya iptale rağmen işlemin tamamlanıp tamamlanmadığını kontrol etmek için Operations.GetOperation ya da başka yöntemler kullanabilir. Başarılı iptal işleminden sonra işlem silinmez. Bunun yerine, Operation.error değeri google.rpc.Status.code olan bir işleme dönüşür. Bu değer, Code.CANCELLED ile eşleşir.

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. İşlem iptal edilmez. Sunucu bu yöntemi desteklemiyorsa google.rpc.Code.UNIMPLEMENTED döndürü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 en son durumunu alır. İstemciler, bu yöntemi kullanarak API hizmetinin önerdiği aralıklarla işlem sonucunu yoklayabilir.

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 iznini gerektirir:

  • routeoptimization.operations.get

Daha fazla bilgi için IAM belgelerini inceleyin.

ListOperations

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

İstekte belirtilen filtreyle eşleşen işlemleri listeler. Sunucu bu yöntemi desteklemiyorsa UNIMPLEMENTED döndürü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şlem tamamlanana veya en fazla belirtilen zaman aşımı süresine ulaşana kadar bekler ve en son durumu döndürür. İşlem zaten yapılmışsa en son durum hemen döndürülür. Belirtilen zaman aşımı, varsayılan HTTP/RPC zaman aşımından büyükse HTTP/RPC zaman aşımı kullanılır. Sunucu bu yöntemi desteklemiyorsa google.rpc.Code.UNIMPLEMENTED döndürür. Bu yöntemin en iyi girişim temel alınarak uygulandığını unutmayın. Belirtilen zaman aşımından önce (hemen dahil) en son durumu döndürebilir. Bu nedenle, anında yanıt verilmesi 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 sayfa boyutu.

page_token

string

Standart liste sayfası jetonu.

ListOperationsResponse

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

Alanlar
operations[]

Operation

İstekte 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. Bu ad, yalnızca başlangıçta döndüren aynı 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 ortak meta veriler içerir. Bazı hizmetler bu tür meta verileri 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şlemin devam ettiği anlamına gelir. true ise işlem tamamlanır ve error veya response kullanılabilir.

Birleştirme alanı result. İşlem sonucu. error veya geçerli bir response olabilir. done == false ise ne error ne de response ayarlanır. done == true ise error veya response'den yalnızca 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 ve başarılı yanıtı. Orijinal yöntem başarıyla tamamlandığında veri döndürmüyorsa (ö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ıtta XxxResponse türü olmalıdır. Burada Xxx, orijinal yöntem adıdır. Örneğin, orijinal yöntem adı TakeSnapshot() ise çıkarılan yanıt türü TakeSnapshotResponse olur.

WaitOperationRequest

Operations.WaitOperation için istek mesajı.

Alanlar
name

string

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

timeout

Duration

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