Exemple #1
0
 public EventConsumerAdapter(IEventConsumer <TEvent>[] eventConsumers, ITopicDispatcher topicDispatcher)
 {
     Guard.NotNull(topicDispatcher, nameof(topicDispatcher));
     Guard.NotNull(eventConsumers, nameof(eventConsumers));
     this.eventConsumers  = eventConsumers;
     this.topicDispatcher = topicDispatcher;
 }
Exemple #2
0
 public void Setup()
 {
     requestDispatcher = mockRequestDispatcher.Object;
     topicDispatcher   = mockTopicDispatcher.Object;
     monitor           = mockMonitor.Object;
     messageFactory    = mockMessageFactory.Object;
 }
 public SelfUnsubscribingOrderSampler(ITopicDispatcher topicDispatcher)
 {
     if (topicDispatcher == null)
     {
         throw new ArgumentNullException("topicDispatcher");
     }
     _topicDispatcher = topicDispatcher;
 }
Exemple #4
0
 public Cashier(ITopicDispatcher dispatcher)
 {
     if (dispatcher == null)
     {
         throw new ArgumentNullException("dispatcher");
     }
     _dispatcher = dispatcher;
 }
Exemple #5
0
        /// <summary>
        /// Initializes a new instance of <see cref="NetMQSubscriber"/>
        /// </summary>
        /// <param name="socket">Inner <see cref="SubscriberSocket"/> that receives data from remotes</param>
        /// <param name="messageFactory">Factory for creating <see cref="NetMQMessage"/>s</param>
        /// <param name="topicDispatcher"><see cref="ITopicDispatcher"/> that will route incoming topic messages</param>
        public NetMQSubscriber(SubscriberSocket socket, INetMQMessageFactory messageFactory, ITopicDispatcher topicDispatcher)
            : base(socket, messageFactory)
        {
            this.socket          = socket ?? throw new ArgumentNullException(nameof(socket));
            this.topicDispatcher = topicDispatcher ?? throw new ArgumentNullException(nameof(topicDispatcher));

            socket.ReceiveReady += OnMessageReceived;
        }
Exemple #6
0
        public OrderFulfillment(ITopicDispatcher dispatcher, OrderTaken initiatingMessage)
        {
            _dispatcher = dispatcher;

            _dispatcher.Publish(new CookFood(initiatingMessage.Order,
                                             initiatingMessage.CorrelationId,
                                             initiatingMessage.MessageId));
        }
        public OrderFulfillmentForDodgeyCustomer(ITopicDispatcher dispatcher, OrderTaken initiatingMessage)
        {
            _dispatcher = dispatcher;

            _dispatcher.Publish(new PriceFood(initiatingMessage.Order,
                                              initiatingMessage.CorrelationId,
                                              initiatingMessage.MessageId));
        }
Exemple #8
0
 public Waiter(string name, ITopicDispatcher dispatcher)
 {
     if (dispatcher == null)
     {
         throw new ArgumentNullException("dispatcher");
     }
     _name       = name;
     _dispatcher = dispatcher;
 }
 public AssistantManager(ITopicDispatcher dispatcher)
 {
     if (dispatcher == null)
     {
         throw new ArgumentNullException("dispatcher");
     }
     _dispatcher = dispatcher;
     _costs.Add("Beans on Toast", 12.99);
 }
Exemple #10
0
        public Cook(ITopicDispatcher dispatcher, int sleepDuration)
        {
            if (dispatcher == null)
            {
                throw new ArgumentNullException("dispatcher");
            }
            _dispatcher    = dispatcher;
            _sleepDuration = sleepDuration;

            _recipes.Add("Beans on Toast", new[] { "Beans", "Toast" });
        }
Exemple #11
0
        /// <summary>
        /// Initializes a new instance of <see cref="NetMQFactory"/>
        /// </summary>
        /// <param name="requestDispatcher"><see cref="IRequestDispatcher"/> that will route incoming messages</param>
        /// <param name="topicDispatcher"><see cref="ITopicDispatcher"/> that will route incoming topic messages</param>
        /// <param name="monitor">Monitor that all NetMQ transports will be added to</param>
        /// <param name="messageFactory">Factory for creating <see cref="NetMQMessage"/>s</param>
        public NetMQFactory(
            IRequestDispatcher requestDispatcher,
            ITopicDispatcher topicDispatcher,
            INetMQMonitor monitor,
            INetMQMessageFactory messageFactory
            )
            : base(monitor, monitor, monitor, monitor)
        {
            if (monitor is null)
            {
                throw new ArgumentNullException(nameof(monitor));
            }

            this.requestDispatcher = requestDispatcher ?? throw new ArgumentNullException(nameof(requestDispatcher));
            this.topicDispatcher   = topicDispatcher ?? throw new ArgumentNullException(nameof(topicDispatcher));
            this.messageFactory    = messageFactory ?? throw new ArgumentNullException(nameof(messageFactory));
            this.monitor           = monitor ?? throw new ArgumentNullException(nameof(monitor));
        }
Exemple #12
0
        public MessageDelay(ITopicDispatcher dispatcher)
        {
            if (dispatcher == null)
            {
                throw new ArgumentNullException("dispatcher");
            }
            _dispatcher = dispatcher;

            Task.Factory.StartNew(() =>
            {
                while (!Cancelled)
                {
                    var messages = _messagesToEcho.Where(x => x.HasExpired());

                    foreach (var message in messages)
                    {
                        _dispatcher.Publish((dynamic)message.Echo.Inner);
                    }

                    Thread.Sleep(1000);
                }
            });
        }
 public OrderFulfillmentCoordinator(ITopicDispatcher dispatcher)
 {
     _dispatcher = dispatcher;
 }
 public ReportingSystem(ITopicDispatcher dispatcher)
 {
     _dispatcher = dispatcher;
 }
Exemple #15
0
 public Waiter(string name, ITopicDispatcher dispatcher)
 {
     if (dispatcher == null) throw new ArgumentNullException("dispatcher");
     _name = name;
     _dispatcher = dispatcher;
 }
Exemple #16
0
 public void Setup()
 {
     topicDispatcher = mockTopicDispatcher.Object;
     messageFactory  = mockMessageFactory.Object;
 }