Example #1
0
        public CacheProvider(ICache cache, ILogging logger, ICacheDependencyManager cacheDependencyManager, ICacheFeatureSupport featureSupport)
        {
            _cache          = cache;
            _logger         = logger;
            _featureSupport = featureSupport;
            if (_featureSupport == null)
            {
                _featureSupport = new CacheFeatureSupport(cache);
            }
            if (_config.IsCacheDependencyManagementEnabled)
            {
                _cacheDependencyManager = cacheDependencyManager;
                if (_cacheDependencyManager == null)
                {
                    _cacheDependencyManager = new GenericDependencyManager(_cache, _logger);
                }
                _logger.WriteInfoMessage(string.Format("CacheKey dependency management enabled, using {0}.", _cacheDependencyManager.Name));
            }
            else
            {
                _cacheDependencyManager = null;  // Dependency Management is disabled
                _logger.WriteInfoMessage("CacheKey dependency management not enabled.");
            }

            _featureSupport.Cache = _cache;
        }
Example #2
0
        public CacheProvider(ICache cache, ILogging logger, CacheConfig config, ICacheDependencyManager cacheDependencyManager, ICacheFeatureSupport featureSupport)
        {
            _cache                  = cache;
            _logger                 = logger;
            _featureSupport         = featureSupport;
            _config                 = config ?? CacheConfig.Create();
            _cacheDependencyManager = cacheDependencyManager;

            if (_config.IsCacheDependencyManagementEnabled && _cacheDependencyManager != null)
            {
                _logger.WriteInfoMessage(string.Format("CacheKey dependency management enabled, using {0}.", _cacheDependencyManager.Name));
            }
            else
            {
                _cacheDependencyManager = null;  // Dependency Management is disabled
                _logger.WriteInfoMessage("CacheKey dependency management not enabled.");
            }
        }
Example #3
0
        public static CacheFactoryComponentResult Create(ICache cache, ICacheDependencyManager dependencyManager, ICacheFeatureSupport featureSupport)
        {
            var result = new CacheFactoryComponentResult();

            if (cache == null || featureSupport == null)
            {
                throw new ArgumentNullException("Cache or Feature support component cannot be null");
            }
            result.Cache             = cache;
            result.DependencyManager = dependencyManager;
            result.FeatureSupport    = featureSupport;
            return(result);
        }