public static IMessageConsumer CreateEventSubscriber(string topic, string subscription, string consumerId, string[] handlerProviderNames, ConsumerConfig consumerConfig = null) { subscription = Configuration.Instance.FormatAppName(subscription); var handlerProvider = new EventSubscriberProvider(handlerProviderNames); var commandBus = GetCommandBus(); var messagePublisher = GetMessagePublisher(); var messageQueueClient = IoCFactory.Resolve <IMessageQueueClient>(); var eventSubscriber = new EventSubscriber(messageQueueClient, handlerProvider, commandBus, messagePublisher, subscription, topic, consumerId, consumerConfig); return(eventSubscriber); }
public static IMessageConsumer CreateEventSubscriber(string topic, string subscription, string consumerId, params string[] handlerProviderNames) { if (!string.IsNullOrEmpty(FrameworkConfigurationExtension.AppName)) { subscription = $"{FrameworkConfigurationExtension.AppName}.{subscription}"; } var container = IoCFactory.Instance.CurrentContainer; var handlerProvider = new EventSubscriberProvider(handlerProviderNames); var commandBus = GetCommandBus(); var messagePublisher = GetMessagePublisher(); var messageQueueClient = IoCFactory.Resolve <IMessageQueueClient>(); var eventSubscriber = new EventSubscriber(messageQueueClient, handlerProvider, commandBus, messagePublisher, subscription, topic, consumerId); return(eventSubscriber); }
public static IMessageProcessor CreateEventSubscriber(TopicSubscription[] topicSubscriptions, string subscription, string consumerId, string[] handlerProviderNames, ConsumerConfig consumerConfig = null) { subscription = Configuration.Instance.FormatAppName(subscription); var handlerProvider = new EventSubscriberProvider(handlerProviderNames); var commandBus = GetCommandBus(); var messagePublisher = GetMessagePublisher(); var messageQueueClient = ObjectProviderFactory.GetService <IMessageQueueClient>(); var eventSubscriber = new EventSubscriber(messageQueueClient, handlerProvider, commandBus, messagePublisher, subscription, topicSubscriptions, consumerId, consumerConfig); MessageProcessors.Add(eventSubscriber); return(eventSubscriber); }