package com.github.ltsopensource.core.loadbalance;
import java.util.List;
/**
* Robert HG (254963746@qq.com) on 3/25/15.
*/
public abstract class AbstractLoadBalance implements LoadBalance {
@Override
public <S> S select(List<S> shards, String seed) {
if (shards == null || shards.size() == 0) {
return null;
}
if (shards.size() == 1) {
return shards.get(0);
}
return doSelect(shards, seed);
}
protected abstract <S> S doSelect(List<S> shards, String seed);
}