public static IMediator GetMediator(this ServiceRegistrar serviceRegistrar)
        {
            if (serviceRegistrar == null)
            {
                return(null);
            }

            var result = serviceRegistrar.GetInstance <IMediator>();

            return(result);
        }
Пример #2
0
 protected virtual void Dispose(bool disposing)
 {
     if (disposing)
     {
         lock (_currentLock)
         {
             _configuration   = null;
             _serviceProvider = null;
             _container?.Dispose();
             _current = null;
         }
     }
 }
Пример #3
0
        /// <param name="services">These are application scoped services, could be ASP.NET core services, etc</param>
        /// <param name="performRegistrations">action that would perform registrations, etc</param>
        public static ServiceRegistrar Bootstrap(Action <ContainerBuilder> performRegistrations)
        {
            if (_current == null)
            {
                lock (_currentLock)
                {
                    if (_current == null)
                    {
                        var builder = new ContainerBuilder();

                        performRegistrations?.Invoke(builder);

                        var container = builder.Build();

                        _current = new ServiceRegistrar(container);
                    }
                }
            }

            return(_current);
        }
Пример #4
0
        public static IValidator <T> GetValidatorFor <T>(this ServiceRegistrar registrar, string registrationKey)
        {
            registrar.TryGetInstance(registrationKey, out IValidator <T> validator);

            return(validator);
        }
Пример #5
0
        public static IValidator <T> GetValidatorFor <T>(this ServiceRegistrar registrar)
        {
            var result = registrar.GetInstance <IValidator <T> >();

            return(result);
        }