public abstract class OperationCallable<RequestT,ResponseT,MetadataT>
An OperationCallable is an immutable object which is capable of initiating RPC calls to long-running API methods and returning an 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.
Type Parameters
Name | Description |
RequestT | |
ResponseT | |
MetadataT |
Constructors
OperationCallable()
protected OperationCallable()
Methods
call(RequestT request)
public ResponseT call(RequestT request)
Same as #call(Object, ApiCallContext), with a null context.
Name | Description |
request | RequestT The request to initiate the operation. |
Type | Description |
ResponseT | the call result |
call(RequestT request, ApiCallContext context)
public ResponseT call(RequestT request, ApiCallContext context)
Perform a call synchronously.
Name | Description |
request | RequestT The request to initiate the operation. |
context | ApiCallContext ApiCallContext to make the call with |
Type | Description |
ResponseT | the call result |
cancel(String operationName)
public ApiFuture<Void> cancel(String operationName)
Sends a cancellation request to the server for the operation with name operationName
.
Name | Description |
operationName | String The name of the operation to cancel. |
Type | Description |
ApiFuture<Void> | the future which completes once the operation is canceled on the server side. |
cancel(String operationName, ApiCallContext context)
public abstract ApiFuture<Void> cancel(String operationName, ApiCallContext context)
Sends a cancellation request to the server for the operation with name operationName
.
Name | Description |
operationName | String The name of the operation to cancel. |
context | ApiCallContext ApiCallContext to make the call with |
Type | Description |
ApiFuture<Void> | the future which completes once the operation is canceled on the server side. |
futureCall(RequestT request)
public OperationFuture<ResponseT,MetadataT> futureCall(RequestT request)
Same as #futureCall(Object, ApiCallContext), with a null context.
Name | Description |
request | RequestT request |
Type | Description |
OperationFuture<ResponseT,MetadataT> | ApiFuture for the call result |
futureCall(RequestT request, ApiCallContext context)
public abstract OperationFuture<ResponseT,MetadataT> futureCall(RequestT request, ApiCallContext context)
Initiates an operation asynchronously.
Name | Description |
request | RequestT The request to initiate the operation. |
context | ApiCallContext ApiCallContext to make the call with |
Type | Description |
OperationFuture<ResponseT,MetadataT> | OperationFuture for the call result |
resumeFutureCall(String operationName)
public OperationFuture<ResponseT,MetadataT> resumeFutureCall(String operationName)
Creates a new 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.
Name | Description |
operationName | String The name of the operation to resume. |
Type | Description |
OperationFuture<ResponseT,MetadataT> | OperationFuture for the call result. |
resumeFutureCall(String operationName, ApiCallContext context)
public abstract OperationFuture<ResponseT,MetadataT> resumeFutureCall(String operationName, ApiCallContext context)
Creates a new 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.
Name | Description |
operationName | String The name of the operation to resume. |
context | ApiCallContext ApiCallContext to make the call with |
Type | Description |
OperationFuture<ResponseT,MetadataT> | OperationFuture for the call result. |
withDefaultCallContext(ApiCallContext defaultCallContext)
public 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.
Name | Description |
defaultCallContext | ApiCallContext the default ApiCallContext. |
Type | Description |
OperationCallable<RequestT,ResponseT,MetadataT> |