@BetaApi(value="The surface for long-running operations is not stable yet and may change in the future.") public abstract class OperationCallable<RequestT,ResponseT,MetadataT> extends Object
OperationFuture to manage the polling of the
Operation and getting the response.
It is considered advanced usage for a user to create an OperationCallable themselves. This class is intended to be created by a generated client class, and configured by instances of OperationCallSettings.Builder which are exposed through the client settings class.
| Modifier | Constructor and Description |
|---|---|
protected |
OperationCallable() |
| Modifier and Type | Method and Description |
|---|---|
ResponseT |
call(RequestT request)
Same as
call(Object, ApiCallContext), with a null context. |
ResponseT |
call(RequestT request,
ApiCallContext context)
Perform a call synchronously.
|
com.google.api.core.ApiFuture<Void> |
cancel(String operationName)
Sends a cancellation request to the server for the operation with name
operationName. |
abstract com.google.api.core.ApiFuture<Void> |
cancel(String operationName,
ApiCallContext context)
Sends a cancellation request to the server for the operation with name
operationName. |
OperationFuture<ResponseT,MetadataT> |
futureCall(RequestT request)
Same as
futureCall(Object, ApiCallContext), with a null context. |
abstract OperationFuture<ResponseT,MetadataT> |
futureCall(RequestT request,
ApiCallContext context)
Initiates an operation asynchronously.
|
OperationFuture<ResponseT,MetadataT> |
resumeFutureCall(String operationName)
Creates a new
OperationFuture to watch an operation that has been initiated previously. |
abstract OperationFuture<ResponseT,MetadataT> |
resumeFutureCall(String operationName,
ApiCallContext context)
Creates a new
OperationFuture to watch an operation that has been initiated previously. |
OperationCallable<RequestT,ResponseT,MetadataT> |
withDefaultCallContext(ApiCallContext defaultCallContext)
Returns a new
OperationCallable with an ApiCallContext that is used as a
default when none is supplied in individual calls. |
public abstract OperationFuture<ResponseT,MetadataT> futureCall(RequestT request, ApiCallContext context)
request - The request to initiate the operation.context - ApiCallContext to make the call withOperationFuture for the call resultpublic OperationFuture<ResponseT,MetadataT> futureCall(RequestT request)
futureCall(Object, ApiCallContext), with a null context.request - requestApiFuture for the call resultpublic ResponseT call(RequestT request, ApiCallContext context)
request - The request to initiate the operation.context - ApiCallContext to make the call withApiException - if there is any bad status in the response.RuntimeException - if there is any other exception unrelated to bad status.public ResponseT call(RequestT request)
call(Object, ApiCallContext), with a null context.request - The request to initiate the operation.ApiException - if there is any bad status in the response.RuntimeException - if there is any other exception unrelated to bad status.public abstract OperationFuture<ResponseT,MetadataT> resumeFutureCall(String operationName, ApiCallContext context)
OperationFuture to watch an operation that has been initiated previously.
Note: This is not type-safe at static time; the result type can only be checked once the
operation finishes.operationName - The name of the operation to resume.context - ApiCallContext to make the call withOperationFuture for the call result.public OperationFuture<ResponseT,MetadataT> resumeFutureCall(String operationName)
OperationFuture to watch an operation that has been initiated previously.
Note: This is not type-safe at static time; the result type can only be checked once the
operation finishes.operationName - The name of the operation to resume.OperationFuture for the call result.public abstract com.google.api.core.ApiFuture<Void> cancel(String operationName, ApiCallContext context)
operationName.operationName - The name of the operation to cancel.context - ApiCallContext to make the call withpublic com.google.api.core.ApiFuture<Void> cancel(String operationName)
operationName.operationName - The name of the operation to cancel.public OperationCallable<RequestT,ResponseT,MetadataT> withDefaultCallContext(ApiCallContext defaultCallContext)
OperationCallable with an ApiCallContext that is used as a
default when none is supplied in individual calls.defaultCallContext - the default ApiCallContext.