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 \ ApiCoreMethods
__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