Package io.grpc.rls
Class ChildLoadBalancerHelper
- java.lang.Object
-
- io.grpc.LoadBalancer.Helper
-
- io.grpc.util.ForwardingLoadBalancerHelper
-
- io.grpc.rls.ChildLoadBalancerHelper
-
final class ChildLoadBalancerHelper extends ForwardingLoadBalancerHelper
A delegatingLoadBalancer.Helperfor the child load blanacer. The child load-balancer notifies the higher level load-blancer with aggregated status instead of each individual child load-blanacer's state.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classChildLoadBalancerHelper.ChildLoadBalancerHelperProvider
-
Field Summary
Fields Modifier and Type Field Description private LoadBalancer.SubchannelPickerpickerprivate LoadBalancer.HelperrlsHelperprivate SubchannelStateManagersubchannelStateManagerprivate java.lang.Stringtarget
-
Constructor Summary
Constructors Modifier Constructor Description privateChildLoadBalancerHelper(java.lang.String target, LoadBalancer.Helper rlsHelper, SubchannelStateManager subchannelStateManager, LoadBalancer.SubchannelPicker picker)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected LoadBalancer.Helperdelegate()Returns the underlying helper.voidupdateBalancingState(ConnectivityState newState, LoadBalancer.SubchannelPicker unused)Updates balancing state from one or more subchannels tracked in theSubchannelStateManager.-
Methods inherited from class io.grpc.util.ForwardingLoadBalancerHelper
createOobChannel, createOobChannel, createResolvingOobChannel, createResolvingOobChannelBuilder, createResolvingOobChannelBuilder, createSubchannel, getAuthority, getChannelCredentials, getChannelLogger, getChannelTarget, getMetricRecorder, getNameResolverArgs, getNameResolverRegistry, getScheduledExecutorService, getSynchronizationContext, getUnsafeChannelCredentials, ignoreRefreshNameResolutionCheck, refreshNameResolution, toString, updateOobChannelAddresses, updateOobChannelAddresses
-
-
-
-
Field Detail
-
target
private final java.lang.String target
-
rlsHelper
private final LoadBalancer.Helper rlsHelper
-
subchannelStateManager
private final SubchannelStateManager subchannelStateManager
-
picker
private final LoadBalancer.SubchannelPicker picker
-
-
Constructor Detail
-
ChildLoadBalancerHelper
private ChildLoadBalancerHelper(java.lang.String target, LoadBalancer.Helper rlsHelper, SubchannelStateManager subchannelStateManager, LoadBalancer.SubchannelPicker picker)
-
-
Method Detail
-
delegate
protected LoadBalancer.Helper delegate()
Description copied from class:ForwardingLoadBalancerHelperReturns the underlying helper.- Specified by:
delegatein classForwardingLoadBalancerHelper
-
updateBalancingState
public void updateBalancingState(@Nonnull ConnectivityState newState, @Nonnull LoadBalancer.SubchannelPicker unused)Updates balancing state from one or more subchannels tracked in theSubchannelStateManager. The passed picker will be ignored, instead the picker which governs many subchannels/pickers will be reported to the parent load-balancer.- Overrides:
updateBalancingStatein classForwardingLoadBalancerHelper
-
-