113114115116117118119120121122123
if (blocking) { Set<Principal> out = getRemotePrincipals(username); // add to the cache synchronized (cache) { cache.put(username, new AgedValue(out)); } return out; } // not cached and can't block -- return null