Package google.longrunning

Dizin

İşlemler

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

Bir API yönteminin tamamlanması normalde uzun sürüyorsa istemciye Operation değerini döndürecek şekilde tasarlanabilir. Bu durumda istemci, işlem kaynağını yoklayarak gerçek yanıtı eşzamansız olarak almak için bu arayüzü kullanabilir veya işlem kaynağını başka bir API'ye (Pub/Sub API gibi) ileterek 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üreli bir işlemde eşzamansız iptali başlatır. Sunucu, işlemi iptal etmek için elinden gelenin en iyisini yapar, ancak işlemin başarılı olacağı 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. Başarılı iptal durumunda işlem silinmez. Bunun yerine, Code.CANCELLED öğesine karşılık gelen google.rpc.Status.code 1 olan Operation.error değerine sahip bir işlem haline gelir.

Yetkilendirme kapsamları

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

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

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

Uzun süren 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 değerini 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 son durumunu alır. İstemciler, işlem sonucunu API hizmeti tarafından önerilen aralıklarla 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 iznini gerektirir:

  • 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şlem tamamlanıncaya veya en fazla belirtilen bir zaman aşımına ulaşana kadar bekler ve 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 değerini döndürür. Bu yöntemin en iyi girişim temel alınarak uygulandığını unutmayın. En son durumu, belirtilen zaman aşımından (hemen dahil) önce döndürebilir. Yani anında yanıt vermeniz bile işlemin tamamlanacağı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

İ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 atanmış ad. Bu ad, yalnızca onu ilk döndüren 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 durumu bilgilerini ve oluşturulma zamanı gibi ortak meta verileri içerir. Bazı hizmetler bu tür meta veriler sağlamayabilir. Uzun süreli bir işlem döndüren tüm yöntemler, meta veri türünü (varsa) belgelemelidir.

done

bool

Değer false ise işlemin devam ettiği anlamına gelir. true ise işlem tamamlanır ve error ya da response kullanılabilir.

Birleştirme 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 sonucu sağlamayabilir. result şunlardan yalnızca 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ı. Orijinal yöntem başarıyla ilgili hiçbir veri (ör. Delete) döndürmezse 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 XxxResponse türünde olmalıdır. Burada Xxx, orijinal yöntem adıdır. Örneğin, orijinal yöntemin adı TakeSnapshot() ise tahmin edilen 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üresinden ö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.