110 PairSupplierFactory pairSupplierFactory = null;
111 switch (loadBalancer) {
113 pairSupplierFactory =
new OneByOnePairSupplierFactory();
117 pairSupplierFactory =
new RoundRobinPairSupplierFactory();
121 PairSupplierFactoryLoadBalancer loadBalancer = null;
122 if (exclusiveAccess) {
123 if (oneIterationOnly) {
124 loadBalancer =
new NonCircularExclusiveAccessLoadBalancer(pairSupplierFactory);
126 loadBalancer =
new CircularExclusiveAccessLoadBalancer(pairSupplierFactory);
128 ((ExclusiveAccessLoadBalancer)loadBalancer).setRandomnessSeed(seed);
130 if (Objects.nonNull(seed)) {
131 loadBalancer =
new RandomLoadBalancer(seed, pairSupplierFactory);
133 loadBalancer =
new SimpleCircularLoadBalancer(pairSupplierFactory);
137 log.info(
"Built a {} load balancer", loadBalancer);