forked from loafle/openapi-generator-original
[JAVA] 4709: codegen with parcelableMode fails to build if using arrays in swagger. (#7867)
This commit is contained in:
committed by
William Cheng
parent
f943332d62
commit
f023327558
@@ -67,6 +67,19 @@ public class {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{{#parcela
|
||||
{{/isContainer}}
|
||||
|
||||
{{/vars}}
|
||||
{{#parcelableModel}}
|
||||
public {{classname}}() {
|
||||
{{#parent}}
|
||||
super();
|
||||
{{/parent}}
|
||||
{{#gson}}
|
||||
{{#discriminator}}
|
||||
this.{{discriminator}} = this.getClass().getSimpleName();
|
||||
{{/discriminator}}
|
||||
{{/gson}}
|
||||
}
|
||||
{{/parcelableModel}}
|
||||
{{^parcelableModel}}
|
||||
{{#gson}}
|
||||
{{#discriminator}}
|
||||
public {{classname}}() {
|
||||
@@ -74,6 +87,7 @@ public class {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{{#parcela
|
||||
}
|
||||
{{/discriminator}}
|
||||
{{/gson}}
|
||||
{{/parcelableModel}}
|
||||
{{#vars}}
|
||||
{{^isReadOnly}}
|
||||
public {{classname}} {{name}}({{{datatypeWithEnum}}} {{name}}) {
|
||||
@@ -203,27 +217,41 @@ public class {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{{#parcela
|
||||
return o.toString().replace("\n", "\n ");
|
||||
}
|
||||
|
||||
{{#parcelableModel}}
|
||||
public void writeToParcel(Parcel out, int flags) {
|
||||
{{#parent}} super.writeToParcel(out, flags); {{/parent}} {{#vars}}
|
||||
out.writeValue({{name}});
|
||||
{{/vars}}
|
||||
}
|
||||
{{#parcelableModel}}
|
||||
|
||||
public {{classname}}() {
|
||||
super();
|
||||
public void writeToParcel(Parcel out, int flags) {
|
||||
{{#model}}
|
||||
{{#isArrayModel}}
|
||||
out.writeList(this);
|
||||
{{/isArrayModel}}
|
||||
{{^isArrayModel}}
|
||||
{{#parent}}
|
||||
super.writeToParcel(out, flags);
|
||||
{{/parent}}
|
||||
{{#vars}}
|
||||
out.writeValue({{name}});
|
||||
{{/vars}}
|
||||
{{/isArrayModel}}
|
||||
{{/model}}
|
||||
}
|
||||
|
||||
{{classname}}(Parcel in) {
|
||||
{{#parent}} super(in); {{/parent}}
|
||||
{{#vars}}
|
||||
{{#isPrimitiveType}}
|
||||
{{#isArrayModel}}
|
||||
in.readTypedList(this, {{arrayModelType}}.CREATOR);
|
||||
{{/isArrayModel}}
|
||||
{{^isArrayModel}}
|
||||
{{#parent}}
|
||||
super(in);
|
||||
{{/parent}}
|
||||
{{#vars}}
|
||||
{{#isPrimitiveType}}
|
||||
{{name}} = ({{{datatypeWithEnum}}})in.readValue(null);
|
||||
{{/isPrimitiveType}}
|
||||
{{^isPrimitiveType}}
|
||||
{{/isPrimitiveType}}
|
||||
{{^isPrimitiveType}}
|
||||
{{name}} = ({{{datatypeWithEnum}}})in.readValue({{complexType}}.class.getClassLoader());
|
||||
{{/isPrimitiveType}}
|
||||
{{/vars}}
|
||||
{{/isPrimitiveType}}
|
||||
{{/vars}}
|
||||
{{/isArrayModel}}
|
||||
}
|
||||
|
||||
public int describeContents() {
|
||||
@@ -232,11 +260,20 @@ public class {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{{#parcela
|
||||
|
||||
public static final Parcelable.Creator<{{classname}}> CREATOR = new Parcelable.Creator<{{classname}}>() {
|
||||
public {{classname}} createFromParcel(Parcel in) {
|
||||
{{#model}}
|
||||
{{#isArrayModel}}
|
||||
{{classname}} result = new {{classname}}();
|
||||
result.addAll(in.readArrayList({{arrayModelType}}.class.getClassLoader()));
|
||||
return result;
|
||||
{{/isArrayModel}}
|
||||
{{^isArrayModel}}
|
||||
return new {{classname}}(in);
|
||||
{{/isArrayModel}}
|
||||
{{/model}}
|
||||
}
|
||||
public {{classname}}[] newArray(int size) {
|
||||
return new {{classname}}[size];
|
||||
}
|
||||
};
|
||||
{{/parcelableModel}}
|
||||
{{/parcelableModel}}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user