better handling of model name starting with number for android

This commit is contained in:
wing328 2016-03-17 12:11:27 +08:00
parent 47bb5689d9
commit 8ca279f6f7
9 changed files with 315 additions and 0 deletions

View File

@ -208,6 +208,13 @@ public class AndroidClientCodegen extends DefaultCodegen implements CodegenConfi
return modelName; return modelName;
} }
// model name starts with number
if (name.matches("^\\d.*")) {
String modelName = "Model" + name; // e.g. 200Response => Model200Response (after camelize)
LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName);
return modelName;
}
return name; return name;
} }

View File

@ -43,6 +43,10 @@ public class JsonUtil {
return new TypeToken<List<InlineResponse200>>(){}.getType(); return new TypeToken<List<InlineResponse200>>(){}.getType();
} }
if ("Model200Response".equalsIgnoreCase(className)) {
return new TypeToken<List<Model200Response>>(){}.getType();
}
if ("ModelReturn".equalsIgnoreCase(className)) { if ("ModelReturn".equalsIgnoreCase(className)) {
return new TypeToken<List<ModelReturn>>(){}.getType(); return new TypeToken<List<ModelReturn>>(){}.getType();
} }
@ -85,6 +89,10 @@ public class JsonUtil {
return new TypeToken<InlineResponse200>(){}.getType(); return new TypeToken<InlineResponse200>(){}.getType();
} }
if ("Model200Response".equalsIgnoreCase(className)) {
return new TypeToken<Model200Response>(){}.getType();
}
if ("ModelReturn".equalsIgnoreCase(className)) { if ("ModelReturn".equalsIgnoreCase(className)) {
return new TypeToken<ModelReturn>(){}.getType(); return new TypeToken<ModelReturn>(){}.getType();
} }

View File

@ -0,0 +1,36 @@
package io.swagger.client.model;
import io.swagger.annotations.*;
import com.google.gson.annotations.SerializedName;
@ApiModel(description = "")
public class Model200Response {
@SerializedName("name")
private Integer name = null;
/**
**/
@ApiModelProperty(value = "")
public Integer getName() {
return name;
}
public void setName(Integer name) {
this.name = name;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class Model200Response {\n");
sb.append(" name: ").append(name).append("\n");
sb.append("}\n");
return sb.toString();
}
}

View File

@ -43,6 +43,10 @@ public class JsonUtil {
return new TypeToken<List<InlineResponse200>>(){}.getType(); return new TypeToken<List<InlineResponse200>>(){}.getType();
} }
if ("Model200Response".equalsIgnoreCase(className)) {
return new TypeToken<List<Model200Response>>(){}.getType();
}
if ("ModelReturn".equalsIgnoreCase(className)) { if ("ModelReturn".equalsIgnoreCase(className)) {
return new TypeToken<List<ModelReturn>>(){}.getType(); return new TypeToken<List<ModelReturn>>(){}.getType();
} }
@ -85,6 +89,10 @@ public class JsonUtil {
return new TypeToken<InlineResponse200>(){}.getType(); return new TypeToken<InlineResponse200>(){}.getType();
} }
if ("Model200Response".equalsIgnoreCase(className)) {
return new TypeToken<Model200Response>(){}.getType();
}
if ("ModelReturn".equalsIgnoreCase(className)) { if ("ModelReturn".equalsIgnoreCase(className)) {
return new TypeToken<ModelReturn>(){}.getType(); return new TypeToken<ModelReturn>(){}.getType();
} }

View File

@ -0,0 +1,112 @@
package io.swagger.client.model;
import io.swagger.client.model.Tag;
import java.util.*;
import io.swagger.annotations.*;
import com.google.gson.annotations.SerializedName;
@ApiModel(description = "")
public class InlineResponse200 {
@SerializedName("tags")
private List<Tag> tags = null;
@SerializedName("id")
private Long id = null;
@SerializedName("category")
private Object category = null;
public enum StatusEnum {
available, pending, sold,
};
@SerializedName("status")
private StatusEnum status = null;
@SerializedName("name")
private String name = null;
@SerializedName("photoUrls")
private List<String> photoUrls = null;
/**
**/
@ApiModelProperty(value = "")
public List<Tag> getTags() {
return tags;
}
public void setTags(List<Tag> tags) {
this.tags = tags;
}
/**
**/
@ApiModelProperty(required = true, value = "")
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
/**
**/
@ApiModelProperty(value = "")
public Object getCategory() {
return category;
}
public void setCategory(Object category) {
this.category = category;
}
/**
* pet status in the store
**/
@ApiModelProperty(value = "pet status in the store")
public StatusEnum getStatus() {
return status;
}
public void setStatus(StatusEnum status) {
this.status = status;
}
/**
**/
@ApiModelProperty(value = "")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
/**
**/
@ApiModelProperty(value = "")
public List<String> getPhotoUrls() {
return photoUrls;
}
public void setPhotoUrls(List<String> photoUrls) {
this.photoUrls = photoUrls;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class InlineResponse200 {\n");
sb.append(" tags: ").append(tags).append("\n");
sb.append(" id: ").append(id).append("\n");
sb.append(" category: ").append(category).append("\n");
sb.append(" status: ").append(status).append("\n");
sb.append(" name: ").append(name).append("\n");
sb.append(" photoUrls: ").append(photoUrls).append("\n");
sb.append("}\n");
return sb.toString();
}
}

View File

@ -0,0 +1,36 @@
package io.swagger.client.model;
import io.swagger.annotations.*;
import com.google.gson.annotations.SerializedName;
@ApiModel(description = "")
public class Model200Response {
@SerializedName("name")
private Integer name = null;
/**
**/
@ApiModelProperty(value = "")
public Integer getName() {
return name;
}
public void setName(Integer name) {
this.name = name;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class Model200Response {\n");
sb.append(" name: ").append(name).append("\n");
sb.append("}\n");
return sb.toString();
}
}

View File

@ -0,0 +1,36 @@
package io.swagger.client.model;
import io.swagger.annotations.*;
import com.google.gson.annotations.SerializedName;
@ApiModel(description = "")
public class ModelReturn {
@SerializedName("return")
private Integer _return = null;
/**
**/
@ApiModelProperty(value = "")
public Integer getReturn() {
return _return;
}
public void setReturn(Integer _return) {
this._return = _return;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class ModelReturn {\n");
sb.append(" _return: ").append(_return).append("\n");
sb.append("}\n");
return sb.toString();
}
}

View File

@ -0,0 +1,36 @@
package io.swagger.client.model;
import io.swagger.annotations.*;
import com.google.gson.annotations.SerializedName;
@ApiModel(description = "")
public class Name {
@SerializedName("name")
private Integer name = null;
/**
**/
@ApiModelProperty(value = "")
public Integer getName() {
return name;
}
public void setName(Integer name) {
this.name = name;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class Name {\n");
sb.append(" name: ").append(name).append("\n");
sb.append("}\n");
return sb.toString();
}
}

View File

@ -0,0 +1,36 @@
package io.swagger.client.model;
import io.swagger.annotations.*;
import com.google.gson.annotations.SerializedName;
@ApiModel(description = "")
public class SpecialModelName {
@SerializedName("$special[property.name]")
private Long specialPropertyName = null;
/**
**/
@ApiModelProperty(value = "")
public Long getSpecialPropertyName() {
return specialPropertyName;
}
public void setSpecialPropertyName(Long specialPropertyName) {
this.specialPropertyName = specialPropertyName;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class SpecialModelName {\n");
sb.append(" specialPropertyName: ").append(specialPropertyName).append("\n");
sb.append("}\n");
return sb.toString();
}
}