public override ICache GetCache(string name)
        {
            if(Equals(name, null))
                throw new ArgumentNullException("name");

            if(!Caches.ContainsKey(name))
            {
                ICache cache = new MachineMemoryCache(name);
                Caches.Add(name, cache);
            }
            return Caches[name];
        }
 public override ICache GetCache()
 {
     var cache = new MachineMemoryCache();
     Caches.Add(cache.Name, cache);
     return cache;
 }