}
if (keys.isEmpty()) {
return Collections.<String, T>emptyMap();
}
final EVCacheClient client = _pool.getEVCacheClient();
if (client == null) {
NULL_CLIENT_COUNTER.increment();
if (_throwException.get()) {
throw new EVCacheException("Could not find a client to get the data in bulk");
}
return null; // Fast failure
}
final Collection<String> canonicalKeys = new ArrayList<String>();
/* Canonicalize keys and perform fast failure checking */
for (String k : keys) {
final String canonicalK = getCanonicalizedKey(k);
canonicalKeys.add(canonicalK);
}
try {
final Map<String, T> retMap = client.getBulk(canonicalKeys, tc);
if (retMap == null || retMap.isEmpty()) {
return Collections.<String, T>emptyMap();
}
/* Decanonicalize the keys */