public TModel Retrieve <TModel>(Guid id) { if (!PoorMansCache.ContainsKey(id)) { return(default(TModel)); } Log.Debug(() => $"retrieved cached model {{{id}}}"); // TODO: verify model.GetType is assignable to TModel return((TModel)PoorMansCache[id]); }
public void Update(Guid id, object model) { object prevModel; if (PoorMansCache.TryGetValue(id, out prevModel)) { if (model == prevModel) { return; } Log.Debug(() => $"caching model {{{id}}}"); } PoorMansCache[id] = model; }
public void Remove(Guid id) { Log.Debug(() => $"removing cached model {{{id}}}"); PoorMansCache.Remove(id); }