Package google.longrunning

Indice

Suite operativa

Gestisce le operazioni a lunga esecuzione con un servizio API.

Quando un metodo API richiede di solito molto tempo, può essere progettato in modo che restituisca Operation al client, il quale può utilizzare questa interfaccia per ricevere la risposta reale in modo asincrono eseguendo il polling della risorsa dell'operazione o passare la risorsa dell'operazione a un'altra API (ad esempio l'API Pub/Sub) per ricevere la risposta. Qualsiasi servizio API che restituisce operazioni a lunga esecuzione deve implementare l'interfaccia Operations in modo che gli sviluppatori possano avere un'esperienza client coerente.

CancelOperation

rpc CancelOperation(CancelOperationRequest) returns (Empty)

Avvia l'annullamento asincrono in un'operazione a lunga esecuzione. Il server fa del possibile per annullare l'operazione, ma il successo non è garantito. Se il server non supporta questo metodo, restituisce google.rpc.Code.UNIMPLEMENTED. I client possono utilizzare Operations.GetOperation o altri metodi per verificare se l'annullamento è riuscito o se l'operazione è stata completata nonostante l'annullamento. Se l'annullamento viene eseguito correttamente, l'operazione non viene eliminata, ma diventa un'operazione con un valore Operation.error con google.rpc.Status.code pari a 1, corrispondente a Code.CANCELLED.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

Elimina un'operazione a lunga esecuzione. Questo metodo indica che il cliente non è più interessato al risultato dell'operazione. L'operazione non viene annullata. Se il server non supporta questo metodo, restituisce google.rpc.Code.UNIMPLEMENTED.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

rpc GetOperation(GetOperationRequest) returns (Operation)

Recupera lo stato più recente di un'operazione a lunga esecuzione. I client possono utilizzare questo metodo per eseguire il polling del risultato dell'operazione a intervalli, come consigliato dal servizio API.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

Elenca le operazioni che corrispondono al filtro specificato nella richiesta. Se il server non supporta questo metodo, restituisce UNIMPLEMENTED.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

rpc WaitOperation(WaitOperationRequest) returns (Operation)

Attende il completamento dell'operazione a lunga esecuzione specificata o non raggiunge al massimo un timeout specificato, restituendo lo stato più recente. Se l'operazione è già stata eseguita, viene restituito immediatamente lo stato più recente. Se il timeout specificato è maggiore del timeout HTTP/RPC predefinito, viene utilizzato il timeout HTTP/RPC. Se il server non supporta questo metodo, restituisce google.rpc.Code.UNIMPLEMENTED. Tieni presente che questo metodo si basa sul criterio del "best effort". Potrebbe restituire lo stato più recente prima del timeout specificato (anche immediatamente), il che significa che anche una risposta immediata non garantisce che l'operazione venga completata.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

CancelOperationRequest

Il messaggio di richiesta per Operations.CancelOperation.

Campi
name

string

Il nome della risorsa dell'operazione da annullare.

DeleteOperationRequest

Il messaggio di richiesta per Operations.DeleteOperation.

Campi
name

string

Il nome della risorsa dell'operazione da eliminare.

GetOperationRequest

Il messaggio di richiesta per Operations.GetOperation.

Campi
name

string

Il nome della risorsa dell'operazione.

ListOperationsRequest

Il messaggio di richiesta per Operations.ListOperations.

Campi
name

string

Il nome della risorsa padre dell'operazione.

filter

string

Il filtro dell'elenco standard.

page_size

int32

Le dimensioni standard della pagina dell'elenco.

page_token

string

Il token della pagina elenco standard.

ListOperationsResponse

Il messaggio di risposta per Operations.ListOperations.

Campi
operations[]

Operation

Un elenco di operazioni che corrispondono al filtro specificato nella richiesta.

next_page_token

string

Il token standard della pagina successiva dell'elenco.

Operazione

Questa risorsa rappresenta un'operazione a lunga esecuzione che è il risultato di una chiamata API di rete.

Campi
name

string

Il nome assegnato dal server, univoco solo all'interno dello stesso servizio che lo restituisce in origine. Se utilizzi il mapping HTTP predefinito, name deve essere un nome di risorsa che termina con operations/{unique_id}.

metadata

Any

Metadati specifici del servizio associati all'operazione. In genere contiene informazioni sull'avanzamento e metadati comuni come l'ora di creazione. Alcuni servizi potrebbero non fornire questi metadati. Qualsiasi metodo che restituisce un'operazione a lunga esecuzione deve documentare l'eventuale tipo di metadati.

done

bool

Se il valore è false, significa che l'operazione è ancora in corso. Se true, l'operazione viene completata ed è disponibile error o response.

Campo di unione result. Il risultato dell'operazione, che può essere un error o un response valido. Se done == false, non viene impostato né errorresponse. Se done == true, è possibile impostare esattamente un valore tra error o response. Alcuni servizi potrebbero non fornire il risultato. result può essere solo uno dei seguenti:
error

Status

L'errore risultante dall'operazione in caso di errore o annullamento.

response

Any

La risposta normale e riuscita dell'operazione. Se il metodo originale non restituisce dati in caso di esito positivo, come Delete, la risposta è google.protobuf.Empty. Se il metodo originale è Get/Create/Update standard, la risposta dovrebbe essere la risorsa. Per altri metodi, la risposta dovrebbe avere il tipo XxxResponse, dove Xxx è il nome del metodo originale. Ad esempio, se il nome del metodo originale è TakeSnapshot(), il tipo di risposta dedotto è TakeSnapshotResponse.

WaitOperationRequest

Il messaggio di richiesta per Operations.WaitOperation.

Campi
name

string

Il nome della risorsa dell'operazione su cui attendere.

timeout

Duration

La durata massima di attesa prima del timeout. Se non lo specifichi, l'attesa sarà al massimo il tempo consentito dal protocollo HTTP/RPC sottostante. Se viene specificata anche la scadenza del contesto RPC, verrà utilizzata quella più breve.