forked from loafle/openapi-generator-original
[java] Enum in array of array (#66)
This commit is contained in:
parent
a1ff502411
commit
82ee8656fd
@ -19,8 +19,8 @@ package org.openapitools.codegen;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class CodegenParameter {
|
||||
public boolean isFormParam, isQueryParam, isPathParam, isHeaderParam,
|
||||
@ -38,6 +38,7 @@ public class CodegenParameter {
|
||||
public List<String> _enum;
|
||||
public Map<String, Object> allowableValues;
|
||||
public CodegenProperty items;
|
||||
public CodegenProperty mostInnerItems;
|
||||
public Map<String, Object> vendorExtensions = new HashMap<String, Object>();
|
||||
public boolean hasValidation;
|
||||
|
||||
@ -142,6 +143,9 @@ public class CodegenParameter {
|
||||
if (this.items != null) {
|
||||
output.items = this.items;
|
||||
}
|
||||
if (this.mostInnerItems != null) {
|
||||
output.mostInnerItems = this.mostInnerItems;
|
||||
}
|
||||
if(this.vendorExtensions != null){
|
||||
output.vendorExtensions = new HashMap<String, Object>(this.vendorExtensions);
|
||||
}
|
||||
@ -259,6 +263,8 @@ public class CodegenParameter {
|
||||
return false;
|
||||
if (items != null ? !items.equals(that.items) : that.items != null)
|
||||
return false;
|
||||
if (mostInnerItems != null ? !mostInnerItems.equals(that.mostInnerItems) : that.mostInnerItems != null)
|
||||
return false;
|
||||
if (vendorExtensions != null ? !vendorExtensions.equals(that.vendorExtensions) : that.vendorExtensions != null)
|
||||
return false;
|
||||
if (hasValidation != that.hasValidation)
|
||||
@ -335,6 +341,7 @@ public class CodegenParameter {
|
||||
result = 31 * result + (_enum != null ? _enum.hashCode() : 0);
|
||||
result = 31 * result + (allowableValues != null ? allowableValues.hashCode() : 0);
|
||||
result = 31 * result + (items != null ? items.hashCode() : 0);
|
||||
result = 31 * result + (mostInnerItems != null ? mostInnerItems.hashCode() : 0);
|
||||
result = 31 * result + (vendorExtensions != null ? vendorExtensions.hashCode() : 0);
|
||||
result = 31 * result + (hasValidation ? 13:31);
|
||||
result = 31 * result + (required ? 13:31);
|
||||
@ -399,6 +406,7 @@ public class CodegenParameter {
|
||||
", _enum=" + _enum +
|
||||
", allowableValues=" + allowableValues +
|
||||
", items=" + items +
|
||||
", mostInnerItems=" + mostInnerItems +
|
||||
", vendorExtensions=" + vendorExtensions +
|
||||
", hasValidation=" + hasValidation +
|
||||
", required=" + required +
|
||||
|
@ -63,6 +63,7 @@ public class CodegenProperty implements Cloneable {
|
||||
public List<String> _enum;
|
||||
public Map<String, Object> allowableValues;
|
||||
public CodegenProperty items;
|
||||
public CodegenProperty mostInnerItems;
|
||||
public Map<String, Object> vendorExtensions = new HashMap<String, Object>();
|
||||
public boolean hasValidation; // true if pattern, maximum, etc are set (only used in the mustache template)
|
||||
public boolean isInherited;
|
||||
@ -436,6 +437,7 @@ public class CodegenProperty implements Cloneable {
|
||||
result = prime * result + ((isPrimitiveType ? 13:31));
|
||||
result = prime * result + ((isReadOnly ? 13:31));
|
||||
result = prime * result + ((items == null) ? 0 : items.hashCode());
|
||||
result = prime * result + ((mostInnerItems == null) ? 0 : mostInnerItems.hashCode());
|
||||
result = prime * result + ((jsonSchema == null) ? 0 : jsonSchema.hashCode());
|
||||
result = prime * result + ((max == null) ? 0 : max.hashCode());
|
||||
result = prime * result + ((maxLength == null) ? 0 : maxLength.hashCode());
|
||||
@ -700,6 +702,9 @@ public class CodegenProperty implements Cloneable {
|
||||
if (this.items != null) {
|
||||
cp.items = this.items;
|
||||
}
|
||||
if (this.mostInnerItems != null) {
|
||||
cp.mostInnerItems = this.mostInnerItems;
|
||||
}
|
||||
if(this.vendorExtensions != null){
|
||||
cp.vendorExtensions = new HashMap<String, Object>(this.vendorExtensions);
|
||||
}
|
||||
@ -766,6 +771,7 @@ public class CodegenProperty implements Cloneable {
|
||||
", _enum=" + _enum +
|
||||
", allowableValues=" + allowableValues +
|
||||
", items=" + items +
|
||||
", mostInnerItems=" + mostInnerItems +
|
||||
", vendorExtensions=" + vendorExtensions +
|
||||
", hasValidation=" + hasValidation +
|
||||
", isInherited=" + isInherited +
|
||||
|
@ -1899,6 +1899,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
property.isPrimitiveType = true;
|
||||
}
|
||||
property.items = innerProperty;
|
||||
property.mostInnerItems = getMostInnerItems(innerProperty);
|
||||
// inner item is Enum
|
||||
if (isPropertyInnerMostEnum(property)) {
|
||||
// isEnum is set to true when the type is an enum
|
||||
@ -1930,6 +1931,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
property.isPrimitiveType = true;
|
||||
}
|
||||
property.items = innerProperty;
|
||||
property.mostInnerItems = getMostInnerItems(innerProperty);
|
||||
property.dataFormat = innerProperty.dataFormat;
|
||||
// inner item is Enum
|
||||
if (isPropertyInnerMostEnum(property)) {
|
||||
@ -1952,21 +1954,22 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
* @return True if the inner most type is enum
|
||||
*/
|
||||
protected Boolean isPropertyInnerMostEnum(CodegenProperty property) {
|
||||
CodegenProperty currentProperty = property;
|
||||
while (currentProperty != null && (Boolean.TRUE.equals(currentProperty.isMapContainer)
|
||||
|| Boolean.TRUE.equals(currentProperty.isListContainer))) {
|
||||
currentProperty = currentProperty.items;
|
||||
}
|
||||
CodegenProperty currentProperty = getMostInnerItems(property);
|
||||
|
||||
return currentProperty == null ? false : currentProperty.isEnum;
|
||||
}
|
||||
|
||||
protected Map<String, Object> getInnerEnumAllowableValues(CodegenProperty property) {
|
||||
protected CodegenProperty getMostInnerItems(CodegenProperty property) {
|
||||
CodegenProperty currentProperty = property;
|
||||
while (currentProperty != null && (Boolean.TRUE.equals(currentProperty.isMapContainer)
|
||||
|| Boolean.TRUE.equals(currentProperty.isListContainer))) {
|
||||
currentProperty = currentProperty.items;
|
||||
}
|
||||
return currentProperty;
|
||||
}
|
||||
|
||||
protected Map<String, Object> getInnerEnumAllowableValues(CodegenProperty property) {
|
||||
CodegenProperty currentProperty = getMostInnerItems(property);
|
||||
|
||||
return currentProperty == null ? new HashMap<String, Object>() : currentProperty.allowableValues;
|
||||
}
|
||||
@ -2530,6 +2533,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
collectionFormat = StringUtils.isEmpty(collectionFormat) ? "csv" : collectionFormat;
|
||||
CodegenProperty codegenProperty = fromProperty("inner", inner);
|
||||
codegenParameter.items = codegenProperty;
|
||||
codegenParameter.mostInnerItems = codegenProperty.mostInnerItems;
|
||||
codegenParameter.baseType = codegenProperty.dataType;
|
||||
codegenParameter.isContainer = true;
|
||||
codegenParameter.isListContainer = true;
|
||||
@ -2544,6 +2548,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
} else if (ModelUtils.isMapSchema(parameterSchema)) { // for map parameter
|
||||
CodegenProperty codegenProperty = fromProperty("inner", (Schema) parameterSchema.getAdditionalProperties());
|
||||
codegenParameter.items = codegenProperty;
|
||||
codegenParameter.mostInnerItems = codegenProperty.mostInnerItems;
|
||||
codegenParameter.baseType = codegenProperty.dataType;
|
||||
codegenParameter.isContainer = true;
|
||||
codegenParameter.isMapContainer = true;
|
||||
@ -2598,6 +2603,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
codegenParameter.datatypeWithEnum = codegenProperty.datatypeWithEnum;
|
||||
codegenParameter.enumName = codegenProperty.enumName;
|
||||
codegenParameter.items = codegenProperty.items;
|
||||
codegenParameter.mostInnerItems = codegenProperty.mostInnerItems;
|
||||
}
|
||||
|
||||
codegenParameter.collectionFormat = collectionFormat;
|
||||
@ -4084,6 +4090,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
codegenParameter = fromFormProperty(entry.getKey(), inner, imports);
|
||||
CodegenProperty codegenProperty = fromProperty("inner", inner);
|
||||
codegenParameter.items = codegenProperty;
|
||||
codegenParameter.mostInnerItems = codegenProperty.mostInnerItems;
|
||||
codegenParameter.baseType = codegenProperty.dataType;
|
||||
codegenParameter.isPrimitiveType = false;
|
||||
codegenParameter.isContainer = true;
|
||||
@ -4159,6 +4166,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
|
||||
if (codegenProperty.items != null && codegenProperty.items.isEnum) {
|
||||
codegenParameter.items = codegenProperty.items;
|
||||
codegenParameter.mostInnerItems = codegenProperty.mostInnerItems;
|
||||
}
|
||||
|
||||
// import
|
||||
@ -4238,6 +4246,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
}
|
||||
codegenParameter.paramName = toParamName(codegenParameter.baseName);
|
||||
codegenParameter.items = codegenProperty.items;
|
||||
codegenParameter.mostInnerItems = codegenProperty.mostInnerItems;
|
||||
codegenParameter.dataType = getTypeDeclaration(schema);
|
||||
codegenParameter.baseType = getSchemaType(inner);
|
||||
codegenParameter.isContainer = Boolean.TRUE;
|
||||
@ -4272,6 +4281,7 @@ public class DefaultCodegen implements CodegenConfig {
|
||||
}
|
||||
codegenParameter.paramName = toArrayModelParamName(codegenParameter.baseName);
|
||||
codegenParameter.items = codegenProperty.items;
|
||||
codegenParameter.mostInnerItems = codegenProperty.mostInnerItems;
|
||||
codegenParameter.dataType = getTypeDeclaration(arraySchema);
|
||||
codegenParameter.baseType = getSchemaType(arraySchema);
|
||||
codegenParameter.isContainer = Boolean.TRUE;
|
||||
|
@ -13,14 +13,12 @@ public class {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{{#parcela
|
||||
{{^isContainer}}
|
||||
{{>modelInnerEnum}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#items.isEnum}}
|
||||
{{#items}}
|
||||
{{^isContainer}}
|
||||
{{#isContainer}}
|
||||
{{#mostInnerItems}}
|
||||
{{>modelInnerEnum}}
|
||||
{{/isContainer}}
|
||||
{{/items}}
|
||||
{{/items.isEnum}}
|
||||
{{/mostInnerItems}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#jackson}}
|
||||
@JsonProperty("{{baseName}}")
|
||||
{{#withXml}}
|
||||
|
@ -6,14 +6,12 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#seriali
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#items.isEnum}}
|
||||
{{#items}}
|
||||
{{^isContainer}}
|
||||
{{#isContainer}}
|
||||
{{#mostInnerItems}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{/items}}
|
||||
{{/items.isEnum}}
|
||||
{{/mostInnerItems}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#jackson}}
|
||||
@JsonProperty("{{baseName}}")
|
||||
{{/jackson}}
|
||||
|
@ -6,11 +6,11 @@ import javax.xml.bind.annotation.*;
|
||||
{{#description}}@ApiModel(description = "{{{description}}}"){{/description}}
|
||||
|
||||
public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#serializableModel}}implements Serializable{{/serializableModel}} {
|
||||
{{#vars}}{{#isEnum}}
|
||||
{{#vars}}{{#isEnum}}{{^isContainer}}
|
||||
|
||||
{{>enumClass}}{{/isEnum}}{{#items.isEnum}}{{#items}}
|
||||
{{>enumClass}}{{/isContainer}}{{#isContainer}}{{#mostInnerItems}}
|
||||
|
||||
{{>enumClass}}{{/items}}{{/items.isEnum}}
|
||||
{{>enumClass}}{{/mostInnerItems}}{{/isContainer}}{{/isEnum}}
|
||||
{{#isContainer}}
|
||||
private {{{datatypeWithEnum}}} {{name}}{{#required}} = {{{defaultValue}}}{{/required}}{{^required}} = null{{/required}};
|
||||
{{/isContainer}}
|
||||
|
@ -24,10 +24,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
{{/description}}
|
||||
public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {
|
||||
{{#vars}}{{#isEnum}}{{^isContainer}}
|
||||
|
||||
{{>enumClass}}{{/isContainer}}{{/isEnum}}{{#items.isEnum}}{{#items}}
|
||||
|
||||
{{^isContainer}}{{>enumClass}}{{/isContainer}}{{/items}}{{/items.isEnum}}
|
||||
{{>enumClass}}{{/isContainer}}{{#isContainer}}{{#mostInnerItems}}
|
||||
{{>enumClass}}{{/mostInnerItems}}{{/isContainer}}{{/isEnum}}
|
||||
{{#withXml}}
|
||||
@XmlElement(name="{{baseName}}"{{#required}}, required = {{required}}{{/required}})
|
||||
{{/withXml}}
|
||||
|
@ -8,15 +8,13 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#seriali
|
||||
{{#isEnum}}
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{#isContainer}}
|
||||
{{#mostInnerItems}}
|
||||
{{>enumClass}}
|
||||
{{/mostInnerItems}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#items.isEnum}}
|
||||
{{#items}}
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{/items}}
|
||||
{{/items.isEnum}}
|
||||
{{#jackson}}
|
||||
@JsonProperty("{{baseName}}")
|
||||
{{/jackson}}
|
||||
|
@ -6,11 +6,12 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#seriali
|
||||
{{#serializableModel}}
|
||||
private static final long serialVersionUID = 1L;
|
||||
{{/serializableModel}}
|
||||
{{#vars}}{{#isEnum}}
|
||||
{{#vars}}{{#isEnum}}{{^isContainer}}
|
||||
|
||||
{{>enumClass}}{{/isEnum}}{{#items.isEnum}}{{#items}}
|
||||
{{>enumClass}}{{/isContainer}}{{#isContainer}}{{#mostInnerItems}}
|
||||
|
||||
{{>enumClass}}{{/mostInnerItems}}{{/isContainer}}{{/isEnum}}
|
||||
|
||||
{{>enumClass}}{{/items}}{{/items.isEnum}}
|
||||
private {{{datatypeWithEnum}}} {{name}} = {{{defaultValue}}};{{/vars}}
|
||||
|
||||
{{#vars}}
|
||||
|
@ -8,9 +8,9 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#seriali
|
||||
{{/serializableModel}}
|
||||
{{#vars}}{{#isEnum}}{{^isContainer}}
|
||||
|
||||
{{>enumClass}}{{/isContainer}}{{/isEnum}}{{#items.isEnum}}{{#items}}
|
||||
{{>enumClass}}{{/isContainer}}{{#isContainer}}{{#mostInnerItems}}
|
||||
|
||||
{{^isContainer}}{{>enumClass}}{{/isContainer}}{{/items}}{{/items.isEnum}}
|
||||
{{>enumClass}}{{/mostInnerItems}}{{/isContainer}}{{/isEnum}}
|
||||
private {{{datatypeWithEnum}}} {{name}} = {{{defaultValue}}};{{/vars}}
|
||||
|
||||
{{#vars}}
|
||||
|
@ -6,9 +6,9 @@ import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#serializableModel}}implements Serializable{{/serializableModel}} {
|
||||
{{#vars}}{{#isEnum}}{{^isContainer}}
|
||||
|
||||
{{>enumClass}}{{/isContainer}}{{/isEnum}}{{#items.isEnum}}{{#items}}
|
||||
|
||||
{{^isContainer}}{{>enumClass}}{{/isContainer}}{{/items}}{{/items.isEnum}}
|
||||
{{>enumClass}}{{/isContainer}}{{#isContainer}}{{#mostInnerItems}}
|
||||
|
||||
{{>enumClass}}{{/mostInnerItems}}{{/isContainer}}{{/isEnum}}
|
||||
private {{#useBeanValidation}}@Valid{{/useBeanValidation}} {{{datatypeWithEnum}}} {{name}} = {{{defaultValue}}};{{/vars}}
|
||||
|
||||
{{#vars}}
|
||||
|
@ -12,15 +12,13 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#seriali
|
||||
{{#isEnum}}
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{#isContainer}}
|
||||
{{#mostInnerItems}}
|
||||
{{>enumClass}}
|
||||
{{/mostInnerItems}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#items.isEnum}}
|
||||
{{#items}}
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{/items}}
|
||||
{{/items.isEnum}}
|
||||
{{#jackson}}
|
||||
@JsonProperty("{{baseName}}")
|
||||
{{/jackson}}
|
||||
|
@ -14,14 +14,12 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#seriali
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#items.isEnum}}
|
||||
{{#items}}
|
||||
{{^isContainer}}
|
||||
{{#isContainer}}
|
||||
{{#mostInnerItems}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{/items}}
|
||||
{{/items.isEnum}}
|
||||
{{/mostInnerItems}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#jackson}}
|
||||
@JsonProperty("{{baseName}}"){{#withXml}}
|
||||
@JacksonXmlProperty({{#isXmlAttribute}}isAttribute = true, {{/isXmlAttribute}}{{#xmlNamespace}}namespace="{{xmlNamespace}}", {{/xmlNamespace}}localName = "{{#xmlName}}{{xmlName}}{{/xmlName}}{{^xmlName}}{{baseName}}{{/xmlName}}"){{/withXml}}
|
||||
|
@ -1,10 +1,10 @@
|
||||
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||
public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#serializableModel}}implements Serializable{{/serializableModel}} {
|
||||
{{#vars}}{{#isEnum}}
|
||||
{{#vars}}{{#isEnum}}{{^isContainer}}
|
||||
|
||||
{{>enumClass}}{{/isEnum}}{{#items.isEnum}}{{#items}}
|
||||
{{>enumClass}}{{/isContainer}}{{#isContainer}}{{#mostInnerItems}}
|
||||
|
||||
{{>enumClass}}{{/items}}{{/items.isEnum}}
|
||||
{{>enumClass}}{{/mostInnerItems}}{{/isContainer}}{{/isEnum}}
|
||||
private {{{datatypeWithEnum}}} {{name}} = {{{defaultValue}}};{{/vars}}
|
||||
|
||||
public {{classname}} () {
|
||||
|
@ -9,14 +9,12 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#seriali
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{#isContainer}}
|
||||
{{#mostInnerItems}}
|
||||
{{>enumClass}}
|
||||
{{/mostInnerItems}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#items.isEnum}}
|
||||
{{#items}}
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{/items}}
|
||||
{{/items.isEnum}}
|
||||
{{#jackson}}
|
||||
@JsonProperty("{{baseName}}")
|
||||
{{/jackson}}
|
||||
|
@ -6,15 +6,13 @@ public class {{classname}}{{#parent}} extends {{{parent}}}{{/parent}}{{#interfac
|
||||
{{#isEnum}}
|
||||
{{^isContainer}}
|
||||
{{>modelInnerEnum}}
|
||||
{{/isContainer}}
|
||||
{{#isContainer}}
|
||||
{{#mostInnerItems}}
|
||||
{{>modelInnerEnum}}
|
||||
{{/mostInnerItems}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#items.isEnum}}
|
||||
{{#items}}
|
||||
{{^isContainer}}
|
||||
{{>modelInnerEnum}}
|
||||
{{/isContainer}}
|
||||
{{/items}}
|
||||
{{/items.isEnum}}
|
||||
/**
|
||||
{{#description}}
|
||||
* {{{description}}}
|
||||
|
@ -13,15 +13,13 @@ public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#seriali
|
||||
{{#isEnum}}
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{#isContainer}}
|
||||
{{#mostInnerItems}}
|
||||
{{>enumClass}}
|
||||
{{/mostInnerItems}}
|
||||
{{/isContainer}}
|
||||
{{/isEnum}}
|
||||
{{#items.isEnum}}
|
||||
{{#items}}
|
||||
{{^isContainer}}
|
||||
{{>enumClass}}
|
||||
{{/isContainer}}
|
||||
{{/items}}
|
||||
{{/items.isEnum}}
|
||||
{{#jackson}}
|
||||
@JsonProperty("{{baseName}}"){{#withXml}}
|
||||
@JacksonXmlProperty({{#isXmlAttribute}}isAttribute = true, {{/isXmlAttribute}}{{#xmlNamespace}}namespace="{{xmlNamespace}}", {{/xmlNamespace}}localName = "{{#xmlName}}{{xmlName}}{{/xmlName}}{{^xmlName}}{{baseName}}{{/xmlName}}"){{/withXml}}
|
||||
|
@ -1,11 +1,11 @@
|
||||
{{#description}}@ApiModel(description = "{{{description}}}"){{/description}}
|
||||
{{>generatedAnnotation}}
|
||||
public class {{classname}} {{#parent}}extends {{{parent}}}{{/parent}} {{#serializableModel}}implements Serializable{{/serializableModel}} {
|
||||
{{#vars}}{{#isEnum}}
|
||||
{{#vars}}{{#isEnum}}{{^isContainer}}
|
||||
|
||||
{{>enumClass}}{{/isEnum}}{{#items.isEnum}}{{#items}}
|
||||
|
||||
{{>enumClass}}{{/items}}{{/items.isEnum}}
|
||||
{{>enumClass}}{{/isContainer}}{{#isContainer}}{{#mostInnerItems}}
|
||||
|
||||
{{>enumClass}}{{/mostInnerItems}}{{/isContainer}}{{/isEnum}}
|
||||
private {{{datatypeWithEnum}}} {{name}} = {{{defaultValue}}};{{/vars}}
|
||||
|
||||
{{#vars}}
|
||||
|
@ -75,12 +75,14 @@ public class JavaModelEnumTest {
|
||||
Assert.assertEquals(enumVar.baseType, "List");
|
||||
Assert.assertTrue(enumVar.isEnum);
|
||||
|
||||
Assert.assertEquals(enumVar.items.baseName, "name");
|
||||
Assert.assertEquals(enumVar.items.dataType, "String");
|
||||
Assert.assertEquals(enumVar.items.datatypeWithEnum, "NameEnum");
|
||||
Assert.assertEquals(enumVar.items.name, "name");
|
||||
Assert.assertEquals(enumVar.items.defaultValue, "null");
|
||||
Assert.assertEquals(enumVar.items.baseType, "String");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.baseName, "name");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.dataType, "String");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.datatypeWithEnum, "NameEnum");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.name, "name");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.defaultValue, "null");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.baseType, "String");
|
||||
|
||||
Assert.assertEquals(enumVar.mostInnerItems.baseType, enumVar.items.baseType);
|
||||
}
|
||||
|
||||
@Test(description = "convert a java model with an enum inside a list")
|
||||
@ -104,12 +106,14 @@ public class JavaModelEnumTest {
|
||||
Assert.assertEquals(enumVar.baseType, "List");
|
||||
Assert.assertTrue(enumVar.isEnum);
|
||||
|
||||
Assert.assertEquals(enumVar.items.items.baseName, "name");
|
||||
Assert.assertEquals(enumVar.items.items.dataType, "String");
|
||||
Assert.assertEquals(enumVar.items.items.datatypeWithEnum, "NameEnum");
|
||||
Assert.assertEquals(enumVar.items.items.name, "name");
|
||||
Assert.assertEquals(enumVar.items.items.defaultValue, "null");
|
||||
Assert.assertEquals(enumVar.items.items.baseType, "String");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.baseName, "name");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.dataType, "String");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.datatypeWithEnum, "NameEnum");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.name, "name");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.defaultValue, "null");
|
||||
Assert.assertEquals(enumVar.mostInnerItems.baseType, "String");
|
||||
|
||||
Assert.assertEquals(enumVar.mostInnerItems.baseType, enumVar.items.items.baseType);
|
||||
}
|
||||
|
||||
@Test(description = "not override identical parent enums")
|
||||
|
@ -33,7 +33,6 @@ public class Order {
|
||||
@ApiModelProperty(value = "")
|
||||
private Date shipDate = null;
|
||||
|
||||
|
||||
@XmlType(name="StatusEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum StatusEnum {
|
||||
|
@ -41,7 +41,6 @@ public class Pet {
|
||||
@Valid
|
||||
private List<Tag> tags = null;
|
||||
|
||||
|
||||
@XmlType(name="StatusEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum StatusEnum {
|
||||
|
@ -33,7 +33,6 @@ public class Order {
|
||||
@ApiModelProperty(value = "")
|
||||
private Date shipDate = null;
|
||||
|
||||
|
||||
@XmlType(name="StatusEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum StatusEnum {
|
||||
|
@ -41,7 +41,6 @@ public class Pet {
|
||||
@Valid
|
||||
private List<Tag> tags = null;
|
||||
|
||||
|
||||
@XmlType(name="StatusEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum StatusEnum {
|
||||
|
@ -17,7 +17,6 @@ import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
public class EnumArrays {
|
||||
|
||||
|
||||
@XmlType(name="JustSymbolEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum JustSymbolEnum {
|
||||
@ -53,7 +52,6 @@ public enum JustSymbolEnum {
|
||||
@ApiModelProperty(value = "")
|
||||
private JustSymbolEnum justSymbol = null;
|
||||
|
||||
|
||||
@XmlType(name="ArrayEnumEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum ArrayEnumEnum {
|
||||
|
@ -16,7 +16,6 @@ import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
public class EnumTest {
|
||||
|
||||
|
||||
@XmlType(name="EnumStringEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum EnumStringEnum {
|
||||
@ -52,7 +51,6 @@ public enum EnumStringEnum {
|
||||
@ApiModelProperty(value = "")
|
||||
private EnumStringEnum enumString = null;
|
||||
|
||||
|
||||
@XmlType(name="EnumStringRequiredEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum EnumStringRequiredEnum {
|
||||
@ -88,7 +86,6 @@ public enum EnumStringRequiredEnum {
|
||||
@ApiModelProperty(required = true, value = "")
|
||||
private EnumStringRequiredEnum enumStringRequired = null;
|
||||
|
||||
|
||||
@XmlType(name="EnumIntegerEnum")
|
||||
@XmlEnum(Integer.class)
|
||||
public enum EnumIntegerEnum {
|
||||
@ -124,7 +121,6 @@ public enum EnumIntegerEnum {
|
||||
@ApiModelProperty(value = "")
|
||||
private EnumIntegerEnum enumInteger = null;
|
||||
|
||||
|
||||
@XmlType(name="EnumNumberEnum")
|
||||
@XmlEnum(Double.class)
|
||||
public enum EnumNumberEnum {
|
||||
|
@ -22,7 +22,6 @@ public class MapTest {
|
||||
@Valid
|
||||
private Map<String, Map<String, String>> mapMapOfString = null;
|
||||
|
||||
|
||||
@XmlType(name="InnerEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum InnerEnum {
|
||||
|
@ -28,7 +28,6 @@ public class Order {
|
||||
@ApiModelProperty(value = "")
|
||||
private Date shipDate = null;
|
||||
|
||||
|
||||
@XmlType(name="StatusEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum StatusEnum {
|
||||
|
@ -36,7 +36,6 @@ public class Pet {
|
||||
@Valid
|
||||
private List<Tag> tags = null;
|
||||
|
||||
|
||||
@XmlType(name="StatusEnum")
|
||||
@XmlEnum(String.class)
|
||||
public enum StatusEnum {
|
||||
|
@ -93,7 +93,7 @@ public class EnumArrays implements Serializable {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("array_enum")
|
||||
private List<ArrayEnumEnum> arrayEnum = null;
|
||||
|
||||
|
@ -63,7 +63,7 @@ public class MapTest implements Serializable {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("map_of_enum_string")
|
||||
private Map<String, InnerEnum> mapOfEnumString = null;
|
||||
|
||||
|
@ -48,7 +48,7 @@ public enum JustSymbolEnum {
|
||||
}
|
||||
|
||||
private @Valid JustSymbolEnum justSymbol = null;
|
||||
|
||||
|
||||
public enum ArrayEnumEnum {
|
||||
|
||||
FISH(String.valueOf("fish")), CRAB(String.valueOf("crab"));
|
||||
|
@ -16,7 +16,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
public class MapTest implements Serializable {
|
||||
|
||||
private @Valid Map<String, Map<String, String>> mapMapOfString = new HashMap<String, Map<String, String>>();
|
||||
|
||||
|
||||
public enum InnerEnum {
|
||||
|
||||
UPPER(String.valueOf("UPPER")), LOWER(String.valueOf("lower"));
|
||||
|
@ -48,7 +48,7 @@ public enum JustSymbolEnum {
|
||||
}
|
||||
|
||||
private @Valid JustSymbolEnum justSymbol = null;
|
||||
|
||||
|
||||
public enum ArrayEnumEnum {
|
||||
|
||||
FISH(String.valueOf("fish")), CRAB(String.valueOf("crab"));
|
||||
|
@ -16,7 +16,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
public class MapTest implements Serializable {
|
||||
|
||||
private @Valid Map<String, Map<String, String>> mapMapOfString = new HashMap<String, Map<String, String>>();
|
||||
|
||||
|
||||
public enum InnerEnum {
|
||||
|
||||
UPPER(String.valueOf("UPPER")), LOWER(String.valueOf("lower"));
|
||||
|
@ -92,7 +92,7 @@ public class EnumArrays {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("array_enum")
|
||||
private List<ArrayEnumEnum> arrayEnum = null;
|
||||
|
||||
|
@ -62,7 +62,7 @@ public class MapTest {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("map_of_enum_string")
|
||||
private Map<String, InnerEnum> mapOfEnumString = null;
|
||||
|
||||
|
@ -92,7 +92,7 @@ public class EnumArrays {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("array_enum")
|
||||
private List<ArrayEnumEnum> arrayEnum = null;
|
||||
|
||||
|
@ -62,7 +62,7 @@ public class MapTest {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("map_of_enum_string")
|
||||
private Map<String, InnerEnum> mapOfEnumString = null;
|
||||
|
||||
|
@ -92,7 +92,7 @@ public class EnumArrays {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("array_enum")
|
||||
private List<ArrayEnumEnum> arrayEnum = null;
|
||||
|
||||
|
@ -62,7 +62,7 @@ public class MapTest {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("map_of_enum_string")
|
||||
private Map<String, InnerEnum> mapOfEnumString = null;
|
||||
|
||||
|
@ -92,7 +92,7 @@ public class EnumArrays {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("array_enum")
|
||||
private List<ArrayEnumEnum> arrayEnum = null;
|
||||
|
||||
|
@ -62,7 +62,7 @@ public class MapTest {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@JsonProperty("map_of_enum_string")
|
||||
private Map<String, InnerEnum> mapOfEnumString = null;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user