コード例 #1
0
 public Task SendDeviceSpecificFrame(FrameModel frame)
 {
     return(Task.Run(() =>
     {
         var messageProvider = MessageProviderFactory.Create(frame.Device.IncludeSaveConfig);
         var message = messageProvider.CreateMessageFor(frame);
         _linProvider.Send(message);
     }));
 }
コード例 #2
0
        public void TestTestableMessageResponder()
        {
            MessageProviderFactory factory = new MessageProviderFactory(new  TestMessageResponder());
            MessageModel           message = factory.GetMessage();

            Assert.AreEqual(message.Content, new MessageModel()
            {
                Content = "Hello World from Unit Test"
            }.Content);
        }
コード例 #3
0
        public Task ReadById(FrameModel frame)
        {
            return(Task.Run(() =>
            {
                var messageProvider = MessageProviderFactory.Create(frame.Device.IncludeSaveConfig);
                var message = messageProvider.CreateReadByIdMessage(frame);

                _linProvider.Send(message);
                _linProvider.Send(messageProvider.CreateSubscriberMessage());
            }));
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: SergeyParis/MessageBrokers
        static void Main(string[] args)
        {
            var messageProvider = MessageProviderFactory.GetProvider(ProviderType.Numbers);
            var rabbit          = new RabbitMqClient();

            rabbit.CreateQueue(QueueName);

            while (true)
            {
                var message = messageProvider.GetMessage();

                Console.WriteLine($"Publish: {message}");
                rabbit.PublishMessage(message.TransformToByte(), QueueName);

                Thread.Sleep(300);
            }
        }
コード例 #5
0
        public Task UpdateFrameId(FrameModel frame)
        {
            return(Task.Run(() =>
            {
                var newFrameId = frame.FrameId;
                _linProvider.GetPIDFor(ref newFrameId);

                var messageProvider = MessageProviderFactory.Create(frame.Device.IncludeSaveConfig);
                var message = messageProvider.CreateUpdateFrameIdMessage(frame, newFrameId);

                _linProvider.Send(message);

                if (frame.Device.IncludeSaveConfig)
                {
                    _linProvider.Send(messageProvider.CreateSaveConfigMessage());
                }

                _linProvider.Send(messageProvider.CreateSubscriberMessage());
            }));
        }