public static Task Publish(this IMessageBrokerService messageBrokerService, string topic, object payload) { if (messageBrokerService == null) { throw new ArgumentNullException(nameof(messageBrokerService)); } if (topic == null) { throw new ArgumentNullException(nameof(topic)); } if (payload == null) { throw new ArgumentNullException(nameof(payload)); } var messagePayload = new MessagePayload <JObject>(payload.GetType().Name, JObject.FromObject(payload)); var message = new Message <JObject>(topic, messagePayload); return(messageBrokerService.Publish(message)); }
public Message(string topic, MessagePayload <TPayload> payload) { Topic = topic ?? throw new ArgumentNullException(nameof(topic)); Payload = payload ?? throw new ArgumentNullException(nameof(payload)); }