示例#1
0
        private void LoadAllModules()
        {
            Logger.Debug("Loading modules...");

            var moduleTypes = AbstractModule.FindDependedModuleTypesRecursivelyIncludingGivenModule(_modules.StartupModuleType)
                              .Distinct().ToList();

            Logger.Debug("Found " + moduleTypes.Count + " modules in total.");

            RegisterModules(moduleTypes);

            CreateModules(moduleTypes);

            _modules.EnsureKernelModuleToBeFirst();

            _modules.EnsureStartupModuleToBeLast();

            SetDependencies();

            Logger.DebugFormat("{0} modules loaded.", _modules.Count);
        }