예제 #1
0
        public ProductDeserializer(IFieldService fieldService, IServiceFactory serviceFactory, ICacheItemWatcher cacheItemWatcher, IContextStorage contextStorage, IConnectionProvider connectionProvider)
        {
            _fieldService = fieldService;

            _contentService = serviceFactory.GetContentService();

            _cacheItemWatcher = cacheItemWatcher;

            _contextStorage = contextStorage;

            _customer = connectionProvider.GetCustomer();
        }
예제 #2
0
 public CloneBatchAction(
     IArticleService articleService,
     IFieldService fieldService,
     IProductService productService,
     Func <ITransaction> createTransaction,
     IContentDefinitionService definitionService,
     ICacheItemWatcher cacheItemWatcher)
     : base(articleService, fieldService, productService, createTransaction)
 {
     _definitionService = definitionService;
     _cacheItemWatcher  = cacheItemWatcher;
 }
예제 #3
0
        public DefinitionEditorController(IContentDefinitionService contentDefinitionService, DefinitionEditorService definitionEditorService, IFieldService fieldService, IServiceFactory serviceFactory, ICacheItemWatcher cacheItemWatcher)
        {
            _contentDefinitionService = contentDefinitionService;

            _definitionEditorService = definitionEditorService;

            definitionEditorService.PathSeparator = DefinitionTreeNode.Separator;

            _fieldService = fieldService;

            _contentService = serviceFactory.GetContentService();

            _cacheItemWatcher = cacheItemWatcher;
        }
예제 #4
0
        public CustomerCodeInstance(IConnectionProvider connectionProvider, ILogger logger)
        {
            CacheProvider = new VersionedCacheProviderBase(logger);
            Invalidator   = new DpcContentInvalidator(CacheProvider, logger);

            var customer = connectionProvider.GetCustomer();

            if (customer != null)
            {
                Watcher = new CustomerCoreCacheItemWatcher(InvalidationMode.All, TimeSpan.FromSeconds(15),
                                                           Invalidator, connectionProvider, logger, databaseType: customer.DatabaseType);
                Tracker = new StructureCacheTracker(customer.ConnectionString, customer.DatabaseType);
                Watcher.AttachTracker(Tracker);
                ((CacheItemWatcherBase)Watcher).Start();
            }
        }
예제 #5
0
 public LocalSystemCachedLoader(IContentDefinitionService definitionService,
                                VersionedCacheProviderBase cacheProvider,
                                ICacheItemWatcher cacheItemWatcher,
                                IReadOnlyArticleService articleService,
                                IFieldService fieldService,
                                ISettingsService settingsService,
                                IList <IConsumerMonitoringService> consumerMonitoringServices,
                                IArticleFormatter formatter, IConnectionProvider connectionProvider) : base(definitionService,
                                                                                                            cacheProvider, cacheItemWatcher, articleService, fieldService, settingsService, consumerMonitoringServices, formatter, connectionProvider)
 {
     DataDirectory = AppDomain.CurrentDomain.GetData("DataDirectory") as string;
     if (DataDirectory == null)
     {
         throw new InvalidOperationException("Должен быть определен DataDirectory");
     }
     ArchiveFiles = true;
 }
예제 #6
0
 public CloneAction(IArticleService articleService, IFieldService fieldService, IProductService productService, Func <ITransaction> createTransaction, ICacheItemWatcher cacheItemWatcher)
     : base(articleService, fieldService, productService, createTransaction)
 {
     _cacheItemWatcher = cacheItemWatcher;
 }