Classes
ApiMethodDescriptor<RequestT,ResponseT>
ApiMethodDescriptor.Builder<RequestT,ResponseT>
ForwardingHttpJsonClientCall<RequestT,ResponseT>
A HttpJsonClientCall which forwards all of its methods to another HttpJsonClientCall.
ForwardingHttpJsonClientCall.SimpleForwardingHttpJsonClientCall<RequestT,ResponseT>
A simplified version of ForwardingHttpJsonClientCall where subclasses can pass in a HttpJsonClientCall as the delegate.
ForwardingHttpJsonClientCallListener<ResponseT>
A HttpJsonClientCall.Listener which forwards all of its methods to another HttpJsonClientCall.Listener.
ForwardingHttpJsonClientCallListener.SimpleForwardingHttpJsonClientCallListener<ResponseT>
A simplified version of ForwardingHttpJsonClientCallListener where subclasses can pass in a HttpJsonClientCall.Listener as the delegate.
GaxHttpJsonProperties
Provides properties of the GAX-HTTPJSON library.
HttpHeadersUtils
This class is for internal use only and is public for technical reasons.
HttpJsonCallContext
HttpJsonCallContext encapsulates context data used to make an http-json call.
HttpJsonCallContext is immutable in the sense that none of its methods modifies the
HttpJsonCallContext itself or the underlying data. Methods of the form withX
return
copies of the object, but with one field changed. The immutability and thread safety of the
arguments solely depends on the arguments themselves.
HttpJsonCallOptions
Options for an http-json call, including deadline and credentials.
HttpJsonCallOptions.Builder
HttpJsonCallSettings<RequestT,ResponseT>
HTTP-specific settings for creating callables.
HttpJsonCallSettings.Builder<RequestT,ResponseT>
HttpJsonCallableFactory
Class with utility methods to create http/json-based direct callables.
HttpJsonClientCall<RequestT,ResponseT>
An instance of a call to a remote method. A call will send zero or more request messages to the server and receive zero or more response messages back.
Instances are created by a HttpJsonChannel and used by stubs to invoke their remote behavior.
#start must be called prior to calling any other methods, with the exception of #cancel. Whereas #cancel must not be followed by any other methods, but can be called more than once, while only the first one has effect.
Methods are potentially blocking but are designed to execute quickly. The implementations of this class are expected to be thread-safe.
There is a race between #cancel and the completion/failure of the RPC in other ways.
If #cancel won the race, Listener.onClose()
is called with statusCode
corresponding to CANCELLED. Otherwise, Listener.onClose() is called with whatever status the RPC
was finished. We ensure that at most one is called.
HttpJsonClientCall.Listener<T>
Callbacks for receiving metadata, response messages and completion status from the server.
Implementations are discouraged to block for extended periods of time. Implementations are not required to be thread-safe, but they must not be thread-hostile. The caller is free to call an instance from multiple threads, but only one call simultaneously.
HttpJsonHeaderEnhancers
Utility class that creates instances of HttpJsonHeaderEnhancer.
HttpJsonLongRunningClient<RequestT,OperationT>
Implementation of LongRunningClient based on REST transport.
Public for technical reasons. For internal use only.
HttpJsonMetadata
HttpJsonOperationSnapshot
Implementation of OperationSnapshot based on REST transport.
Public for technical reasons. For internal use only.
HttpJsonOperationSnapshot.Builder
HttpJsonOperationSnapshotCallable<RequestT,OperationT>
A UnaryCallable
that wraps a UnaryCallable returning an Operation and returns an
OperationSnapshot instead.
Public for technical reasons. For internal use only.
HttpJsonStatusCode
A failure code specific to an HTTP call.
HttpJsonTransportChannel
Implementation of TransportChannel based on http/json.
HttpJsonTransportChannel.Builder
InstantiatingHttpJsonChannelProvider
InstantiatingHttpJsonChannelProvider is a TransportChannelProvider which constructs a ManagedHttpJsonChannel with a number of configured inputs every time getChannel(...) is called. These inputs include a port, a service address, and credentials.
The credentials can either be supplied directly (by providing a FixedCredentialsProvider to Builder.setCredentialsProvider()) or acquired implicitly from Application Default Credentials (by providing a GoogleCredentialsProvider to Builder.setCredentialsProvider()).
The client lib header and generator header values are used to form a value that goes into the http header of requests to the service.
InstantiatingHttpJsonChannelProvider.Builder
ManagedHttpJsonChannel
Implementation of HttpJsonChannel which can issue http-json calls.
ManagedHttpJsonChannel.Builder
ProtoMessageRequestFormatter<RequestT>
Creates parts of a HTTP request from a protobuf message.
ProtoMessageRequestFormatter.Builder<RequestT>
ProtoMessageResponseParser<ResponseT>
The implementation of HttpResponseParser which works with protobuf messages.
ProtoMessageResponseParser.Builder<ResponseT>
ProtoOperationTransformers
Public for technical reasons; intended for use by generated code.
ProtoOperationTransformers.MetadataTransformer<MetadataT>
ProtoOperationTransformers.ResponseTransformer<ResponseT>
ProtoRestSerializer<RequestT>
This class serializes/deserializes protobuf Message for REST interactions. It serializes requests protobuf messages into REST messages, splitting the message into the JSON request body, URL path parameters, and query parameters. It deserializes JSON responses into response protobuf message.
Interfaces
FieldsExtractor<RequestT,ParamsT>
A functional interface to be implemented for each request message to extract specific fields from it. For advanced usage only.
HttpJsonChannel
HttpJsonChannel contains the functionality to issue http-json calls.
HttpJsonClientInterceptor
Interface for intercepting outgoing calls before they are dispatched by a HttpJsonChannel.
The interceptor may be called for multiple calls by one or more threads without completing the previous ones first. The implementations must be thread-safe.
HttpJsonHeaderEnhancer
Interface for functionality to enhance headers for an http-json call.
HttpJsonInterceptorProvider
Provider of custom REST ClientInterceptors.
HttpJsonStubCallableFactory<OperationT,OperationsStub>
HttpRequestFormatter<MessageFormatT>
Interface for classes that create parts of HTTP requests from a parameterized message.
HttpResponseParser<MessageFormatT>
Interface for classes that parse parts of HTTP responses into the parameterized message type.
OperationSnapshotFactory<RequestT,OperationT>
A factory which creates an OperationSnapshot from an initial request message (the one which started a long running operation) and an operation response (which may be either initial request response or the polling request response).
Public for technical reasons. For internal use only.
PollingRequestFactory<RequestT>
A factory which creates a subsequent polling request from a compund operation id.
Enums
ApiMethodDescriptor.MethodType
Exceptions
HttpJsonStatusRuntimeException
HTTP status code in RuntimeException form, for propagating status code information via exceptions.
RestSerializationException
An exception thrown when a protobuf message cannot be serialized/deserialized for REST interactions.