Operation

Cette ressource représente une opération de longue durée qui est le résultat d'un appel d'API réseau.

Représentation JSON
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // Union field result can be only one of the following:
  "error": {
    object(Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // End of list of possible types for union field result.
}
Des champs
name

string

Le nom attribué par le serveur, qui n'est unique que dans le service qui le renvoie à l'origine. Si vous utilisez le mappage par défaut HTTP, le name doit avoir le format des operations/some/unique/name .

metadata

object

Métadonnées spécifiques au service associées à l'opération. Il contient généralement des informations sur la progression et des métadonnées communes telles que l'heure de création. Certains services peuvent ne pas fournir de telles métadonnées. Toute méthode qui renvoie une opération de longue durée doit documenter le type de métadonnées, le cas échéant.

Un objet contenant des champs de type arbitraire. Un champ supplémentaire "@type" contient un URI identifiant le type. Exemple: { "id": 1234, "@type": "types.example.com/standard/id" } .

done

boolean

Si la valeur est false , cela signifie que l'opération est toujours en cours. Si true , l'opération est terminée, et soit une error ou une response est disponible.

Union champ result . Le résultat de l' opération, qui peut être soit une error ou une valide response . Si done == false , ni error , ni response est réglée. Si done == true , exactement une error ou une response est réglée. result ne peut être que l' un des éléments suivants:
error

object( Status )

L'erreur résultant de l'opération en cas d'échec ou d'annulation.

response

object

La réponse normale de l'opération en cas de succès. Si la méthode originale ne renvoie aucune donnée sur le succès, telles que Delete , la réponse est google.protobuf.Empty . Si la méthode originale est standard Get / Create / Update à Update , la réponse devrait être la ressource. Pour les autres méthodes, la réponse doit avoir le type XxxResponse , où Xxx est le nom de la méthode originale. Par exemple, si le nom de la méthode originale est TakeSnapshot() , le type de réponse est inférée TakeSnapshotResponse .

Un objet contenant des champs de type arbitraire. Un champ supplémentaire "@type" contient un URI identifiant le type. Exemple: { "id": 1234, "@type": "types.example.com/standard/id" } .