public LogPruningImpl(FileSystemAbstraction fs, LogFiles logFiles, LogProvider logProvider, LogPruneStrategyFactory strategyFactory, Clock clock, Config config) { this._fs = fs; this._logFiles = logFiles; this._msgLog = logProvider.getLog(this.GetType()); this._strategyFactory = strategyFactory; this._clock = clock; this._pruneStrategy = strategyFactory.StrategyFromConfigValue(fs, logFiles, clock, config.Get(GraphDatabaseSettings.keep_logical_logs)); // Register listener for updates config.RegisterDynamicUpdateListener(GraphDatabaseSettings.keep_logical_logs, (prev, update) => updateConfiguration(update)); }
private void UpdateConfiguration(string pruningConf) { this._pruneStrategy = _strategyFactory.strategyFromConfigValue(_fs, _logFiles, _clock, pruningConf); _msgLog.info("Retention policy updated, value will take effect during the next evaluation."); }