private void OnReloadRecurringConfig(object state)
        {
            _recurringConfig = RecurringSettingConfiguration.Reload();

            if (RecurringSettingConfiguration.ChangeToken != null)
            {
                RecurringSettingConfiguration.ChangeToken.RegisterChangeCallback(OnReloadRecurringConfig, null);
            }
        }
        public IRevaleeSettingConfigurator AddRecurringConfig(IConfiguration config)
        {
            if (config == null)
            {
                throw new ArgumentNullException(nameof(config));
            }
            _recurringConfig = new RevaleeRecurringSettingConfiguration(config.GetSection(SettingsKey.RevaleeSection));
            if (RecurringSettingConfiguration.ChangeToken != null)
            {
                RecurringSettingConfiguration.ChangeToken.RegisterChangeCallback(OnReloadRecurringConfig, null);
            }

            return(this);
        }