fix for stripping prefix on single enums (#7726)

This commit is contained in:
lborupj 2018-03-09 07:33:34 +01:00 committed by William Cheng
parent 1947220159
commit e73eeb4fdf

View File

@ -263,21 +263,25 @@ public class DefaultCodegen {
} }
/** /**
* Returns the common prefix of variables for enum naming * Returns the common prefix of variables for enum naming if
* two or more variables are present
* *
* @param vars List of variable names * @param vars List of variable names
* @return the common prefix for naming * @return the common prefix for naming
*/ */
public String findCommonPrefixOfVars(List<Object> vars) { public String findCommonPrefixOfVars(List<Object> vars) {
try { if (vars.size() > 1) {
String[] listStr = vars.toArray(new String[vars.size()]); try {
String prefix = StringUtils.getCommonPrefix(listStr); String[] listStr = vars.toArray(new String[vars.size()]);
// exclude trailing characters that should be part of a valid variable String prefix = StringUtils.getCommonPrefix(listStr);
// e.g. ["status-on", "status-off"] => "status-" (not "status-o") // exclude trailing characters that should be part of a valid variable
return prefix.replaceAll("[a-zA-Z0-9]+\\z", ""); // e.g. ["status-on", "status-off"] => "status-" (not "status-o")
} catch (ArrayStoreException e) { return prefix.replaceAll("[a-zA-Z0-9]+\\z", "");
return ""; } catch (ArrayStoreException e) {
// do nothing, just return default value
}
} }
return "";
} }
/** /**