commandBuilder.add(new FailedDownloadsCommand(failedDownloads));
commandBuilder.add(new RestartCommand(core, failedDownloads));
commandBuilder.add(new ResearchCommand(core));
commandBuilder.add(new FailedDownloadsCommand(failedDownloads));
commandBuilder.add(new RestartCommand(core, failedDownloads));
commandBuilder.add(new ResearchCommand(core));
String[] words = line.split(" +");
String commandName = words[0];
Collection<Command> eligibleCommands = findEligibleCommands(commandName);
String[] words = line.split(" +");
String commandName = words[0];
Collection<Command> eligibleCommands = findEligibleCommands(commandName);
Command command = eligibleCommands.iterator().next();
List<String> parameters = from(asList(words)).skip(1).toList();
state = command.execute(state, parameters, writer);
Command command = eligibleCommands.iterator().next();
List<String> parameters = from(asList(words)).skip(1).toList();
state = command.execute(state, parameters, writer);