protected virtual void FillModules( List <CafModuleDescriptor> modules, IServiceCollection services, Type startupModuleType) { foreach (var moduleType in CafModuleHelper.FindAllModuleTyps(startupModuleType)) { modules.Add(CreateModuleDescriptor(services, moduleType)); } }
protected virtual void SetDependencies(List <CafModuleDescriptor> modules, CafModuleDescriptor module) { foreach (var dependedModuleType in CafModuleHelper.GetDependedModuleTypes(module.Type)) { var dependedModule = modules.FirstOrDefault(m => m.Type == dependedModuleType); if (dependedModule == null) { throw new CafException("Could not find a depended module " + dependedModuleType.AssemblyQualifiedName + " for " + module.Type.AssemblyQualifiedName); } module.AddDependency(dependedModule); } }