Package io.grpc.xds

Class WrrLocalityLoadBalancer


  • final class WrrLocalityLoadBalancer
    extends io.grpc.LoadBalancer
    This load balancer acts as a parent for the WeightedTargetLoadBalancer and configures it with a child policy in its configuration and locality weights it gets from an attribute in LoadBalancer.ResolvedAddresses.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      (package private) static class  WrrLocalityLoadBalancer.WrrLocalityConfig
      The LB config for WrrLocalityLoadBalancer.
      • Nested classes/interfaces inherited from class io.grpc.LoadBalancer

        io.grpc.LoadBalancer.CreateSubchannelArgs, io.grpc.LoadBalancer.ErrorPicker, io.grpc.LoadBalancer.Factory, io.grpc.LoadBalancer.FixedResultPicker, io.grpc.LoadBalancer.Helper, io.grpc.LoadBalancer.PickDetailsConsumer, io.grpc.LoadBalancer.PickResult, io.grpc.LoadBalancer.PickSubchannelArgs, io.grpc.LoadBalancer.ResolvedAddresses, io.grpc.LoadBalancer.Subchannel, io.grpc.LoadBalancer.SubchannelPicker, io.grpc.LoadBalancer.SubchannelStateListener
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private io.grpc.LoadBalancer.Helper helper  
      private io.grpc.LoadBalancerRegistry lbRegistry  
      private XdsLogger logger  
      private io.grpc.util.GracefulSwitchLoadBalancer switchLb  
      • Fields inherited from class io.grpc.LoadBalancer

        ATTR_HEALTH_CHECKING_CONFIG, DISABLE_SUBCHANNEL_RECONNECT_KEY, EMPTY_PICKER, HAS_HEALTH_PRODUCER_LISTENER_KEY, HEALTH_CONSUMER_LISTENER_ARG_KEY, IS_PETIOLE_POLICY
    • Constructor Summary

      Constructors 
      Constructor Description
      WrrLocalityLoadBalancer​(io.grpc.LoadBalancer.Helper helper)  
      WrrLocalityLoadBalancer​(io.grpc.LoadBalancer.Helper helper, io.grpc.LoadBalancerRegistry lbRegistry)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      io.grpc.Status acceptResolvedAddresses​(io.grpc.LoadBalancer.ResolvedAddresses resolvedAddresses)  
      void handleNameResolutionError​(io.grpc.Status error)  
      void shutdown()  
      • Methods inherited from class io.grpc.LoadBalancer

        canHandleEmptyAddressListFromNameResolution, handleResolvedAddresses, handleSubchannelState, requestConnection
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • helper

        private final io.grpc.LoadBalancer.Helper helper
      • switchLb

        private final io.grpc.util.GracefulSwitchLoadBalancer switchLb
      • lbRegistry

        private final io.grpc.LoadBalancerRegistry lbRegistry
    • Constructor Detail

      • WrrLocalityLoadBalancer

        WrrLocalityLoadBalancer​(io.grpc.LoadBalancer.Helper helper)
      • WrrLocalityLoadBalancer

        WrrLocalityLoadBalancer​(io.grpc.LoadBalancer.Helper helper,
                                io.grpc.LoadBalancerRegistry lbRegistry)
    • Method Detail

      • acceptResolvedAddresses

        public io.grpc.Status acceptResolvedAddresses​(io.grpc.LoadBalancer.ResolvedAddresses resolvedAddresses)
        Overrides:
        acceptResolvedAddresses in class io.grpc.LoadBalancer
      • handleNameResolutionError

        public void handleNameResolutionError​(io.grpc.Status error)
        Specified by:
        handleNameResolutionError in class io.grpc.LoadBalancer
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in class io.grpc.LoadBalancer