void Insert(string key, object value, CacheDependency dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, CacheItemPriority priority, CacheItemRemovedCallback onRemoveCallback, bool doLock) { if (key == null) { throw new ArgumentNullException("key"); } if (value == null) { throw new ArgumentNullException("value"); } if (slidingExpiration < TimeSpan.Zero || slidingExpiration > TimeSpan.FromDays(365)) { throw new ArgumentNullException("slidingExpiration"); } if (absoluteExpiration != NoAbsoluteExpiration && slidingExpiration != NoSlidingExpiration) { throw new ArgumentException("Both absoluteExpiration and slidingExpiration are specified"); } CacheItem ci = new CacheItem(); ci.Value = value; ci.Key = key; if (dependencies != null) { ci.Dependency = dependencies; dependencies.DependencyChanged += new EventHandler(OnDependencyChanged); dependencies.SetCache(DependencyCache); } ci.Priority = priority; SetItemTimeout(ci, absoluteExpiration, slidingExpiration, onRemoveCallback, key, doLock); }
void Insert (string key, object value, CacheDependency dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, CacheItemPriority priority, CacheItemRemovedCallback onRemoveCallback, CacheItemUpdateCallback onUpdateCallback, bool doLock) { if (key == null) throw new ArgumentNullException ("key"); if (value == null) throw new ArgumentNullException ("value"); if (slidingExpiration < TimeSpan.Zero || slidingExpiration > TimeSpan.FromDays (365)) throw new ArgumentNullException ("slidingExpiration"); if (absoluteExpiration != NoAbsoluteExpiration && slidingExpiration != NoSlidingExpiration) throw new ArgumentException ("Both absoluteExpiration and slidingExpiration are specified"); CacheItem ci = new CacheItem (); ci.Value = value; ci.Key = key; if (dependencies != null) { ci.Dependency = dependencies; dependencies.DependencyChanged += new EventHandler (OnDependencyChanged); dependencies.SetCache (DependencyCache); } ci.Priority = priority; SetItemTimeout (ci, absoluteExpiration, slidingExpiration, onRemoveCallback, onUpdateCallback, key, doLock); }