Java: Support special characters in enum values

and use upper case for enum names

Conflicts:
	samples/client/petstore/java/default/src/main/java/io/swagger/client/JSON.java
	samples/client/petstore/java/default/src/main/java/io/swagger/client/model/Order.java
	samples/client/petstore/java/default/src/main/java/io/swagger/client/model/Pet.java
This commit is contained in:
xhh
2015-08-24 16:50:57 +08:00
parent 3f8dbf416d
commit 8408a97aef
15 changed files with 134 additions and 37 deletions

View File

@@ -14,6 +14,8 @@ public class JSON {
mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
mapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
mapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);
mapper.registerModule(new JodaModule());
}

View File

@@ -0,0 +1,14 @@
public enum {{datatypeWithEnum}} {
{{#allowableValues}}{{#enumVars}}{{name}}("{{value}}"){{^-last}}, {{/-last}}{{#-last}};{{/-last}}{{/enumVars}}{{/allowableValues}}
private String value;
StatusEnum(String value) {
this.value = value;
}
@Override
public String toString() {
return value;
}
}

View File

@@ -18,13 +18,10 @@ import com.fasterxml.jackson.annotation.JsonProperty;
{{>generatedAnnotation}}
public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#serializableModel}}implements Serializable{{/serializableModel}} {
{{#vars}}{{#isEnum}}
public enum {{datatypeWithEnum}} {
{{#allowableValues}}{{#values}} {{.}}, {{/values}}{{/allowableValues}}
};{{/isEnum}}{{#items.isEnum}}{{#items}}
public enum {{datatypeWithEnum}} {
{{#allowableValues}}{{#values}} {{.}}, {{/values}}{{/allowableValues}}
};
{{/items}}{{/items.isEnum}}
{{>enumClass}}{{/isEnum}}{{#items.isEnum}}{{#items}}
{{>enumClass}}{{/items}}{{/items.isEnum}}
private {{{datatypeWithEnum}}} {{name}} = {{{defaultValue}}};{{/vars}}
{{#vars}}