/// <summary> /// Removes the action at observer specified by notification name /// </summary> /// <param name="notificationName">Notification name.</param> /// <param name="action">Action.</param> public void RemoveActionAtObserver(string notificationName, System.Action <Parameters> action) { if (this.eventObservers.ContainsKey(notificationName)) { ObserverList eventObserver = this.eventObservers[notificationName]; eventObserver.RemoveObserver(action); } }
/// <summary> /// Posts an event specified by name that requires parameters. Observers associated with this event will be called. /// Requires the parameters class to be passed. /// </summary> public void PostEvent(string notificationName, Parameters parameters) { if (this.eventObservers.ContainsKey(notificationName)) { ObserverList eventObserver = this.eventObservers[notificationName]; eventObserver.NotifyObservers(parameters); } }
/// <summary> /// Posts an event specified by name that does not require any parameters. /// Observers associated with this event will be called. /// </summary> public void PostEvent(string notificationName) { if (eventObservers.ContainsKey(notificationName)) { ObserverList eventObserver = eventObservers[notificationName]; eventObserver.NotifyObservers(); } }
/// <summary> /// Removes the action at observer specified by notification name /// </summary> /// <param name="notificationName">Notification name.</param> /// <param name="action">Action.</param> public void RemoveActionAtObserver(string notificationName, Action action) { if (eventObservers.ContainsKey(notificationName)) { ObserverList eventObserver = eventObservers[notificationName]; eventObserver.RemoveObserver(action); } }
/// <summary> /// Removes all observers under the specified notification name /// </summary> /// <param name="notificationName">Notification name.</param> public void RemoveObserver(string notificationName) { if (this.eventObservers.ContainsKey(notificationName)) { ObserverList eventObserver = this.eventObservers[notificationName]; eventObserver.RemoveAllObservers(); this.eventObservers.Remove(notificationName); } }
public void DetachObserver( ILzsObserver observerTarget ) { for( int i = 0; i < ObserverList.Count(); i++ ) { ILzsObserver Observer = ObserverList[i].Target as ILzsObserver; if( Observer == null || Observer == observerTarget ) { ObserverList.RemoveAt(i); } } }
public void AddObserver(string notificationName, System.Action action) { //if there is already an existing key, add the listener to the observer list if(this.eventObservers.ContainsKey(notificationName)) { ObserverList eventObserver = this.eventObservers[notificationName]; eventObserver.AddObserver(action); } //create a new instance of an observer list else { ObserverList eventObserver = new ObserverList(); eventObserver.AddObserver(action); this.eventObservers.Add(notificationName,eventObserver); } }
public void NotifyAll( string message = "" ) { foreach( WeakReference observer in ObserverList ) { ILzsObserver Observer = observer.Target as ILzsObserver; if( Observer == null ) { ObserverList.Remove(observer); } else { Observer.OnSubjectNotify( SubjectName, message ); } } }
/// <summary> /// Adds an observer to listen to specified by notification name. Action has no parameters. /// </summary> public void AddObserver(string notificationName, System.Action action) { //if there is already an existing key, add the listener to the observer list if (this.eventObservers.ContainsKey(notificationName)) { ObserverList eventObserver = this.eventObservers[notificationName]; eventObserver.AddObserver(action); } //create a new instance of an observer list else { ObserverList eventObserver = new ObserverList(); eventObserver.AddObserver(action); this.eventObservers.Add(notificationName, eventObserver); } }
public void AttachObserver( ILzsObserver observer ) { ObserverList.Add( new WeakReference(observer) ); }
public Observable(string name) { Name = name; _observers = new ObserverList(); }
public SocketClientHandle GetClientHandle(string endPoint) { return(ObserverList.SingleOrDefault(c => c.TheEndPoint.ToString() == endPoint)); }
public void TestList() { ObserverList <int> observerCollection = new ObserverList <int>(); Test(observerCollection); }