protected override IMessagePublishTopologyConfigurator CreateMessageTopology <T>(Type type) { var exchangeTypeSelector = new MessageExchangeTypeSelector <T>(ExchangeTypeSelector); var messageTopology = new RabbitMqMessagePublishTopology <T>(_messageTopology.GetMessageTopology <T>(), exchangeTypeSelector); var connector = new ImplementedMessageTypeConnector <T>(this, messageTopology); ImplementedMessageTypeCache <T> .EnumerateImplementedTypes(connector); OnMessageTopologyCreated(messageTopology); return(messageTopology); }
public ImplementedMessageTypeConnector(IRabbitMqPublishTopologyConfigurator publishTopology, RabbitMqMessagePublishTopology <TMessage> messagePublishTopologyConfigurator) { _publishTopology = publishTopology; _messagePublishTopologyConfigurator = messagePublishTopologyConfigurator; }