コード例 #1
0
        /// <summary>
        /// No more configuration needed - start event store and message bus.
        /// </summary>
        /// <param name="cfg"></param>
        /// <returns></returns>
        public static IMessageBus Start(this BaseConfiguration cfg)
        {
            AutoSubscribeToHandledMessages(cfg);

            IMessageBus    messageBus = BuildMessageBus(cfg);
            MessageBusHost busHost    = BuildMessageBusHost(cfg);
            EventStoreHost eStoreHost = BuildEventStoreHost(cfg, messageBus);

            eStoreHost.Start();
            busHost.Start();

            return(messageBus);
        }
コード例 #2
0
        private static EventStoreHost BuildEventStoreHost(BaseConfiguration cfg, IMessageBus messageBus)
        {
            IEventPublisher eventPublisher = EventStoreConfigurationExtensions.GetEventPublisher(cfg, false);

            if (eventPublisher == null)
            {
                eventPublisher = new MessageBusEventPublisher(messageBus);
            }
            IDocumentStoreFactory docStoreFactory = EventStoreConfigurationExtensions.GetDocumentStoreFactory(cfg);
            EventStoreDB          eStore          = EventStoreConfigurationExtensions.GetEventStoreDB(cfg);

            EventStoreHost host = new EventStoreHost(eStore, eventPublisher, docStoreFactory);

            return(host);
        }