示例#1
0
        public static void Main()
        {
            EventBus = new EventBusRabbitMQ();
            EventBus.Model.ExchangeDeclare(exchange: EventBus.Exchange, type: ExchangeType.Fanout);

            var routingKey = string.Empty;
            var queueName  = EventBus.Model.QueueDeclare().QueueName;

            EventBus.Model.QueueBind(queue: queueName, exchange: EventBus.Exchange, routingKey: routingKey);

            Console.WriteLine("[*] Waiting for messages.");

            var consumer = new EventingBasicConsumer(EventBus.Model);

            consumer.Received += (model, ea) =>
            {
                var body    = ea.Body.ToArray();
                var message = Encoding.UTF8.GetString(body);

                Console.WriteLine("[x] Received '{0}'", message);
            };
            EventBus.Model.BasicConsume(queue: queueName, autoAck: true, consumer: consumer);

            Console.WriteLine("Press [enter] to exit.");
            Console.ReadLine();
        }
示例#2
0
        public static void Main(string[] args)
        {
            EventBus = new EventBusRabbitMQ();
            var queueName = "job_queue";

            EventBus.Model.QueueDeclare(queue: queueName, durable: true, exclusive: false, autoDelete: false, arguments: null);
            EventBus.Model.BasicQos(prefetchSize: 0, prefetchCount: 1, global: false);

            Console.WriteLine("[*] Waiting for tasks.");

            var consumer = new EventingBasicConsumer(EventBus.Model);

            consumer.Received += (model, ea) =>
            {
                var body    = ea.Body.ToArray();
                var message = Encoding.UTF8.GetString(body);
                Console.WriteLine("[x] Received '{0}' task", message);

                int secunds = new Random().Next(2, 5);
                Thread.Sleep(secunds * 1000);

                Console.WriteLine("[x] '{0}' task done", message);

                EventBus.Model.BasicAck(deliveryTag: ea.DeliveryTag, multiple: false);
            };
            EventBus.Model.BasicConsume(queue: queueName, autoAck: true, consumer: consumer);

            Console.WriteLine("Press [enter] to exit.");
            Console.ReadLine();
        }
示例#3
0
        public static void Main(string[] args)
        {
            EventBus = new EventBusRabbitMQ(exchange: "MicroService");
            EventBus.Model.ExchangeDeclare(exchange: EventBus.Exchange, type: ExchangeType.Direct);

            SendMessage();

            Console.WriteLine(" Press [enter] to exit.");
            Console.ReadLine();
        }
示例#4
0
        public static void Main(string[] args)
        {
            EventBus = new EventBusRabbitMQ(exchange: "");
            var queueName = "Hi";

            EventBus.Model.QueueDeclare(queue: queueName, durable: false, exclusive: false, autoDelete: false, arguments: null);

            SendMessage(queueName);
            Console.WriteLine("Press [enter] to exit.");
            Console.ReadLine();
        }
示例#5
0
        public static void Main(string[] args)
        {
            EventBus = new EventBusRabbitMQ();
            var queueName = "Hi";

            EventBus.Model.QueueDeclare(queue: queueName, durable: false, exclusive: false, autoDelete: false, arguments: null);

            var consumer = new EventingBasicConsumer(EventBus.Model);

            consumer.Received += (model, ea) =>
            {
                var body    = ea.Body.ToArray();
                var message = Encoding.UTF8.GetString(body);

                Console.WriteLine("Received: {0}", message);
            };
            EventBus.Model.BasicConsume(queue: queueName, autoAck: true, consumer: consumer);

            Console.WriteLine("Press [enter] to exit.");
            Console.ReadLine();
        }
示例#6
0
 public UserController(IEntityQueryableRepository <User> repository, IMapper mapper, IEventBusRabbitMQ eventBus) : base(repository, mapper)
 {
     _eventBus = eventBus;
 }
示例#7
0
 public TransactionController(IEntityRepository <Transaction> repository, IMapper mapper, IEventBusRabbitMQ eventBus) : base(repository, mapper)
 {
     _eventBus = eventBus;
 }
 public SecondController(ILogger <SecondController> logger, IEventBusRabbitMQ eventBus)
 {
     _logger   = logger;
     _eventBus = eventBus;
 }
示例#9
0
 public PaymentController(IJobsMongoContext context, IMapper mapper, IEventBusRabbitMQ eventBus) : base(context.PaymentRepository, mapper)
 {
     _eventBus = eventBus;
 }
示例#10
0
 public FirstController(ILogger <FirstController> logger, IEventBusRabbitMQ eventBus)
 {
     _logger   = logger;
     _eventBus = eventBus;
 }