forked from loafle/openapi-generator-original
fix map in inline model
This commit is contained in:
parent
2e143ec054
commit
c8c047a2bc
@ -68,14 +68,14 @@ public class InlineModelResolver {
|
|||||||
ObjectProperty op = (ObjectProperty) inner;
|
ObjectProperty op = (ObjectProperty) inner;
|
||||||
flattenProperties(op.getProperties(), pathname);
|
flattenProperties(op.getProperties(), pathname);
|
||||||
|
|
||||||
Model inner_model = modelFromProperty(op, modelName);
|
Model innerModel = modelFromProperty(op, modelName);
|
||||||
String existing = matchGenerated(inner_model);
|
String existing = matchGenerated(innerModel);
|
||||||
if (existing != null) {
|
if (existing != null) {
|
||||||
am.setItems(new RefProperty(existing));
|
am.setItems(new RefProperty(existing));
|
||||||
} else {
|
} else {
|
||||||
am.setItems(new RefProperty(modelName));
|
am.setItems(new RefProperty(modelName));
|
||||||
addGenerated(modelName, inner_model);
|
addGenerated(modelName, innerModel);
|
||||||
swagger.addDefinition(modelName, inner_model);
|
swagger.addDefinition(modelName, innerModel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -252,18 +252,42 @@ public class InlineModelResolver {
|
|||||||
ObjectProperty op = (ObjectProperty) inner;
|
ObjectProperty op = (ObjectProperty) inner;
|
||||||
flattenProperties(op.getProperties(), path);
|
flattenProperties(op.getProperties(), path);
|
||||||
|
|
||||||
Model inner_model = modelFromProperty(op, modelName);
|
Model innerModel = modelFromProperty(op, modelName);
|
||||||
String existing = matchGenerated(inner_model);
|
String existing = matchGenerated(innerModel);
|
||||||
|
|
||||||
if (existing != null) {
|
if (existing != null) {
|
||||||
ap.setItems(new RefProperty(existing));
|
ap.setItems(new RefProperty(existing));
|
||||||
} else {
|
} else {
|
||||||
ap.setItems(new RefProperty(modelName));
|
ap.setItems(new RefProperty(modelName));
|
||||||
addGenerated(modelName, inner_model);
|
addGenerated(modelName, innerModel);
|
||||||
LOGGER.info("flattening(array inner): " + modelName);
|
LOGGER.info("flattening(array inner): " + modelName);
|
||||||
swagger.addDefinition(modelName, inner_model);
|
swagger.addDefinition(modelName, innerModel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if (property instanceof MapProperty) {
|
||||||
|
MapProperty mp = (MapProperty) property;
|
||||||
|
Property inner = mp.getAdditionalProperties();
|
||||||
|
|
||||||
|
if (inner instanceof ObjectProperty) {
|
||||||
|
String modelName = uniqueName(path + "_" + key);
|
||||||
|
LOGGER.info("flattening(map inner): " + modelName);
|
||||||
|
|
||||||
|
ObjectProperty op = (ObjectProperty) inner;
|
||||||
|
flattenProperties(op.getProperties(), path);
|
||||||
|
|
||||||
|
Model innerModel = modelFromProperty(op, modelName);
|
||||||
|
String existing = matchGenerated(innerModel);
|
||||||
|
|
||||||
|
if (existing != null) {
|
||||||
|
mp.setAdditionalProperties(new RefProperty(existing));
|
||||||
|
} else {
|
||||||
|
mp.setAdditionalProperties(new RefProperty(modelName));
|
||||||
|
addGenerated(modelName, innerModel);
|
||||||
|
LOGGER.info("flattening(array inner): " + modelName);
|
||||||
|
swagger.addDefinition(modelName, innerModel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
LOGGER.info("not flattening " + key);
|
LOGGER.info("not flattening " + key);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user