public static IMessageBus AddMessageBus(this IServiceCollection services, IMessageBusAdminClient messageBusAdmin,
                                                IMessageBusClient messageBusClient, MessageBusOptions?options = null)
        {
            var messageBus = (IMessageBus) new Abstractions.MessageBus(new MessageHandlerResolver(services),
                                                                       messageBusAdmin, messageBusClient, new MessageProcessorResolver(services), options);

            services.AddSingleton(messageBus);

            return(messageBus);
        }
Пример #2
0
 public MessageBus(IMessageHandlerResolver messageHandlerResolver,
                   IMessageBusAdminClient messageBusAdmin, IMessageBusClient messageBusClient,
                   IMessageProcessorResolver messageProcessorResolver,
                   MessageBusOptions?messageBusOptions = null)
 {
     _messageHandlerResolver   = messageHandlerResolver;
     _messageBusAdminClient    = messageBusAdmin;
     _messageBusClient         = messageBusClient;
     _messageProcessorResolver = messageProcessorResolver;
     _messageBusOptions        = messageBusOptions ?? new MessageBusOptions();
     _messageTypePropertyName  = _messageBusOptions.MessageTypePropertyName;
 }