/// <summary> /// 停止监控。 /// </summary> public void StopWatching(IConfigParameter getParameter) { IConfigChangeWatcher configWatcher = GetConfigWatcher(getParameter); if (configWatcher != null) { configWatcher.StopWatching(); } }
/// <summary> /// 获取某入口参数对应配置的监控。 /// </summary> protected IConfigChangeWatcher GetConfigWatcher(IConfigParameter getParameter) { Check.Argument.IsNotNull("getParameter", getParameter); IConfigChangeWatcher configWatcher = null; watcherMappings.TryGetValue(getParameter.GroupName, out configWatcher); return(configWatcher); }
/// <summary> /// 安装监控。 /// </summary> /// <param name="watcher">监控。</param> protected void SetupWacher(IConfigChangeWatcher watcher) { string configWatchKey = watcher.GetParameter.GroupName; if (!watcherMappings.ContainsKey(configWatchKey)) { lock (synObj) { if (!watcherMappings.ContainsKey(configWatchKey)) { watcherMappings.Add(configWatchKey, watcher); watcher.Changed += new ConfigChangedEventHandler(OnConfigChanged); watcher.StartWatching(); } } } }