in azure-functions-maven-plugin/src/main/java/com/microsoft/azure/maven/function/AddMojo.java [264:295]
protected Map<String, String> prepareTemplateParameters(final FunctionTemplate template,
final BindingTemplate bindingTemplate,
final Map<String, String> params)
throws MojoFailureException {
for (final String property : template.getMetadata().getUserPrompt()) {
String initValue = System.getProperty(property);
final List<String> options = getOptionsForUserPrompt(property);
final FunctionSettingTemplate settingTemplate = bindingTemplate == null ?
null : bindingTemplate.getSettingTemplateByName(property);
final String helpMessage = (settingTemplate != null && settingTemplate.getHelp() != null) ?
settingTemplate.getHelp() : "";
Log.info(format("Trigger specific parameter [%s]:%s", property,
TemplateResources.getResource(helpMessage)));
if (settings != null && !settings.isInteractiveMode()) {
if (options != null && options.size() > 0) {
final String foundElement = findElementInOptions(options, initValue);
initValue = foundElement == null ? options.get(0) : foundElement;
}
assureInputInBatchMode(initValue, StringUtils::isNotEmpty, str -> params.put(property, str), false);
} else {
if (options == null) {
params.put(property, getStringInputFromUser(property, initValue, settingTemplate));
} else {
assureInputFromUser(format("the value for %s: ", property), System.getProperty(property), options, str -> params.put(property, str)
);
}
}
}
return params;
}