Example #1
0
        public void Publish <T_message>(T_message message)
        {
            var messageType = typeof(T_message);

            var metadata = _configuration.MessageDefinitions.FirstOrDefault(md => md.MessageType == messageType && md.MessageAction == Core.MessageAction.Event);
            //if (_messageQueues.ContainsKey(messageType))
            //{
            //var messageQueue = _messageQueues[messageType];
            var body       = _serialiser.Serialise(message);
            var properties = _channel.CreateBasicProperties();

            properties.Persistent = true;

            _channel.BasicPublish(metadata.QueueName, string.Empty, properties, body);
            //}
        }
Example #2
0
        public void Publish <T_message>(T_message message)
        {
            var messageType = typeof(T_message);
            var metadata    = _configuration.MessageDefinitions.FirstOrDefault(md => md.MessageType == messageType && md.MessageAction == Core.MessageAction.Event);

            if (metadata != null)
            {
                //CreateTopic(metadata.QueueName);
                var             body            = _serialiser.Serialise(message);
                BrokeredMessage brokeredMessage = new BrokeredMessage(body);

                var         destination = GetDestinationName(metadata.QueueName, true);
                TopicClient topicClient = _messageFactory.CreateTopicClient(destination);
                topicClient.Send(brokeredMessage);
            }
        }
Example #3
0
        public void Publish <T_message>(T_message message)
        {
            var messageType = typeof(T_message);
            var metadata    = _configuration.MessageDefinitions.FirstOrDefault(md => md.MessageType == messageType && md.MessageAction == Core.MessageAction.Event);

            if (metadata != null)
            {
                var destinationName = GetDestinationName(metadata.QueueName, true);
                if (_messageQueues.ContainsKey(destinationName))
                {
                    var producer     = _messageQueues[destinationName];
                    var body         = _serialiser.Serialise(message);
                    var messageBytes = _session.CreateBytesMessage(body);

                    producer.Send(messageBytes);
                }
            }
        }
        public static Stream ToStream <T_message>(this T_message message, IMessageBusSerialiser serialiser)
        {
            var bytes = serialiser.Serialise(message);

            return(new MemoryStream(bytes, false));
        }
Example #5
0
        public void Serialize(object message, Stream stream)
        {
            var data = _serialiser.Serialise(message);

            stream.Write(data, 0, data.Length);
        }