Thursday, 3 October 2013

Java - enum valueOf override naming convention

Java - enum valueOf override naming convention

Say you have a the following enum:
public enum Color {
RED("R"), GREEN("G"), BLUE("B");
private String shortName;
private Color(String shortName) {
this.shortName = shortName;
}
public static Color getColorByName(String shortName) {
for (Color color : Color.values()) {
if (color.shortName.equals(shortName)) {
return color;
}
}
throw new IllegalArgumentException("Illegal color name: " +
shortName);
}
}
What is the naming convention for overriding valueOf(String name)?
permissiveValueOf(String name)
customValueOf(String name)
forName(String name)
getEnum(String name)
getColor(String name)