partial void OnCreateContainer(UnityContainer container) { var serializer = container.Resolve<ITextSerializer>(); var metadata = container.Resolve<IMetadataProvider>(); var commandBus = new CommandBus(new MessageSender(Database.DefaultConnectionFactory, "SqlBus", "SqlBus.Commands"), serializer); var eventBus = new EventBus(new MessageSender(Database.DefaultConnectionFactory, "SqlBus", "SqlBus.Events"), serializer); var commandProcessor = new CommandProcessor(new MessageReceiver(Database.DefaultConnectionFactory, "SqlBus", "SqlBus.Commands"), serializer); var eventProcessor = new EventProcessor(new MessageReceiver(Database.DefaultConnectionFactory, "SqlBus", "SqlBus.Events"), serializer); container.RegisterInstance<ICommandBus>(commandBus); container.RegisterInstance<IEventBus>(eventBus); container.RegisterInstance<ICommandHandlerRegistry>(commandProcessor); container.RegisterInstance<IProcessor>("CommandProcessor", commandProcessor); container.RegisterInstance<IEventHandlerRegistry>(eventProcessor); container.RegisterInstance<IProcessor>("EventProcessor", eventProcessor); // Event log database and handler. container.RegisterType<SqlMessageLog>(new InjectionConstructor("MessageLog", serializer, metadata)); container.RegisterType<IEventHandler, SqlMessageLogHandler>("SqlMessageLogHandler"); container.RegisterType<ICommandHandler, SqlMessageLogHandler>("SqlMessageLogHandler"); RegisterRepository(container); RegisterEventHandlers(container, eventProcessor); }
private void RegisterEventHandlers(UnityContainer container, EventProcessor eventProcessor) { eventProcessor.Register(container.Resolve<RegistrationProcessRouter>()); eventProcessor.Register(container.Resolve<OrderViewModelGenerator>()); eventProcessor.Register(container.Resolve<PricedOrderViewModelGenerator>()); eventProcessor.Register(container.Resolve<ConferenceViewModelGenerator>()); eventProcessor.Register(container.Resolve<SeatAssignmentsViewModelGenerator>()); eventProcessor.Register(container.Resolve<SeatAssignmentsHandler>()); eventProcessor.Register(container.Resolve<global::Conference.OrderEventHandler>()); eventProcessor.Register(container.Resolve<SqlMessageLogHandler>()); }
public given_event_processor() { this.receiverMock = new Mock<IMessageReceiver>(); this.processor = new EventProcessor(this.receiverMock.Object, CreateSerializer()); }
public given_event_processor() { System.Diagnostics.Trace.Listeners.Clear(); this.receiverMock = new Mock<IMessageReceiver>(); this.processor = new EventProcessor(this.receiverMock.Object, CreateSerializer()); }