Package io.grpc.rls

Class RlsProtoData.RouteLookupConfig

java.lang.Object
io.grpc.rls.RlsProtoData.RouteLookupConfig
Direct Known Subclasses:
AutoValue_RlsProtoData_RouteLookupConfig
Enclosing class:
RlsProtoData

@Immutable abstract static class RlsProtoData.RouteLookupConfig extends Object
A config object for gRPC RouteLookupService.
  • Constructor Details

    • RouteLookupConfig

      RouteLookupConfig()
  • Method Details

    • grpcKeybuilders

      abstract com.google.common.collect.ImmutableList<RlsProtoData.GrpcKeyBuilder> grpcKeybuilders()
      Returns unordered specifications for constructing keys for gRPC requests. All GrpcKeyBuilders on this list must have unique "name" fields so that the client is free to prebuild a hash map keyed by name. If no GrpcKeyBuilder matches, an empty key_map will be sent to the lookup service; it should likely reply with a global default route and raise an alert.
    • lookupService

      abstract String lookupService()
      Returns the name of the lookup service as a gRPC URI. Typically, this will be a subdomain of the target, such as "lookup.datastore.googleapis.com".
    • lookupServiceTimeoutInNanos

      abstract long lookupServiceTimeoutInNanos()
      Returns the timeout value for lookup service requests.
    • maxAgeInNanos

      abstract long maxAgeInNanos()
      Returns the maximum age the result will be cached.
    • staleAgeInNanos

      abstract long staleAgeInNanos()
      Returns the time when an entry will be in a staled status. When cache is accessed whgen the entry is in staled status, it will
    • cacheSizeBytes

      abstract long cacheSizeBytes()
      Returns a rough indicator of amount of memory to use for the client cache. Some of the data structure overhead is not accounted for, so actual memory consumed will be somewhat greater than this value. If this field is omitted or set to zero, a client default will be used. The value may be capped to a lower amount based on client configuration.
    • defaultTarget

      @Nullable abstract String defaultTarget()
      Returns the default target to use if needed. If nonempty (implies request processing strategy SYNC_LOOKUP_DEFAULT_TARGET_ON_ERROR is set), it will be used if RLS returns an error. Note that requests can be routed only to a subdomain of the original target, e.g. "us_east_1.cloudbigtable.googleapis.com".
    • builder