public async Task StartExecutionLoopAsync() { while (true) { var item = _inputProvider.SelectOption(_settingMenu, e => e.Name); await item.Action(); } }
public string GetCurrentProblemKey() { var solvers = _solverProvider.AvailableSolvers().ToList(); var problemKey = _configurationProvider.Get(ConfigurationConstants.ProblemKeyKey); if (solvers.Contains(problemKey)) { return(problemKey); } var key = _inputProvider.SelectOption(solvers); _inputProvider.RequestValueSaving(ConfigurationConstants.ProblemKeyKey, key, _configurationProvider); return(key); }