/// <summary> /// Un-subscribes listeners on ZooKeeper child changes under given path /// </summary> /// <param name="path"> /// The parent path. /// </param> /// <param name="listener"> /// The listener. /// </param> public void Unsubscribe(string path, IZooKeeperChildListener listener) { Guard.NotNullNorEmpty(path, "path"); Guard.NotNull(listener, "listener"); this.EnsuresNotDisposed(); this.childChangedHandlers.AddOrUpdate( path, new ChildChangedEventItem(), (key, oldValue) => { oldValue.ChildChanged -= listener.HandleChildChange; return(oldValue); }); Logger.Debug("Unsubscribed child changes handler " + listener.GetType().Name + " for path: " + path); }
/// <summary> /// Un-subscribes listeners on ZooKeeper child changes under given path /// </summary> /// <param name="path"> /// The parent path. /// </param> /// <param name="listener"> /// The listener. /// </param> public void Unsubscribe(string path, IZooKeeperChildListener listener) { Guard.Assert <ArgumentException>(() => !string.IsNullOrEmpty(path)); Guard.Assert <ArgumentNullException>(() => listener != null); this.EnsuresNotDisposed(); this.childChangedHandlers.AddOrUpdate( path, new ChildChangedEventItem(Logger), (key, oldValue) => { oldValue.ChildChanged -= listener.HandleChildChange; return(oldValue); }); Logger.Debug("Unsubscribed child changes handler " + listener.GetType().Name + " for path: " + path); }
/// <summary> /// Un-subscribes listeners on ZooKeeper child changes under given path /// </summary> /// <param name="path"> /// The parent path. /// </param> /// <param name="listener"> /// The listener. /// </param> public void Unsubscribe(string path, IZooKeeperChildListener listener) { Guard.NotNullNorEmpty(path, "path"); Guard.NotNull(listener, "listener"); this.EnsuresNotDisposed(); this.childChangedHandlers.AddOrUpdate( path, new ChildChangedEventItem(), (key, oldValue) => { oldValue.ChildChanged -= listener.HandleChildChange; return oldValue; }); Logger.Debug("Unsubscribed child changes handler " + listener.GetType().Name + " for path: " + path); }
/// <summary> /// Un-subscribes listeners on ZooKeeper child changes under given path /// </summary> /// <param name="path"> /// The parent path. /// </param> /// <param name="listener"> /// The listener. /// </param> public void Unsubscribe(string path, IZooKeeperChildListener listener) { Guard.Assert<ArgumentException>(() => !string.IsNullOrEmpty(path)); Guard.Assert<ArgumentNullException>(() => listener != null); this.EnsuresNotDisposed(); this.childChangedHandlers.AddOrUpdate( path, new ChildChangedEventItem(Logger), (key, oldValue) => { oldValue.ChildChanged -= listener.HandleChildChange; return oldValue; }); Logger.Debug("Unsubscribed child changes handler " + listener.GetType().Name + " for path: " + path); }