public async Task <Image> ProcessImageRequest(Uri endpoint, int cacheExpiryMin, bool bustCache = false) { string key = endpoint.AbsoluteUri; if (!bustCache && _apiCache.Contains(key)) { return(_apiCache.Get <Image>(key)); } if (bustCache) { _apiCache.Remove(key); } var message = await RequestRateHttpClient.GetRequest(endpoint); var messageObject = await HandleImageResponse(message); _apiCache.Add <Image>(messageObject, key, cacheExpiryMin); return(messageObject); }