private void InitializeDependencyResolver() { if (ninjectDependencyResolver != null) { return; } ninjectDependencyResolver = this.CreateKernel(); var assemblies = new ControllerContainerInitializer().ControllerContainerAssemblies; var loadedModules = ninjectDependencyResolver.GetModules(); foreach (var assembly in assemblies) { var assemblyModules = this.GetNinjectModules(assembly); // check assembly for already registered ninject modules var registeredAssemblyModules = assemblyModules.Where(module => loadedModules.Where(loadedModule => loadedModule.Name.Equals(module.Name, StringComparison.OrdinalIgnoreCase)).Any()); if (registeredAssemblyModules.Any()) { foreach (var module in assemblyModules) { if (!registeredAssemblyModules.Any(registeredModule => registeredModule.Name.Equals(module.Name, StringComparison.OrdinalIgnoreCase))) { ninjectDependencyResolver.Load(module); } } } else { ninjectDependencyResolver.Load(assembly); } } }
/// <summary> /// Handles the Initialized event of the Bootstrapper. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Sitefinity.Data.ExecutedEventArgs"/> instance containing the event data.</param> protected virtual void Bootstrapper_Initialized(object sender, ExecutedEventArgs e) { if (e.CommandName == "Bootstrapped") { var resourcesInitializer = new ResourcesInitializer(); resourcesInitializer.Initialize(); var fileMonitoringInitilizer = new FileMonitoringInitializer(); fileMonitoringInitilizer.Initialize(); var controllerContainerInitializer = new ControllerContainerInitializer(); controllerContainerInitializer.Initialize(this.controllerAssemblies); this.controllerAssemblies = null; // We won't be needing those anymore. Set them free. var layoutsInitializer = new LayoutInitializer(); layoutsInitializer.Initialize(); var designerInitializer = new DesignerInitializer(); designerInitializer.Initialize(); ObjectFactory.Container.RegisterType <ICommentNotificationsStrategy, Telerik.Sitefinity.Frontend.Modules.Comments.ReviewNotificationStrategy>(new ContainerControlledLifetimeManager()); } }
/// <summary> /// Handles the Initialized event of the Bootstrapper. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Sitefinity.Data.ExecutedEventArgs"/> instance containing the event data.</param> protected virtual void Bootstrapper_Initialized(object sender, ExecutedEventArgs e) { if (e.CommandName == "Bootstrapped") { var resourcesInitializer = new ResourcesInitiliazer(); resourcesInitializer.Initialize(); var fileMonitoringInitilizer = new FileMonitoringInitializer(); fileMonitoringInitilizer.Initialize(); var controllerContainerInitializer = new ControllerContainerInitializer(); controllerContainerInitializer.Initialize(); var layoutsInitializer = new LayoutInitializer(); layoutsInitializer.Initialize(); var gridSystemInitializer = new GridSystemInitializer(); gridSystemInitializer.Initialize(); var designerInitializer = new DesignerInitializer(); designerInitializer.Initialize(); } }