Package google.longrunning

Índice

Operaciones

Administra las operaciones de larga duración con un servicio de API.

Cuando un método de API tarda mucho tiempo en completarse, se puede diseñar para que devuelva Operation al cliente. El cliente puede usar esta interfaz para recibir la respuesta real de forma asíncrona sondeando el recurso de operación o pasar el recurso de operación a otra API (como la API Pub/Sub) para recibir la respuesta. Cualquier servicio de API que devuelva operaciones de larga duración debe implementar la interfaz Operations para que los desarrolladores puedan disfrutar de una experiencia de cliente coherente.

CancelOperation

rpc CancelOperation(CancelOperationRequest) returns (Empty)

Inicia la cancelación asíncrona en una operación de larga duración. El servidor hace todo lo que puede para cancelar la operación, pero no se puede garantizar nada. Si el servidor no admite este método, devuelve google.rpc.Code.UNIMPLEMENTED. Los clientes pueden usar Operations.GetOperation u otros métodos para comprobar si la cancelación se ha realizado correctamente o si la operación se ha completado a pesar de la cancelación. Si la cancelación se realiza correctamente, la operación no se elimina, sino que se convierte en una operación con el valor Operation.error y el valor google.rpc.Status.code de 1, que corresponde a Code.CANCELLED.

Permisos de autorización

Requiere el siguiente permiso de OAuth:

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

Para obtener más información, consulta el Authentication Overview.

DeleteOperation

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

Elimina una operación de larga duración. Con este método se indica que el cliente ya no está interesado en el resultado de la operación. No se cancela la operación. Si el servidor no admite este método, devuelve google.rpc.Code.UNIMPLEMENTED.

Permisos de autorización

Requiere el siguiente permiso de OAuth:

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

Para obtener más información, consulta el Authentication Overview.

GetOperation

rpc GetOperation(GetOperationRequest) returns (Operation)

Obtiene el estado más reciente de una operación de larga duración. Los clientes pueden usar este método para sondear el resultado de la operación a intervalos recomendados por el servicio de API.

Permisos de autorización

Requiere el siguiente permiso de OAuth:

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

Para obtener más información, consulta el Authentication Overview.

ListOperations

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

Enumera las operaciones que coinciden con el filtro especificado en la petición. Si el servidor no admite este método, devuelve UNIMPLEMENTED.

Permisos de autorización

Requiere el siguiente permiso de OAuth:

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

Para obtener más información, consulta el Authentication Overview.

WaitOperation

rpc WaitOperation(WaitOperationRequest) returns (Operation)

Espera hasta que se complete la operación de larga duración especificada o hasta que se alcance un tiempo de espera máximo especificado. Devuelve el estado más reciente. Si la operación ya se ha completado, se devuelve inmediatamente el estado más reciente. Si el tiempo de espera especificado es superior al tiempo de espera predeterminado de HTTP/RPC, se usará el tiempo de espera de HTTP/RPC. Si el servidor no admite este método, devuelve google.rpc.Code.UNIMPLEMENTED. Ten en cuenta que este método se aplica en la medida de lo posible. Puede devolver el estado más reciente antes del tiempo de espera especificado (incluso inmediatamente), lo que significa que, aunque la respuesta sea inmediata, no se garantiza que la operación se haya completado.

Permisos de autorización

Requiere el siguiente permiso de OAuth:

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

Para obtener más información, consulta el Authentication Overview.

CancelOperationRequest

El mensaje de solicitud de Operations.CancelOperation.

Campos
name

string

El nombre del recurso de operación que se va a cancelar.

DeleteOperationRequest

El mensaje de solicitud de Operations.DeleteOperation.

Campos
name

string

El nombre del recurso de operación que se va a eliminar.

GetOperationRequest

El mensaje de solicitud de Operations.GetOperation.

Campos
name

string

El nombre del recurso de operación.

ListOperationsRequest

El mensaje de solicitud de Operations.ListOperations.

Campos
name

string

El nombre del recurso principal de la operación.

filter

string

El filtro de lista estándar.

page_size

int32

El tamaño de página de la lista estándar.

page_token

string

El token de la página de lista estándar.

return_partial_success

bool

Si se define como true, las operaciones a las que se puede acceder se devuelven con normalidad y las que no se pueden alcanzar se devuelven en el campo [ListOperationsResponse.unreachable].

Solo puede ser true cuando se lee en varias colecciones, por ejemplo, cuando parent tiene el valor "projects/example/locations/-".

Este campo no se admite de forma predeterminada y generará un error UNIMPLEMENTED si se define, a menos que se indique lo contrario en la documentación específica del servicio o del producto.

ListOperationsResponse

Mensaje de respuesta de Operations.ListOperations.

Campos
operations[]

Operation

Una lista de operaciones que coincide con el filtro especificado en la petición.

next_page_token

string

El token de la lista siguiente de la lista.

unreachable[]

string

Lista desordenada. Recursos inaccesibles. Se rellena cuando la solicitud define ListOperationsRequest.return_partial_success y lee en varias colecciones, por ejemplo, al intentar enumerar todos los recursos de todas las ubicaciones admitidas.

Operación

Este recurso representa una operación de larga duración que es el resultado de una llamada a la API de red.

Campos
name

string

El nombre asignado por el servidor, que solo es exclusivo dentro del mismo servicio que lo devuelve originalmente. Si usas la asignación HTTP predeterminada, name debe ser un nombre de recurso que termine en operations/{unique_id}.

metadata

Any

Metadatos específicos del servicio asociados con la operación. Por lo general, contienen información de progreso y metadatos comunes, como la hora de creación. Es posible que algunos servicios no proporcionen dichos metadatos. Cualquier método que devuelva una operación de larga duración debe documentar el tipo de metadatos, si corresponde.

done

bool

Si el valor es false, significa que la operación sigue en curso. Si es true, la operación está completada y estará disponible un valor error o response.

Campo de unión result. El resultado de la operación, que puede ser un error o una response válida. Si done == false, no se ha definido ni error ni response. Si done == true, se puede definir exactamente uno de los valores error o response. Es posible que algunos servicios no proporcionen el resultado. result solo puede ser una de estas dos opciones:
error

Status

El resultado del error de la operación en caso de fallo o cancelación.

response

Any

La respuesta normal y correcta de la operación. Si el método original no devuelve datos cuando se completa correctamente, como Delete, la respuesta es google.protobuf.Empty. Si el método original es el estándar Get/Create/Update, la respuesta debería ser el recurso. En el caso de otros métodos, la respuesta debe tener el tipo XxxResponse, donde Xxx es el nombre del método original. Por ejemplo, si el nombre del método original es TakeSnapshot(), el tipo de respuesta inferido es TakeSnapshotResponse.

WaitOperationRequest

El mensaje de solicitud de Operations.WaitOperation.

Campos
name

string

Nombre del recurso de operación que se va a esperar.

timeout

Duration

Duración máxima de espera antes de que se agote el tiempo de espera. Si se deja en blanco, la espera será como máximo el tiempo permitido por el protocolo HTTP/RPC subyacente. Si también se especifica el plazo del contexto de RPC, se usará el más corto.