Пример #1
0
 /// <summary>
 ///     Subscribe to a channel from the fiber.
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="fiber"></param>
 /// <param name="channel"></param>
 /// <param name="handler"></param>
 /// <returns></returns>
 public static IDisposable Subscribe <T>(this IAsyncFiber fiber, ISubscriberPort <T> channel,
                                         Func <T, Task> handler) =>
 channel.Subscribe(fiber, handler);
Пример #2
0
 public IDisposable Subscribe(IFiber fiber, Action <TOut> receive) => _output.Subscribe(fiber, receive);
Пример #3
0
 protected AsyncBatchSubscriberBase(ISubscriberPort <T> channel, IAsyncFiber fiber, TimeSpan interval)
 {
     _sub     = channel.Subscribe(fiber, OnMessageAsync);
     Fiber    = fiber;
     Interval = interval;
 }
Пример #4
0
 /// <summary>
 /// Subscribe to a channel from the fiber.
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="fiber"></param>
 /// <param name="channel"></param>
 /// <param name="handler"></param>
 /// <returns></returns>
 public static IDisposable Subscribe <T>(this IFiber fiber, ISubscriberPort <T> channel, Action <T> handler)
 {
     return(channel.Subscribe(fiber, handler));
 }
Пример #5
0
 /// <summary>
 /// Quick way to connect a Subscriber port to a Publisher port.  Useful connecting channels and Agents
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="port"></param>
 /// <param name="fiber"></param>
 /// <param name="receive"></param>
 /// <returns></returns>
 public static IDisposable Connect <T>(this ISubscriberPort <T> port,
                                       IFiber fiber,
                                       IPublisherPort <T> receive)
 {
     return(port.Subscribe(StubFiber.StartNew(), x => receive.Publish(x)));
 }
Пример #6
0
 /// <summary>
 ///     Quick way to connect a Subscriber port to a Publisher port.  Useful connecting channels and Agents
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="port"></param>
 /// <param name="receive"></param>
 /// <returns></returns>
 public static IDisposable Connect <T>(this ISubscriberPort <T> port,
                                       IPublisherPort <T> receive) =>
 port.Subscribe(receive.Publish);
Пример #7
0
 public void SetUpSubscribe(ISubscriberPort <T> port) => port.Subscribe(_fiber, OnReceive);