@Override public <T> void sendRequest(final Request<T> request, final RequestContext requestContext, final Callback<Response<T>> callback) { ScatterGatherStrategy strategy = getScatterGatherStrategy(requestContext); if (needScatterGather(request, requestContext, strategy)) { // scatter gather case handleScatterGatherRequest(request, requestContext, strategy, callback); } else { // default non scatter-gather case sendRequestNoScatterGather(request, requestContext, callback); } }