/// <summary> /// Constructs a <see cref="ConsoleApplication"/> /// </summary> /// <param name="commandModuleResolver"></param> /// <param name="commandRouteBuilder"></param> /// <param name="catalog"></param> /// <param name="commandResolver"></param> public ConsoleApplication(ICommandModuleResolver commandModuleResolver, ICommandRouteBuilder commandRouteBuilder, ICommandCatalog catalog, ICommandResolver commandResolver) { CommandModuleResolver = commandModuleResolver; CommandRouteBuilder = commandRouteBuilder; Catalog = catalog; CommandResolver = commandResolver; var modules = CommandModuleResolver.GetCommandModules(); RegisterModules(modules); }