mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-07-04 14:40:53 +00:00
[php] bugfix: Array and Map inner schema definition can be missing. (#1586)
This commit is contained in:
parent
98aa5f8db2
commit
a27224e50d
@ -18,6 +18,7 @@ package org.openapitools.codegen.languages;
|
|||||||
|
|
||||||
import io.swagger.v3.oas.models.media.ArraySchema;
|
import io.swagger.v3.oas.models.media.ArraySchema;
|
||||||
import io.swagger.v3.oas.models.media.Schema;
|
import io.swagger.v3.oas.models.media.Schema;
|
||||||
|
import io.swagger.v3.oas.models.media.StringSchema;
|
||||||
import org.apache.commons.io.FilenameUtils;
|
import org.apache.commons.io.FilenameUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.openapitools.codegen.CliOption;
|
import org.openapitools.codegen.CliOption;
|
||||||
@ -352,9 +353,17 @@ public abstract class AbstractPhpCodegen extends DefaultCodegen implements Codeg
|
|||||||
if (ModelUtils.isArraySchema(p)) {
|
if (ModelUtils.isArraySchema(p)) {
|
||||||
ArraySchema ap = (ArraySchema) p;
|
ArraySchema ap = (ArraySchema) p;
|
||||||
Schema inner = ap.getItems();
|
Schema inner = ap.getItems();
|
||||||
|
if (inner == null) {
|
||||||
|
LOGGER.warn(ap.getName() + "(array property) does not have a proper inner type defined.Default to string");
|
||||||
|
inner = new StringSchema().description("TODO default missing array inner type to string");
|
||||||
|
}
|
||||||
return getTypeDeclaration(inner) + "[]";
|
return getTypeDeclaration(inner) + "[]";
|
||||||
} else if (ModelUtils.isMapSchema(p)) {
|
} else if (ModelUtils.isMapSchema(p)) {
|
||||||
Schema inner = ModelUtils.getAdditionalProperties(p);
|
Schema inner = ModelUtils.getAdditionalProperties(p);
|
||||||
|
if (inner == null) {
|
||||||
|
LOGGER.warn(p.getName() + "(map property) does not have a proper inner type defined. Default to string");
|
||||||
|
inner = new StringSchema().description("TODO default missing map inner type to string");
|
||||||
|
}
|
||||||
return getSchemaType(p) + "[string," + getTypeDeclaration(inner) + "]";
|
return getSchemaType(p) + "[string," + getTypeDeclaration(inner) + "]";
|
||||||
} else if (StringUtils.isNotBlank(p.get$ref())) { // model
|
} else if (StringUtils.isNotBlank(p.get$ref())) { // model
|
||||||
String type = super.getTypeDeclaration(p);
|
String type = super.getTypeDeclaration(p);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user