public override void Save() { try { if (HasFileStoreChanged) { _hasFileStoreEverChanged = true; } StudyStore.UpdateConfiguration(_configuration); // if the default deletion rule was modified, kick-off a re-apply rules work item if (HasDeletionRuleChanged) { var bridge = new ReapplyRulesBridge(); bridge.ReapplyAll(new RulesEngineOptions { ApplyDeleteActions = true }); } _fileStoreDirectory = _currentFileStoreDirectory = _configuration.FileStoreDirectory; _currentDeletionRule = _configuration.DefaultDeletionRule.Clone(); //Just update all kinds of properties. NotifyFileStoreChanged(); NotifyDeletionRuleChanged(null); NotifyServiceControlLinkPropertiesChanged(); ShowValidation(false); } catch (Exception e) { ExceptionHandler.Report(e, Host.DesktopWindow); } }
public override void Start() { _delaySetFileStoreDirectory = new DelayedEventPublisher(RealSetFileStoreDirectory); _activityMonitor = WorkItemActivityMonitor.Create(); _activityMonitor.IsConnectedChanged += ActivityMonitorOnIsConnectedChanged; _configuration = StudyStore.GetConfiguration(); _fileStoreDirectory = _currentFileStoreDirectory = _configuration.FileStoreDirectory; UpdateFileStoreDriveName(); MaximumUsedSpaceChanged(); _currentDeletionRule = _configuration.DefaultDeletionRule.Clone(); base.Start(); }