SendableRequestItem token = req.chooseKey(this, context);
if(token == null) {
if(logMINOR) Logger.minor(this, "Choose key returned null: "+req);
return null;
} else {
Key key;
ClientKey ckey;
if(isInsertScheduler) {
key = null;
ckey = null;
} else {
key = ((BaseSendableGet)req).getNodeKey(token);
if(req instanceof SendableGet)
ckey = ((SendableGet)req).getKey(token);
else
ckey = null;
}
ChosenBlock ret;
if(key != null && key.getRoutingKey() == null)
throw new NullPointerException();
boolean localRequestOnly;
boolean ignoreStore;
boolean canWriteClientCache;
boolean forkOnCacheable;