Google API Core Client - Class OperationResponse (1.36.0)

Reference documentation and code samples for the Google API Core Client class OperationResponse.

Response object from a long running API method.

The OperationResponse object is returned by API methods that perform a long running operation. It provides methods that can be used to poll the status of the operation, retrieve the results, and cancel the operation.

To support a long running operation, the server must implement the Operations API, which is used by the OperationResponse object. If more control is required, it is possible to make calls against the Operations API directly instead of via the OperationResponse object using an Operations Client instance.

Namespace

Google \ ApiCore

Methods

__construct

OperationResponse constructor.

Parameters
Name Description
operationName string
operationsClient object
options array

Optional. Options for configuring the operation response object.

↳ operationReturnType string

The return type of the longrunning operation.

↳ metadataReturnType string

The type of the metadata returned in the operation response.

↳ initialPollDelayMillis int

The initial polling interval to use, in milliseconds.

↳ pollDelayMultiplier int

Multiplier applied to the polling interval on each retry.

↳ maxPollDelayMillis int

The maximum polling interval to use, in milliseconds.

↳ totalPollTimeoutMillis int

The maximum amount of time to continue polling.

↳ lastProtoResponse object

A response already received from the server.

↳ getOperationMethod string

The method on $operationsClient to get the operation.

↳ cancelOperationMethod string

The method on $operationsClient to cancel the operation.

↳ deleteOperationMethod string

The method on $operationsClient to delete the operation.

↳ operationStatusMethod string

The method on the operation to get the status.

↳ operationStatusDoneValue string

The method on the operation to determine if the status is done.

↳ additionalOperationArguments array

Additional arguments to pass to $operationsClient methods.

↳ operationErrorCodeMethod string

The method on the operation to get the error code

↳ operationErrorMessageMethod string

The method on the operation to get the error status

isDone

Check whether the operation has completed.

Returns
Type Description
bool

operationSucceeded

Check whether the operation completed successfully. If the operation is not complete, or if the operation failed, return false.

Returns
Type Description
bool

operationFailed

Check whether the operation failed. If the operation is not complete, or if the operation succeeded, return false.

Returns
Type Description
bool

getName

Get the formatted name of the operation

Returns
Type Description
string The formatted name of the operation

pollUntilComplete

Poll the server in a loop until the operation is complete.

Return true if the operation completed, otherwise return false. If the $options['totalPollTimeoutMillis'] setting is not set (or set <= 0) then pollUntilComplete will continue polling until the operation completes, and therefore will always return true.

Parameters
Name Description
options array

Options for configuring the polling behaviour.

↳ initialPollDelayMillis int

The initial polling interval to use, in milliseconds.

↳ pollDelayMultiplier int

Multiplier applied to the polling interval on each retry.

↳ maxPollDelayMillis int

The maximum polling interval to use, in milliseconds.

↳ totalPollTimeoutMillis int

The maximum amount of time to continue polling, in milliseconds.

Returns
Type Description
bool Indicates if the operation completed.

reload

Reload the status of the operation with a request to the service.

getResult

Return the result of the operation. If operationSucceeded() is false, return null.

Returns
Type Description
mixed|null The result of the operation, or null if operationSucceeded() is false

getError

If the operation failed, return the status. If operationFailed() is false, return null.

Returns
Type Description
Google\Rpc\Status|null The status of the operation in case of failure, or null if operationFailed() is false.

getDescriptorOptions

Get an array containing the values of 'operationReturnType', 'metadataReturnType', and the polling options initialPollDelayMillis, pollDelayMultiplier, maxPollDelayMillis, and totalPollTimeoutMillis. The array can be passed as the $options argument to the constructor when creating another OperationResponse object.

Returns
Type Description
array

getLastProtoResponse

Returns
Type Description
Google\LongRunning\Operation|mixed|null The last Operation object received from the server.

getOperationsClient

Returns
Type Description
object The OperationsClient object used to make requests to the operations API.

cancel

Cancel the long-running operation.

For operations of type Google\LongRunning\Operation, this method starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it will throw an ApiException with code \Google\Rpc\Code::UNIMPLEMENTED. Clients can continue to use reload and pollUntilComplete methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with a getError() value with a \Google\Rpc\Status code of 1, corresponding to \Google\Rpc\Code::CANCELLED.

delete

Delete the long-running operation.

For operations of type Google\LongRunning\Operation, this method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it will throw an ApiException with code \Google\Rpc\Code::UNIMPLEMENTED.

getMetadata

Get the metadata returned with the last proto response. If a metadata type was provided, then the return value will be of that type - otherwise, the return value will be of type Any. If no metadata object is available, returns null.

Returns
Type Description
mixed The metadata returned from the server in the last response.

Constants

DEFAULT_POLLING_INTERVAL

Value: 1000

DEFAULT_POLLING_MULTIPLIER

Value: 2

DEFAULT_MAX_POLLING_INTERVAL

Value: 60000

DEFAULT_MAX_POLLING_DURATION

Value: 0