forked from loafle/openapi-generator-original
Fix inconsistency between model name and file name in python client (#7684)
Fixes issue #7357 using the same fix as #4958
This commit is contained in:
parent
92117b879a
commit
b39c35c768
@ -456,33 +456,9 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toModelFilename(String name) {
|
public String toModelFilename(String name) {
|
||||||
name = sanitizeName(name); // FIXME: a parameter should not be assigned. Also declare the methods parameters as 'final'.
|
|
||||||
// remove dollar sign
|
|
||||||
name = name.replaceAll("$", "");
|
|
||||||
|
|
||||||
// model name cannot use reserved keyword, e.g. return
|
|
||||||
if (isReservedWord(name)) {
|
|
||||||
LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + underscore(dropDots("model_" + name)));
|
|
||||||
name = "model_" + name; // e.g. return => ModelReturn (after camelize)
|
|
||||||
}
|
|
||||||
|
|
||||||
// model name starts with number
|
|
||||||
if (name.matches("^\\d.*")) {
|
|
||||||
LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + underscore("model_" + name));
|
|
||||||
name = "model_" + name; // e.g. 200Response => Model200Response (after camelize)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!StringUtils.isEmpty(modelNamePrefix)) {
|
|
||||||
name = modelNamePrefix + "_" + name;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!StringUtils.isEmpty(modelNameSuffix)) {
|
|
||||||
name = name + "_" + modelNameSuffix;
|
|
||||||
}
|
|
||||||
|
|
||||||
// underscore the model file name
|
// underscore the model file name
|
||||||
// PhoneNumber => phone_number
|
// PhoneNumber => phone_number
|
||||||
return underscore(dropDots(name));
|
return underscore(dropDots(toModelName(name)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
x
Reference in New Issue
Block a user