public ReportingChannelControlHelper( IChannelControlHelper controller, SubchannelReporter subchannelReporter) { _controller = controller; _subchannels = new List <Subchannel>(); _subchannelReporter = subchannelReporter; }
/// <summary> /// Initializes a new instance of the <see cref="SubchannelsLoadBalancer"/> class. /// </summary> /// <param name="controller">The controller.</param> /// <param name="loggerFactory">The logger factory.</param> protected SubchannelsLoadBalancer(IChannelControlHelper controller, ILoggerFactory loggerFactory) { _addressSubchannels = new List <AddressSubchannel>(); Controller = controller; _logger = loggerFactory.CreateLogger(GetType()); }
public DropLoadBalancer(IChannelControlHelper controller) { _controller = controller; }
public LeastUsedBalancer(IChannelControlHelper controller, ILoggerFactory loggerFactory) : base(controller, loggerFactory) { }
/// <summary> /// Initializes a new instance of the <see cref="PickFirstBalancer"/> class. /// </summary> /// <param name="controller">The controller.</param> /// <param name="loggerFactory">The logger factory.</param> public PickFirstBalancer(IChannelControlHelper controller, ILoggerFactory loggerFactory) { _controller = controller; _logger = loggerFactory.CreateLogger <PickFirstBalancer>(); }
/// <summary> /// Initializes a new instance of the <see cref="LoadBalancerOptions"/> class. /// </summary> /// <param name="controller">The controller.</param> /// <param name="loggerFactory">The logger factory.</param> /// <param name="configuration">The load balancer configuration.</param> public LoadBalancerOptions(IChannelControlHelper controller, ILoggerFactory loggerFactory, IDictionary <string, object> configuration) { Controller = controller; LoggerFactory = loggerFactory; Configuration = configuration; }
internal RoundRobinBalancer(IChannelControlHelper controller, ILoggerFactory loggerFactory, IRandomGenerator randomGenerator) : base(controller, loggerFactory) { _randomGenerator = randomGenerator; }
/// <summary> /// Initializes a new instance of the <see cref="RoundRobinBalancer"/> class. /// </summary> /// <param name="controller">The controller.</param> /// <param name="loggerFactory">The logger factory.</param> public RoundRobinBalancer(IChannelControlHelper controller, ILoggerFactory loggerFactory) : this(controller, loggerFactory, new RandomGenerator()) { }