public void ProcessModel(IKernel kernel, ComponentModel model) { CacheConfigHolder cacheConfigHolder = null; bool allowModelCache = IsCacheModelOn(kernel, model); if (allowModelCache) { model.Dependencies.Add(new DependencyModel(DependencyType.Service, null, typeof(CacheInterceptor), false)); model.Interceptors.Add(new InterceptorReference(typeof(CacheInterceptor))); cacheConfigHolder = kernel[typeof(CacheConfigHolder)] as CacheConfigHolder; if (IsCacheModelOn(kernel, model)) { CacheConfig config = CreateCacheConfig(kernel, model); cacheConfigHolder.Register(model.Implementation, config); } } }
/// <summary> /// Initializes a new instance of the <see cref="CacheInterceptor"/> class. /// </summary> /// <param name="transactionConfHolder">The transaction conf holder.</param> public CacheInterceptor(CacheConfigHolder transactionConfHolder) { _cacheConfigHolder = transactionConfHolder; }
public CacheInterceptor(CacheConfigHolder transactionConfHolder) { _cacheConfigHolder = transactionConfHolder; }