Package google.longrunning

Indeks

Operacje

Zarządza długo trwającymi operacjami za pomocą usługi interfejsu API.

Jeśli wykonanie metody interfejsu API zazwyczaj trwa długo, można ją tak skonfigurować, aby zwracała kod Operation do klienta, a klient może użyć tego interfejsu do asynchronicznego odpytywania zasobu operacji lub przekazać go do innego interfejsu API (takiego jak interfejs Pub/Sub API) w celu otrzymania odpowiedzi. W przypadku każdej usługi API, która zwraca długotrwałe operacje, należy wdrożyć interfejs Operations, aby deweloperzy mogli korzystać ze spójnego interfejsu klienta.

Anuluj operację

rpc CancelOperation(CancelOperationRequest) returns (Empty)

Rozpoczyna anulowanie asynchronicznej długo trwającej operacji. Serwer stara się anulować operację, ale nie jest to gwarantowane. Jeśli serwer nie obsługuje tej metody, zwraca wartość google.rpc.Code.UNIMPLEMENTED. Klienty mogą użyć Operations.GetOperation lub innych metod, aby sprawdzić, czy anulowanie się powiodło lub czy operacja została zakończona pomimo anulowania. Po pomyślnym anulowaniu operacja nie jest usuwana. Zamiast tego staje się operacją o wartości Operation.error o wartości google.rpc.Status.code równej 1, co odpowiada wartości Code.CANCELLED.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

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

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Operacja usuwania

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

Usuwa długo trwającą operację. Ta metoda wskazuje, że klient nie jest już zainteresowany wynikiem operacji. Nie anuluje to operacji. Jeśli serwer nie obsługuje tej metody, zwraca wartość google.rpc.Code.UNIMPLEMENTED.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

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

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Pobieranie operacji

rpc GetOperation(GetOperationRequest) returns (Operation)

Pobiera najnowszy stan długo trwającej operacji. Klienci mogą używać tej metody do sondowania wyniku operacji w odstępach czasowych zgodnie z zaleceniami usługi API.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

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

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Wyświetlanie listy operacji

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

Wyświetla listę operacji, które pasują do określonego filtra w żądaniu. Jeśli serwer nie obsługuje tej metody, zwraca wartość UNIMPLEMENTED.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

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

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Operacja oczekiwania

rpc WaitOperation(WaitOperationRequest) returns (Operation)

Czekam, aż określona długo trwająca operacja zostanie wykonana lub osiągnie określony czas oczekiwania, zwracając najnowszy stan. Jeśli operacja została już wykonana, natychmiast zwracany jest najnowszy stan. Jeśli określony czas oczekiwania jest dłuższy niż domyślny limit czasu HTTP/RPC, używany jest limit czasu HTTP/RPC. Jeśli serwer nie obsługuje tej metody, zwraca wartość google.rpc.Code.UNIMPLEMENTED. Pamiętaj, że ta metoda działa zgodnie z zasadą możliwie najlepszej obsługi. Może zwrócić ostatni stan przed określonym czasem oczekiwania (w tym natychmiast), co oznacza, że nawet natychmiastowa odpowiedź nie daje gwarancji, że operacja zostanie wykonana.

Zakresy autoryzacji

Wymaga jednego z tych zakresów protokołu OAuth:

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

Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).

Anuluj żądanie operacji

Wiadomość z prośbą o Operations.CancelOperation.

Pola
name

string

Nazwa zasobu operacji, który ma zostać anulowany.

Żądanie usunięcia operacji

Wiadomość z prośbą o Operations.DeleteOperation.

Pola
name

string

Nazwa zasobu operacji, który ma zostać usunięty.

GetOperationRequest

Wiadomość z prośbą o Operations.GetOperation.

Pola
name

string

Nazwa zasobu operacji.

Wyświetlanie listy operacji

Wiadomość z prośbą o Operations.ListOperations.

Pola
name

string

Nazwa zasobu nadrzędnego operacji.

filter

string

Standardowy filtr listy.

page_size

int32

Standardowy rozmiar strony listy.

page_token

string

Standardowy token strony z listą.

Wyświetlanie listy operacji

Wiadomość z odpowiedzią dla: Operations.ListOperations.

Pola
operations[]

Operation

Lista operacji, które pasują do określonego filtra w żądaniu.

next_page_token

string

Standardowy token listy następnej strony.

Operacja

Ten zasób reprezentuje długotrwałą operację, która jest wynikiem wywołania sieciowego interfejsu API.

Pola
name

string

Nazwa przypisana przez serwer, która jest unikalna tylko w obrębie tej samej usługi, która pierwotnie została zwrócona. Jeśli używasz domyślnego mapowania HTTP, pole name powinno być nazwą zasobu kończącą się na operations/{unique_id}.

metadata

Any

Metadane specyficzne dla usługi powiązane z operacją. Zwykle zawiera on informacje o postępach i typowe metadane, takie jak czas utworzenia. Niektóre usługi mogą nie udostępniać takich metadanych. Każda metoda, która zwraca długo trwającą operację, powinna udokumentować typ metadanych, jeśli taki istnieje.

done

bool

Jeśli wartość to false, oznacza to, że operacja jest nadal w toku. Jeśli true, operacja jest ukończona i dostępna jest wartość error lub response.

Pole sumy result. Wynik operacji, którym może być error lub prawidłowy response. Jeśli done == false, nie ustawiono error ani response. Jeśli done == true, można ustawić dokładnie jedną z tych wartości: error lub response. Niektóre usługi mogą nie dawać oczekiwanych rezultatów. result może mieć tylko jedną z tych wartości:
error

Status

Wynik błędu operacji w przypadku niepowodzenia lub anulowania.

response

Any

Normalna, udana odpowiedź operacji. Jeśli pierwotna metoda nie zwróci żadnych danych o powodzeniu, np. Delete, odpowiedź będzie miała postać google.protobuf.Empty. Jeśli pierwotna metoda to standardowa metoda Get/Create/Update, odpowiedzią powinna być zasób. W przypadku innych metod odpowiedź powinna mieć typ XxxResponse, gdzie Xxx to pierwotna nazwa metody. Jeśli na przykład pierwotna nazwa metody to TakeSnapshot(), typ odpowiedzi to TakeSnapshotResponse.

Żądanie operacji oczekiwania

Wiadomość z prośbą o Operations.WaitOperation.

Pola
name

string

Nazwa zasobu operacji, na który zostanie nałożony oczekiwanie.

timeout

Duration

Maksymalny czas oczekiwania przed przekroczeniem limitu czasu. Jeśli pozostawisz to pole puste, oczekiwanie będzie trwać najwyżej dozwolony przez bazowy protokół HTTP/RPC. Jeśli określony jest również termin kontekstu RPC, zostanie użyty krótszy termin.