public Injector(IInjectorConfiguration initialMapping) { mapping = initialMapping.GetMapping().ToDictionary(pair => pair.Key, pair => pair.Value); mapping.Add(typeof(IInjector), new InjectorMappingType { Object = this }); }
/// <summary> /// Initializes injector with specified configuration. /// Injector can be initialized only once. Use <c>Clear</c> to reset initialization status. /// </summary> /// <param name="configuration">Configuration that will be passed to the injector.</param> public static void Initialize(IInjectorConfiguration configuration) { lock (InjectorLock) { if (current != null) { throw new InvalidOperationException("Injector already initialized."); } current = new Injector(configuration); } }