@Override public IStatsProducer getProducer(String producerId) { if (_cachedProducerList==null) buildProducerCacheFromScratch(); synchronized(cacheLock){ ProducerReference ref = _cachedProducerMap.get(producerId); if (ref==null) throw new NoSuchProducerException(producerId); return ref.get(); } }