Esempio n. 1
0
        private void Send(Oplog oplog)
        {
            using (var channel = _rabbitConnection.CreateModel())
            {
                channel.ExchangeDeclare(LogCreatedExchange, "fanout", true);

                var properties = channel.CreateBasicProperties();
                properties.Persistent = true;
                properties.MessageId  = Guid.NewGuid().ToString("N");
                properties.Timestamp  = new AmqpTimestamp(DateTimeOffset.UtcNow.ToUnixTimeMilliseconds());

                var logCreatedEvent = new LogCreatedEvent
                {
                    Oplog = oplog
                };

                var json = _jsonUtil.SerializeObject(logCreatedEvent);
                channel.BasicPublish(LogCreatedExchange, string.Empty, properties, json.StringToBytes());
            }
        }