public void MessageSpecificationCreated <T>(IMessagePublishPipeSpecification <T> specification)
            where T : class
        {
            IMessagePublishPipeSpecification <T> messageSpecification = _specification.GetMessageSpecification <T>();

            specification.AddParentMessageSpecification(messageSpecification);
        }
        void IPublishPipeSpecificationObserver.MessageSpecificationCreated <T>(IMessagePublishPipeSpecification <T> specification)
        {
            IMessagePublishTopology <T> messagePublishTopology = _topology.GetMessageTopology <T>();

            var topologySpecification = new MessagePublishTopologyPipeSpecification <T>(messagePublishTopology);

            specification.AddParentMessageSpecification(topologySpecification);
        }