CQRSMicroservices.Framework.EventBus.RegisterBuilder C# (CSharp) Метод

RegisterBuilder() публичный Метод

public RegisterBuilder ( QueryModelBuilder queryModelBuilder ) : void
queryModelBuilder QueryModelBuilder
Результат void
    public void RegisterBuilder(QueryModelBuilder queryModelBuilder)
    {
      foreach(var eventType in queryModelBuilder.GetHandledEevents())
      {
        if(!_handlers.ContainsKey(eventType))
        {
          _handlers.Add(eventType, new List<QueryModelBuilder>());
        }
        _handlers[eventType].Add(queryModelBuilder);
      }
    }
  }

Usage Example

Пример #1
0
        private static void RegisterHandlers(IEnumerable <CommandHandler> commandHandlers, IEnumerable <QueryHandler> queryHandlers, IEnumerable <QueryModelBuilder> queryModelBuilders)
        {
            CommandBus commandBus = GetService <CommandBus>();
            EventBus   eventBus   = GetService <EventBus>();
            QueryBus   queryBus   = GetService <QueryBus>();

            commandHandlers.ToList().ForEach(ch => commandBus.RegisterHandler(ch));
            queryModelBuilders.ToList().ForEach(qmb => eventBus.RegisterBuilder(qmb));
            queryHandlers.ToList().ForEach(qh => queryBus.RegisterHandler(qh));
        }