Beispiel #1
0
 public SynchronousBus(IWindsorContainer container)
 {
     _container        = container;
     _handlersResolver = new MessageHandlersResolver(container: container,
                                                     handlerInterfaces: new[] { typeof(IHandleInProcessMessages <>), typeof(IHandleMessages <>) },
                                                     excludedHandlerInterfaces: new[] { typeof(IHandleRemoteMessages <>) });
     _messageHandlersInvoker = new MessageHandlersInvoker(container, _handlersResolver);
 }
 public SynchronousBus(IWindsorContainer container)
 {
     _container = container;
     _handlersResolver = new MessageHandlersResolver(container: container,
         handlerInterfaces: new[] { typeof(IHandleInProcessMessages<>), typeof(IHandleMessages<>) },
         excludedHandlerInterfaces: new[] { typeof(IHandleRemoteMessages<>) });
     _messageHandlersInvoker = new MessageHandlersInvoker(container, _handlersResolver);
 }
        public EventsReplayer(IWindsorContainer container)
        {
            var handlerResolver = new MessageHandlersResolver(
                container: container,
                handlerInterfaces: new[] { typeof(IHandleReplayedEvents<>) },
                excludedHandlerInterfaces: new[] { typeof(IHandleRemoteMessages<>) }
            );

            _handlersInvoker = new MessageHandlersInvoker(container, handlerResolver);
        }
 private static void AssertThatThereIsExactlyOneRegisteredHandler(MessageHandlersResolver.MessageHandlerReference[] handlers, object message)
 {
     if (handlers.Length == 0)
     {
         throw new NoHandlerException(message.GetType());
     }
     if (handlers.Length > 1)
     {
         //TODO: Maybe we can avoid these code.
         var realHandlers = handlers.Select(handler => handler.ImplementingClass)
             .Where(handlerType => !typeof(IMessageSpy).IsAssignableFrom(handlerType))
             .ToList();
         if (realHandlers.Count > 1)
         {
             throw new MultipleMessageHandlersRegisteredException(message, realHandlers);
         }
     }
 }
 public MessageHandlersInvoker(IWindsorContainer container, MessageHandlersResolver handlersResolver)
 {
     _container = container;
     _handlersResolver = handlersResolver;
 }
Beispiel #6
0
 public MessageHandlersInvoker(IWindsorContainer container, MessageHandlersResolver handlersResolver)
 {
     _container        = container;
     _handlersResolver = handlersResolver;
 }