public CacheResult Lookup <A>(Returns <A> request) { var key = _keyGenerator.ForRequest(request); if (!_cache.ContainsKey(key)) { return(CacheResult.NotFound); } var blockedRequest = _cache[key]; return(CacheResult.Found(blockedRequest)); }