Ejemplo n.º 1
0
 /// <summary>
 /// TBD
 /// </summary>
 /// <param name="subscriber">TBD</param>
 public void Subscribe(ISubscriber <T> subscriber)
 {
     ReactiveStreamsCompliance.RequireNonNullSubscriber(subscriber);
     ReactiveStreamsCompliance.TryOnSubscribe(subscriber, new MaybeSubscription(subscriber, Promise));
     Promise.Task.ContinueWith(t =>
     {
         ReactiveStreamsCompliance.TryOnError(subscriber, t.Exception);
     }, TaskContinuationOptions.NotOnRanToCompletion);
 }
Ejemplo n.º 2
0
 /// <summary>
 /// TBD
 /// </summary>
 /// <param name="subscriber">TBD</param>
 public void Subscribe(ISubscriber <T> subscriber)
 {
     try
     {
         ReactiveStreamsCompliance.RequireNonNullSubscriber(subscriber);
         ReactiveStreamsCompliance.TryOnSubscribe(subscriber, CancelledSubscription.Instance);
         ReactiveStreamsCompliance.TryOnError(subscriber, Cause);
     }
     catch (Exception e)
     {
         if (!(e is ISpecViolation))
         {
             throw;
         }
     }
 }
Ejemplo n.º 3
0
 public void Subscribe(ISubscriber <T> subscriber)
 {
     try
     {
         ReactiveStreamsCompliance.RequireNonNullSubscriber(subscriber);
         ReactiveStreamsCompliance.TryOnSubscribe(subscriber, new MaybeSubscription(subscriber, Promise));
         Promise.Task.ContinueWith(t =>
         {
             ReactiveStreamsCompliance.TryOnError(subscriber, t.Exception);
         }, TaskContinuationOptions.NotOnRanToCompletion);
     }
     catch (Exception)
     {
         //case sv: SpecViolation ⇒ ec.reportFailure(sv)
         throw;
     }
 }