public void Publish(object message) { if (SubscriptionStorage == null) { throw new InvalidOperationException("Cannot publish - no subscription storage has been configured."); } var fullTypes = MessageMapper.GetMessageTypeHierarchy(message.GetType()); var subscribers = SubscriptionStorage .GetSubscribersForMessage(fullTypes) .ToList(); if (!subscribers.Any()) { return; } if (subscribers.Any()) { SendInternal(message, subscribers); } }