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.
Constants |
public Google |
public Google |
public Google |
public Google |
Methods |
public __construct(string $operationName, $operationsClient, array $options = []) OperationResponse constructor.
|
public 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.
|
public 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.
|
public getDescriptorOptions() Get an array containing the values of 'operationReturnType', 'metadataReturnType', and
the polling options
|
public getError() If the operation failed, return the status. If operationFailed() is false, return null.
|
public getLastProtoResponse()
|
public 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.
|
public getName() Get the formatted name of the operation
|
public getOperationsClient()
|
public getResult() Return the result of the operation. If operationSucceeded() is false, return null.
|
public isDone() Check whether the operation has completed.
|
public operationFailed() Check whether the operation failed. If the operation is not complete, or if the operation succeeded, return false.
|
public operationSucceeded() Check whether the operation completed successfully. If the operation is not complete, or if the operation failed, return false.
|
public pollUntilComplete(array $options = []) 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.
|
public reload() Reload the status of the operation with a request to the service.
|
Methods |
protected getCurrentTimeMillis() Protected to allow overriding for tests
|
protected sleepMillis(int $millis) Protected to allow overriding for tests
|
Constants |
private Google |
Properties |
private array $additionalArgs |
private ?string $cancelOperationMethod |
private ?string $cancelOperationRequest |
private array $defaultPollSettings = ['initialPollDelayMillis' => 1000, 'pollDelayMultiplier' => 2, 'maxPollDelayMillis' => 60000, 'totalPollTimeoutMillis' => 0] |
private bool $deleted = false |
private ?string $deleteOperationMethod |
private ?string $deleteOperationRequest |
private string $getOperationMethod |
private string $getOperationRequest |
private ?object $lastProtoResponse |
private ?string $metadataReturnType |
private ?string $operationErrorCodeMethod |
private ?string $operationErrorMessageMethod |
private string $operationName |
private ?string $operationReturnType |
private ?object $operationsClient |
private $operationStatusDoneValue = NULL
|
private string $operationStatusMethod |
Methods |
private canHaveResult() |
private hasErrors() |
private hasProtoResponse() |
private isNewSurfaceOperationsClient() : bool |
private operationsCall(string $method, ?string $requestClass) Call the operations client to perform an operation.
|
private poll(callable $pollCallable, array $options)
|