Package io.grpc.xds

Class PriorityLoadBalancer


  • final class PriorityLoadBalancer
    extends io.grpc.LoadBalancer
    Load balancer for priority policy. A priority represents a logical entity within a cluster for load balancing purposes.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      private class  PriorityLoadBalancer.ChildLbState  
      • 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
    • Constructor Summary

      Constructors 
      Constructor Description
      PriorityLoadBalancer​(io.grpc.LoadBalancer.Helper helper)  
    • 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()  
      private void tryNextPriority()  
      private void updateOverallState​(java.lang.String priority, io.grpc.ConnectivityState state, io.grpc.LoadBalancer.SubchannelPicker picker)  
      • 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
      • syncContext

        private final io.grpc.SynchronizationContext syncContext
      • executor

        private final java.util.concurrent.ScheduledExecutorService executor
      • resolvedAddresses

        private io.grpc.LoadBalancer.ResolvedAddresses resolvedAddresses
      • priorityNames

        private java.util.List<java.lang.String> priorityNames
      • currentPriority

        @Nullable
        private java.lang.String currentPriority
      • currentConnectivityState

        private io.grpc.ConnectivityState currentConnectivityState
      • currentPicker

        private io.grpc.LoadBalancer.SubchannelPicker currentPicker
      • handlingResolvedAddresses

        private boolean handlingResolvedAddresses
    • Constructor Detail

      • PriorityLoadBalancer

        PriorityLoadBalancer​(io.grpc.LoadBalancer.Helper helper)
    • 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
      • tryNextPriority

        private void tryNextPriority()
      • updateOverallState

        private void updateOverallState​(@Nullable
                                        java.lang.String priority,
                                        io.grpc.ConnectivityState state,
                                        io.grpc.LoadBalancer.SubchannelPicker picker)