public abstract class PredicateBasedRule extends ClientConfigEnabledRoundRobinRule
AbstractServerPredicate
.
After filtering, a server is returned from filtered list in a round robin fashion.Constructor and Description |
---|
PredicateBasedRule() |
Modifier and Type | Method and Description |
---|---|
Server |
choose(java.lang.Object key)
Get a server by calling
AbstractServerPredicate.chooseRandomlyAfterFiltering(java.util.List, Object) . |
abstract AbstractServerPredicate |
getPredicate()
Method that provides an instance of
AbstractServerPredicate to be used by this class. |
initWithNiwsConfig, setLoadBalancer
getLoadBalancer
public abstract AbstractServerPredicate getPredicate()
AbstractServerPredicate
to be used by this class.public Server choose(java.lang.Object key)
AbstractServerPredicate.chooseRandomlyAfterFiltering(java.util.List, Object)
.
The performance for this method is O(n) where n is number of servers to be filtered.choose
in interface IRule
choose
in class ClientConfigEnabledRoundRobinRule