- 2.63.1 (latest)
- 2.62.0
- 2.61.0
- 2.60.0
- 2.59.1
- 2.58.0
- 2.57.0
- 2.55.0
- 2.54.1
- 2.53.0
- 2.52.0
- 2.51.0
- 2.50.0
- 2.49.0
- 2.48.1
- 2.47.0
- 2.46.1
- 2.45.0
- 2.43.0
- 2.42.0
- 2.41.0
- 2.39.0
- 2.38.0
- 2.37.0
- 2.36.0
- 2.35.0
- 2.34.1
- 2.33.0
- 2.32.1
- 2.31.1
- 2.30.1
- 2.24.0
- 2.23.3
- 2.22.0
- 2.21.0
- 2.20.1
- 2.19.6
- 2.18.7
- 2.17.0
- 2.16.0
- 2.15.0
- 2.14.0
- 2.13.0
- 2.12.2
- 2.11.0
- 2.10.0
- 2.9.0
- 2.8.1
- 2.7.1
public abstract class UnaryCallable<RequestT,ResponseT>
A UnaryCallable is an immutable object which is capable of making RPC calls to non- API methods.
In typical usage, the request to send to the remote service will not be bound to the UnaryCallable, but instead is provided at call time, which allows for a UnaryCallable to be saved and used indefinitely.
There are two styles of calls that can be made through a UnaryCallable: synchronous and asynchronous.
Synchronous example:
RequestType request = RequestType.newBuilder().build();
UnaryCallable<RequestType, ResponseType> unaryCallable = api.doSomethingCallable();
ResponseType response = unaryCallable.call();
Asynchronous example:
RequestType request = RequestType.newBuilder().build();
UnaryCallable<RequestType, ResponseType> unaryCallable = api.doSomethingCallable();
ApiFuture<ResponseType> resultFuture = unaryCallable.futureCall();
// do other work
// ...
ResponseType response = resultFuture.get();
It is considered advanced usage for a user to create a UnaryCallable themselves. This class is intended to be created by a generated client class, and configured by instances of UnaryCallSettings.Builder which are exposed through the client settings class.
Type Parameters | |
---|---|
Name | Description |
RequestT | |
ResponseT |
Constructors
UnaryCallable()
protected UnaryCallable()
Methods
call(RequestT request)
public ResponseT call(RequestT request)
Same as #call(Object, ApiCallContext), with a null context.
Parameter | |
---|---|
Name | Description |
request | RequestT The request to send to the service. |
Returns | |
---|---|
Type | Description |
ResponseT | the call result |
call(RequestT request, ApiCallContext context)
public ResponseT call(RequestT request, ApiCallContext context)
Perform a call synchronously.
Parameters | |
---|---|
Name | Description |
request | RequestT The request to send to the service. |
context | ApiCallContext ApiCallContext to make the call with |
Returns | |
---|---|
Type | Description |
ResponseT | the call result |
futureCall(RequestT request)
public ApiFuture<ResponseT> futureCall(RequestT request)
Same as #futureCall(Object, ApiCallContext), with a null context.
Parameter | |
---|---|
Name | Description |
request | RequestT request |
Returns | |
---|---|
Type | Description |
ApiFuture<ResponseT> | ApiFuture for the call result |
futureCall(RequestT request, ApiCallContext context)
public abstract ApiFuture<ResponseT> futureCall(RequestT request, ApiCallContext context)
Perform a call asynchronously.
Parameters | |
---|---|
Name | Description |
request | RequestT |
context | ApiCallContext ApiCallContext to make the call with |
Returns | |
---|---|
Type | Description |
ApiFuture<ResponseT> | ApiFuture for the call result |
withDefaultCallContext(ApiCallContext defaultCallContext)
public UnaryCallable<RequestT,ResponseT> withDefaultCallContext(ApiCallContext defaultCallContext)
Returns a new UnaryCallable
with an ApiCallContext that is used as a default when none is supplied in individual calls.
Parameter | |
---|---|
Name | Description |
defaultCallContext | ApiCallContext the default ApiCallContext. |
Returns | |
---|---|
Type | Description |
UnaryCallable<RequestT,ResponseT> |