Class GrpcResponseMetadata

java.lang.Object
com.google.api.gax.grpc.GrpcResponseMetadata
All Implemented Interfaces:
ResponseMetadataHandler

public class GrpcResponseMetadata extends Object implements ResponseMetadataHandler
GrpcResponseMetadata provides a mechanism to access the headers and trailers returned by a gRPC client method.

NOTE: the GrpcResponseMetadata class is not thread-safe and should NOT be re-used for multiple calls. A new instance of GrpcResponseMetadata should be constructed for each call that requires metadata to be accessed.

Example usage:

 
 GrpcResponseMetadata grpcResponseMetadata = new GrpcResponseMetadata();
 Foo foo = client.getFooCallable().call(getFooRequest, grpcResponseMetadata.createContextWithHandlers());
 Metadata headers = grpcResponseMetadata.getMetadata();
 Metadata trailers = grpcResponseMetadata.getTrailingMetadata();
 
 
  • Constructor Details

    • GrpcResponseMetadata

      public GrpcResponseMetadata()
  • Method Details

    • addHandlers

      public GrpcCallContext addHandlers(ApiCallContext apiCallContext)
      Constructs a new call context from an existing ApiCallContext, and sets the CallOptions to add handlers to retrieve the headers and trailers, and make them available via the getMetadata and getTrailingMetadata methods.
    • createContextWithHandlers

      public GrpcCallContext createContextWithHandlers()
      Constructs a new call context and sets the CallOptions to add handlers to retrieve the headers and trailers, and make them available via the getMetadata and getTrailingMetadata methods.
    • getMetadata

      public io.grpc.Metadata getMetadata()
      Returns the headers from the gRPC method as Metadata. If the call has not completed, will return null.
    • getTrailingMetadata

      public io.grpc.Metadata getTrailingMetadata()
      Returns the trailers from the gRPC method as Metadata. If the call has not completed, will return null.
    • onHeaders

      public void onHeaders(io.grpc.Metadata metadata)
      Description copied from interface: ResponseMetadataHandler
      Handle the headers returned by an RPC.
      Specified by:
      onHeaders in interface ResponseMetadataHandler
    • onTrailers

      public void onTrailers(io.grpc.Metadata metadata)
      Description copied from interface: ResponseMetadataHandler
      Handle the trailers returned by an RPC.
      Specified by:
      onTrailers in interface ResponseMetadataHandler