Пример #1
0
 public void RegisterCommandHandlersByConvention(IClassLocator classLocator, IContainerBuilder builder)
 {
     foreach (var type in classLocator.FindTypesImplementing <ICommandHandler>())
     {
         builder.RegisterAsImplementedInterfaces(type);
     }
 }
Пример #2
0
        public void RegisterServicesByConvention(IClassLocator classLocator, IContainerBuilder builder)
        {
            foreach (var type in classLocator.FindTypesImplementing <IService>())
            {
                builder.RegisterAsImplementedInterfaces(type);
            }

            foreach (var type in classLocator.FindTypesImplementing <IStatefulService>())
            {
                builder.RegisterSingletonAsImplementedInterfaces(type);
            }
        }
Пример #3
0
 /// <summary>
 /// These are stateless services that are fabricated on request.
 /// </summary>
 public void RegisterAll(IClassLocator classLocator, IContainerBuilder builder)
 {
     RegisterCommandHandlersByConvention(classLocator, builder);
     RegisterQueryHandlersByConvention(classLocator, builder);
     RegisterServicesByConvention(classLocator, builder);
 }
Пример #4
0
 public static void AddLocator(IClassLocator locator)
 => Instance.Add(locator);
Пример #5
0
 public void Add(IClassLocator locator)
 {
     Locators.Add(locator ?? throw new ArgumentNullException(nameof(locator)));
 }