public static IWebHostBuilder UseInnkeeperPlatform( this IWebHostBuilder webHostBuilder, Action <WebApp> options, params string[] args) { var webApp = IdentifyWebApp(options); var router = Router.Create(webApp); var moduleCollection = ModuleCollection.Create(webApp); var context = new Parts { WebApp = webApp, Router = router, ModuleCollection = moduleCollection }; BuildInnkeeperPlatform(webHostBuilder, context, args); return(webHostBuilder); }
public static ModuleCollection Create(WebApp webApp) { var modules = new ModuleCollection(); var types = ExposedTypes.GetTypes <IModule>(); foreach (var type in types) { try { var module = (IModule)Activator.CreateInstance(type); modules.Add(module); } catch (Exception ex) { ex.Trace(); } } return(modules); }