Class OperationCallable<RequestT,ResponseT,MetadataT> (2.21.0)

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.

Inheritance

java.lang.Object > OperationCallable<RequestT,ResponseT,MetadataT>

Type Parameters

NameDescription
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.

Parameter
NameDescription
requestRequestT

The request to initiate the operation.

Returns
TypeDescription
ResponseT

the call result

call(RequestT request, ApiCallContext context)

public ResponseT call(RequestT request, ApiCallContext context)

Perform a call synchronously.

Parameters
NameDescription
requestRequestT

The request to initiate the operation.

contextApiCallContext

ApiCallContext to make the call with

Returns
TypeDescription
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.

Parameter
NameDescription
operationNameString

The name of the operation to cancel.

Returns
TypeDescription
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.

Parameters
NameDescription
operationNameString

The name of the operation to cancel.

contextApiCallContext

ApiCallContext to make the call with

Returns
TypeDescription
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.

Parameter
NameDescription
requestRequestT

request

Returns
TypeDescription
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.

Parameters
NameDescription
requestRequestT

The request to initiate the operation.

contextApiCallContext

ApiCallContext to make the call with

Returns
TypeDescription
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.

Parameter
NameDescription
operationNameString

The name of the operation to resume.

Returns
TypeDescription
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.

Parameters
NameDescription
operationNameString

The name of the operation to resume.

contextApiCallContext

ApiCallContext to make the call with

Returns
TypeDescription
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.

Parameter
NameDescription
defaultCallContextApiCallContext

the default ApiCallContext.

Returns
TypeDescription
OperationCallable<RequestT,ResponseT,MetadataT>