github.com/phrase/openapi@v0.0.0-20240514140800-49e8a106740e/openapi-generator/templates/java/libraries/microprofile/enumClass.mustache (about) 1 @XmlType(name="{{datatypeWithEnum}}") 2 @XmlEnum({{dataType}}.class) 3 public enum {{datatypeWithEnum}} { 4 5 {{#allowableValues}} 6 {{#enumVars}}@XmlEnumValue({{#isInteger}}"{{/isInteger}}{{#isDouble}}"{{/isDouble}}{{#isLong}}"{{/isLong}}{{#isFloat}}"{{/isFloat}}{{{value}}}{{#isInteger}}"{{/isInteger}}{{#isDouble}}"{{/isDouble}}{{#isLong}}"{{/isLong}}{{#isFloat}}"{{/isFloat}}) {{name}}({{dataType}}.valueOf({{{value}}})){{^-last}}, {{/-last}}{{#-last}};{{/-last}}{{/enumVars}} 7 {{/allowableValues}} 8 9 10 private {{dataType}} value; 11 12 {{datatypeWithEnum}} ({{dataType}} v) { 13 value = v; 14 } 15 16 public {{dataType}} value() { 17 return value; 18 } 19 20 @Override 21 public String toString() { 22 return String.valueOf(value); 23 } 24 25 public static {{datatypeWithEnum}} fromValue(String v) { 26 for ({{#datatypeWithEnum}}{{{.}}}{{/datatypeWithEnum}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}} b : {{#datatypeWithEnum}}{{{.}}}{{/datatypeWithEnum}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}}.values()) { 27 if (String.valueOf(b.value).equals(v)) { 28 return b; 29 } 30 } 31 {{#useNullForUnknownEnumValue}}return null;{{/useNullForUnknownEnumValue}}{{^useNullForUnknownEnumValue}}throw new IllegalArgumentException("Unexpected value '" + v + "'");{{/useNullForUnknownEnumValue}} 32 } 33 }