in c3r-cli/src/main/java/com/amazonaws/c3r/io/schema/InteractiveSchemaGenerator.java [284:315]
Boolean promptYesOrNo(final String questionPrompt, final Boolean defaultAnswer) {
final var promptSB = new StringBuilder(questionPrompt).append(", [y]es or [n]o");
if (defaultAnswer != null) {
if (defaultAnswer) {
promptSB.append(" (default `yes`)");
} else {
promptSB.append(" (default `no`)");
}
}
promptSB.append("? ");
consoleOutput.print(promptSB);
final String userInput = readNextLineLowercase();
final Boolean answer;
if (userInput.isBlank()) {
if (defaultAnswer != null) {
answer = defaultAnswer;
} else {
consoleOutput.println("Expected [y]es or [n]o, but found no input.");
answer = null;
}
} else if ("yes".startsWith(userInput)) {
answer = true;
} else if ("no".startsWith(userInput)) {
answer = false;
} else {
consoleOutput.println("Expected [y]es or [n]o, but got `" + userInput + "`.");
answer = null;
}
return answer;
}