public SiteMapBuilderSet( string instanceName, bool securityTrimmingEnabled, bool enableLocalization, bool visibilityAffectsDescendants, bool useTitleIfDescriptionNotProvided, ISiteMapBuilder siteMapBuilder, ICacheDetails cacheDetails ) { if (string.IsNullOrEmpty(instanceName)) throw new ArgumentNullException("instanceName"); if (siteMapBuilder == null) throw new ArgumentNullException("siteMapBuilder"); if (cacheDetails == null) throw new ArgumentNullException("cacheDetails"); this.instanceName = instanceName; this.securityTrimmingEnabled = securityTrimmingEnabled; this.enableLocalization = enableLocalization; this.visibilityAffectsDescendants = visibilityAffectsDescendants; this.useTitleIfDescriptionNotProvided = useTitleIfDescriptionNotProvided; this.siteMapBuilder = siteMapBuilder; this.cacheDetails = cacheDetails; }
public SiteMapBuilderSet( string instanceName, bool securityTrimmingEnabled, bool enableLocalization, bool visibilityAffectsDescendants, bool useTitleIfDescriptionNotProvided, ISiteMapBuilder siteMapBuilder, ICacheDetails cacheDetails ) { if (string.IsNullOrEmpty(instanceName)) { throw new ArgumentNullException("instanceName"); } if (siteMapBuilder == null) { throw new ArgumentNullException("siteMapBuilder"); } if (cacheDetails == null) { throw new ArgumentNullException("cacheDetails"); } this.instanceName = instanceName; this.securityTrimmingEnabled = securityTrimmingEnabled; this.enableLocalization = enableLocalization; this.visibilityAffectsDescendants = visibilityAffectsDescendants; this.useTitleIfDescriptionNotProvided = useTitleIfDescriptionNotProvided; this.siteMapBuilder = siteMapBuilder; this.cacheDetails = cacheDetails; }
public SiteMapBuilderSet( string instanceName, bool securityTrimmingEnabled, bool enableLocalization, ISiteMapBuilder siteMapBuilder, ICacheDetails cacheDetails ) { if (string.IsNullOrEmpty(instanceName)) { throw new ArgumentNullException("instanceName"); } if (siteMapBuilder == null) { throw new ArgumentNullException("siteMapBuilder"); } if (cacheDetails == null) { throw new ArgumentNullException("cacheDetails"); } this.instanceName = instanceName; this.securityTrimmingEnabled = securityTrimmingEnabled; this.enableLocalization = enableLocalization; this.siteMapBuilder = siteMapBuilder; this.cacheDetails = cacheDetails; }
public void Add(string key, LazyLock item, ICacheDetails cacheDetails) { var policy = new CacheItemPolicy(); // Set timeout policy.Priority = CacheItemPriority.NotRemovable; if (IsTimespanSet(cacheDetails.AbsoluteCacheExpiration)) { policy.AbsoluteExpiration = DateTimeOffset.Now.Add(cacheDetails.AbsoluteCacheExpiration); } else if (IsTimespanSet(cacheDetails.SlidingCacheExpiration)) { policy.SlidingExpiration = cacheDetails.SlidingCacheExpiration; } // Add dependencies var dependencies = (IList <ChangeMonitor>)cacheDetails.CacheDependency.Dependency; if (dependencies != null) { foreach (var dependency in dependencies) { policy.ChangeMonitors.Add(dependency); } } // Setting priority to not removable ensures an // app pool recycle doesn't unload the item, but a timeout will. policy.Priority = CacheItemPriority.NotRemovable; // Setup callback policy.RemovedCallback = CacheItemRemoved; cache.Add(key, item, policy); }
public SiteMapBuilderSet( string instanceName, bool securityTrimmingEnabled, bool enableLocalization, ISiteMapBuilder siteMapBuilder, ICacheDetails cacheDetails ) : this(instanceName, securityTrimmingEnabled, enableLocalization, true, true, siteMapBuilder, cacheDetails) { }
public void Add(string key, LazyLock item, ICacheDetails cacheDetails) { DateTime absolute = System.Web.Caching.Cache.NoAbsoluteExpiration; TimeSpan sliding = System.Web.Caching.Cache.NoSlidingExpiration; if (IsTimespanSet(cacheDetails.AbsoluteCacheExpiration)) { absolute = DateTime.UtcNow.Add(cacheDetails.AbsoluteCacheExpiration); } else if (IsTimespanSet(cacheDetails.SlidingCacheExpiration)) { sliding = cacheDetails.SlidingCacheExpiration; } var dependency = (CacheDependency)cacheDetails.CacheDependency.Dependency; Context.Cache.Insert(key, item, dependency, absolute, sliding, CacheItemPriority.NotRemovable, this.OnItemRemoved); }
public SiteMapBuilderSet( string instanceName, bool securityTrimmingEnabled, bool enableLocalization, ISiteMapBuilder siteMapBuilder, ICacheDetails cacheDetails ) : this( instanceName, securityTrimmingEnabled, enableLocalization, true, true, siteMapBuilder, cacheDetails ) { }
public SiteMap GetOrAdd(string siteMapCacheKey, Func<SiteMap> createFunction, ICacheDetails cacheDetails) { SiteMap siteMap; var success = cacheProvider.TryGetValue(siteMapCacheKey, out siteMap); if (!success) { System.Diagnostics.Debug.WriteLine($"Cache Miss: {siteMapCacheKey}"); siteMap = createFunction(); cacheProvider.Add(siteMapCacheKey, siteMap, cacheDetails); } else { System.Diagnostics.Debug.WriteLine($"Cache Hit: {siteMapCacheKey}"); } return siteMap; }
public SiteMapBuilderSet( string instanceName, bool securityTrimmingEnabled, bool enableLocalization, ISiteMapBuilder siteMapBuilder, ICacheDetails cacheDetails ) { if (string.IsNullOrEmpty(instanceName)) throw new ArgumentNullException("instanceName"); if (siteMapBuilder == null) throw new ArgumentNullException("siteMapBuilder"); if (cacheDetails == null) throw new ArgumentNullException("cacheDetails"); this.instanceName = instanceName; this.securityTrimmingEnabled = securityTrimmingEnabled; this.enableLocalization = enableLocalization; this.siteMapBuilder = siteMapBuilder; this.cacheDetails = cacheDetails; }
public void Add(string key, LazyLock item, ICacheDetails cacheDetails) { // NOTE: cacheDetails is normally used to set the timeout - you might // need to roll your own method for doing that. Context.Session[key] = item; }
public SiteMapBuilderSet(string builderSetName, ISiteMapDataSource siteMapDataSource, ICacheDetails cacheDetails) { this.siteMapDataSource = siteMapDataSource; this.builderSetName = builderSetName; this.cacheDetails = cacheDetails; }
public void Add(string key, T item, ICacheDetails cacheDetails) { }