/// <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);
     }
 }
Beispiel #6
0
 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);
     }
 }
Beispiel #8
0
 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);
     }
 }
Beispiel #10
0
 public void AttachObserver( ILzsObserver observer )
 {
     ObserverList.Add( new WeakReference(observer) );
 }
Beispiel #11
0
 public Observable(string name)
 {
     Name       = name;
     _observers = new ObserverList();
 }
Beispiel #12
0
 public SocketClientHandle GetClientHandle(string endPoint)
 {
     return(ObserverList.SingleOrDefault(c => c.TheEndPoint.ToString() == endPoint));
 }
Beispiel #13
0
        public void TestList()
        {
            ObserverList <int> observerCollection = new ObserverList <int>();

            Test(observerCollection);
        }