public static void CreateWithNulLExchange()
        {
            var model = new Mock <IModel>(MockBehavior.Strict);

            model.Setup(_ => _.Dispose());

            var connection = new Mock <IConnection>(MockBehavior.Strict);

            connection.Setup(_ => _.CreateModel()).Returns(model.Object);
            connection.Setup(_ => _.Dispose());

            var connectionFactory = new Mock <IConnectionFactory>(MockBehavior.Strict);

            connectionFactory.Setup(_ => _.CreateConnection()).Returns(connection.Object);

            using (var receiver = new RabbitReceiver("name", connectionFactory.Object, "queue", null,
                                                     new List <string>(), 20, true))
            {
                receiver.Name.Should().Be("name");
                receiver.Queue.Should().Be("queue");
                receiver.Exchange.Should().BeNull();
                receiver.PrefetchCount.Should().Be(20);
                receiver.AutoAck.Should().Be(true);
                receiver.Connection.Should().Be(connection.Object);
                receiver.Channel.Should().Be(model.Object);
            }

            connectionFactory.VerifyAll();
            connection.VerifyAll();
            model.VerifyAll();
        }
        public static void StartWithoutPrefetchCount()
        {
            var model = new Mock <IModel>(MockBehavior.Strict);

            model.Setup(_ => _.QueueBind("queue", "exchange", string.Empty, null));
            model.Setup(_ => _.BasicConsume("queue", true, string.Empty, false, false, null, It.IsAny <EventingBasicConsumer>())).Returns(string.Empty);
            model.Setup(_ => _.Dispose());

            var connection = new Mock <IConnection>(MockBehavior.Strict);

            connection.Setup(_ => _.CreateModel()).Returns(model.Object);
            connection.Setup(_ => _.Dispose());

            var connectionFactory = new Mock <IConnectionFactory>(MockBehavior.Strict);

            connectionFactory.Setup(_ => _.CreateConnection()).Returns(connection.Object);

            using (var receiver = new RabbitReceiver("name", connectionFactory.Object, "queue", "exchange",
                                                     new List <string>(), null, true))
            {
                receiver.Start(new Func <IReceiverMessage, Task>(message => Task.CompletedTask));
            }

            connectionFactory.VerifyAll();
            connection.VerifyAll();
            model.VerifyAll();
        }
Example #3
0
        static void Main(string[] args)
        {
            //Create dependecies
            var _elastic          = new ElasticContext();
            var iishelper         = new IISLogHelper();
            var receiver          = new RabbitReceiver();
            var pipeline          = new MessagePipeline(_elastic, iishelper);
            var correlationEngine = new CorrelationEngine(_elastic);

            //Init
            _elastic.Init();
            Console.WriteLine("init");
            Console.ReadKey();
            // pipeline.OnReceiveMessage_Pipeline("IISConnector:2021-05-10 18:13:04 192.168.0.103 GET /Home/Bad1avLogin - 80 - 192.168.0.116 200 0 0 3");
            //  pipeline.OnReceiveMessage_Pipeline("IISConnector:2021-05-11 18:13:04 192.168.0.103 GET /Home/Bad3avLogin - 80 - 192.168.0.116 200 0 0 3");
            // pipeline.OnReceiveMessage_Pipeline("IISConnector:2021-05-12 18:13:04 192.168.0.103 GET /Home/Bad4avLogin - 80 - 192.168.0.116 200 0 0 3");

            //Start proccesses
            Task.Run(() => correlationEngine.Start());
            //receiver.onMessageReceived += pipeline.OnReceiveMessage_Pipeline;
            // receiver.onMessageReceived += Receiver_onMessageReceived_InFile;
            // receiver.onMessageReceived += Receiver_onMessageReceived_InConsole;
            //receiver.Receive();
            Console.ReadKey();
        }
Example #4
0
        static void Main(string[] args)
        {
            AppConfiguration config = GetConfiguration();

            // var testSender = new RabbitSender(config.MessageQueue.Host, config.MessageQueue.ChannelName, sendIntervalMs: 10);

            Func <byte[], SportEvent> messageParser = b => JsonSerializer.Deserialize <SportEvent>(b.AsSpan());

            var dataReceiver = new RabbitReceiver <SportEvent>(
                config.MessageQueue.Host,
                config.MessageQueue.ChannelName,
                messageParser
                );

            var eventsRepo = new EventsRepository(config.ConnectionString);

            var channelPool = new EventsChannelPool(
                eventsRepo.CreateUpdateCommand(),
                config.ChannelPool.MaxChannels
                );

            var eventExchanger = new EventsExchange(dataReceiver, channelPool);

            eventExchanger.Start();
            dataReceiver.Start();
            // testSender.Start();

            WaitForEnter("Press Enter to stop service...");

            // testSender.Stop();
            dataReceiver.Stop();
            eventExchanger.Stop();

            WaitForEnter("Press Enter to close application...");


            void WaitForEnter(string message)
            {
                Console.WriteLine(message);
                Console.ReadLine();
            }
        }
Example #5
0
        /// <summary>
        /// The build receivers.
        /// </summary>
        private void BuildReceivers()
        {
            this.ListenerRegistry = new ListenerRegistry(this);

            this.Configuration.ReceiverConfigurations.ForEach(
                c =>
                    {
                        var receiver = new RabbitReceiver(c, this.ListenerRegistry);
                        this.ComponentTracker.Register(receiver);
                    });
        }
Example #6
0
File: test.cs Project: styleart/ISY
	// Use this for initialization
	void Start () {
		rabbitReceiver = new RabbitReceiver ();
	}