public virtual void Publish <T>(IExchange exchange, string routingKey, IMessage <T> message, Action <IAdvancedPublishConfiguration> configure) { if (exchange == null) { throw new ArgumentNullException("exchange"); } if (routingKey == null) { throw new ArgumentNullException("routingKey"); } if (message == null) { throw new ArgumentNullException("message"); } if (configure == null) { throw new ArgumentNullException("configure"); } var typeName = advancedBus.SerializeType(typeof(T)); var messageBody = advancedBus.Serializer.MessageToBytes(message.Body); message.Properties.Type = typeName; message.Properties.CorrelationId = string.IsNullOrEmpty(message.Properties.CorrelationId) ? advancedBus.GetCorrelationId() : message.Properties.CorrelationId; Publish(exchange, routingKey, message.Properties, messageBody, configure); }
public virtual void Publish <T>(IExchange exchange, string routingKey, IMessage <T> message, Action <IAdvancedPublishConfiguration> configure) where T : class { Preconditions.CheckNotNull(exchange, "exchange"); Preconditions.CheckNotNull(routingKey, "routingKey"); Preconditions.CheckNotNull(message, "message"); Preconditions.CheckNotNull(configure, "configure"); var typeName = advancedBus.SerializeType(typeof(T)); var messageBody = advancedBus.Serializer.MessageToBytes(message.Body); message.Properties.Type = typeName; message.Properties.CorrelationId = string.IsNullOrEmpty(message.Properties.CorrelationId) ? advancedBus.GetCorrelationId() : message.Properties.CorrelationId; Publish(exchange, routingKey, message.Properties, messageBody, configure); }