Exemplo n.º 1
0
 /// <summary>
 /// Subcsribes <paramref name="ObjectThatConsumesItems"/> to <paramref name="ObjectThatProducesItems"/>, so that when <paramref name="ObjectThatProducesItems"/> produces items <paramref name="ObjectThatConsumesItems"/> begins consuming
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="ObjectThatConsumesItems"></param>
 /// <param name="ObjectThatProducesItems"></param>
 public static void ObserveCollection <T>(this IConcurrentInvokable <T> ObjectThatConsumesItems, IConcurrentOutput <T> ObjectThatProducesItems)
 {
     ObjectThatProducesItems.HookEvents(ObjectThatConsumesItems);
 }
Exemplo n.º 2
0
 private static void UnHookEvents <T>(this IConcurrentEvent <T> host, IConcurrentInvokable <T> subscriber)
 {
     host.Finished          -= subscriber.Invoke;
     host.CollectionChanged -= subscriber.Invoke;
     host.Started           -= subscriber.Invoke;
 }
Exemplo n.º 3
0
 public static void StopObserving <T>(this IConcurrentInvokable <T> ObjectThatConsumesItems, IConcurrentOutput <T> ObjectThatProducesItems)
 {
     ObjectThatProducesItems.UnHookEvents(ObjectThatConsumesItems);
 }