Example #1
0
 public void Dispose()
 {
     if (parent != null)
     {
         parent.observerList.Remove(unsubscribeTarget);
         unsubscribeTarget = null;
         parent            = null;
     }
 }
Example #2
0
 public IDisposable Subscribe(IFuncObserver <T, R> observer)
 {
     try
     {
         if (!isStopped)
         {
             observerList.Add(observer);
             return(new Subscription(this, observer));
         }
         else
         {
             observer.OnCompleted();
         }
     }
     catch (Exception e)
     {
         observer.OnError(e);
     }
     return(EmptyDisposable.Singleton);
 }
Example #3
0
 public Subscription(FuncSubject <T, R> parent, IFuncObserver <T, R> unsubscribeTarget)
 {
     this.parent            = parent;
     this.unsubscribeTarget = unsubscribeTarget;
 }