Class RoutesGrpc.RoutesFutureStub

  • Enclosing class:
    RoutesGrpc

    public static final class RoutesGrpc.RoutesFutureStub
    extends io.grpc.stub.AbstractFutureStub<RoutesGrpc.RoutesFutureStub>
    A stub to allow clients to do ListenableFuture-style rpc calls to service Routes.
     The Routes API.
     
    • Nested Class Summary

      • Nested classes/interfaces inherited from class io.grpc.stub.AbstractStub

        io.grpc.stub.AbstractStub.StubFactory<T extends io.grpc.stub.AbstractStub<T>>
    • Method Detail

      • computeRoutes

        public com.google.common.util.concurrent.ListenableFuture<ComputeRoutesResponse> computeRoutes​(ComputeRoutesRequest request)
         Returns the primary route along with optional alternate routes, given a set
         of terminal and intermediate waypoints.
         **NOTE:** This method requires that you specify a response field mask in
         the input. You can provide the response field mask by using URL parameter
         `$fields` or `fields`, or by using an HTTP/gRPC header `X-Goog-FieldMask`
         (see the [available URL parameters and
         headers](https://cloud.google.com/apis/docs/system-parameters). The value
         is a comma separated list of field paths. See detailed documentation about
         [how to construct the field
         paths](https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto).
         For example, in this method:
         * Field mask of all available fields (for manual inspection):
           `X-Goog-FieldMask: *`
         * Field mask of Route-level duration, distance, and polyline (an example
         production setup):
           `X-Goog-FieldMask:
           routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline`
         Google discourage the use of the wildcard (`*`) response field mask, or
         specifying the field mask at the top level (`routes`), because:
         * Selecting only the fields that you need helps our server save computation
         cycles, allowing us to return the result to you with a lower latency.
         * Selecting only the fields that you need
         in your production job ensures stable latency performance. We might add
         more response fields in the future, and those new fields might require
         extra computation time. If you select all fields, or if you select all
         fields at the top level, then you might experience performance degradation
         because any new field we add will be automatically included in the
         response.
         * Selecting only the fields that you need results in a smaller response
         size, and thus higher network throughput.