Skip to content

Commit 9db08fc

Browse files
committed
extract logic to normalizeVendorExtensionWithStringList
1 parent 00388d6 commit 9db08fc

1 file changed

Lines changed: 11 additions & 14 deletions

File tree

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2079,24 +2079,12 @@ public ModelsMap postProcessModels(ModelsMap objs) {
20792079
}
20802080
// make sure the x-implements is always a List and always at least empty
20812081
for (ModelMap mo : objs.getModels()) {
2082-
CodegenModel cm = mo.getModel();
2083-
if (cm.getVendorExtensions().containsKey(X_IMPLEMENTS)) {
2084-
List<String> xImplements = getObjectAsStringList(cm.getVendorExtensions().get(X_IMPLEMENTS));
2085-
cm.getVendorExtensions().replace(X_IMPLEMENTS, xImplements);
2086-
} else {
2087-
cm.getVendorExtensions().put(X_IMPLEMENTS, new ArrayList<String>());
2088-
}
2082+
normalizeVendorExtensionWithStringList(mo.getModel(), X_IMPLEMENTS);
20892083
}
20902084

20912085
// make sure the x-class-extra-annotation is always a List and always at least empty
20922086
for (ModelMap mo : objs.getModels()) {
2093-
CodegenModel cm = mo.getModel();
2094-
if (cm.getVendorExtensions().containsKey(VendorExtension.X_CLASS_EXTRA_ANNOTATION.getName())) {
2095-
List<String> xClassExtraAnnotation = getObjectAsStringList(cm.getVendorExtensions().get(VendorExtension.X_CLASS_EXTRA_ANNOTATION.getName()));
2096-
cm.getVendorExtensions().replace(VendorExtension.X_CLASS_EXTRA_ANNOTATION.getName(), xClassExtraAnnotation);
2097-
} else {
2098-
cm.getVendorExtensions().put(VendorExtension.X_CLASS_EXTRA_ANNOTATION.getName(), new ArrayList<String>());
2099-
}
2087+
normalizeVendorExtensionWithStringList(mo.getModel(), VendorExtension.X_CLASS_EXTRA_ANNOTATION.getName());
21002088
}
21012089

21022090
// skip interfaces predefined in open api spec in x-implements via additional property xImplementsSkip
@@ -2769,6 +2757,15 @@ protected ImmutableMap.Builder<String, Mustache.Lambda> addMustacheLambdas() {
27692757

27702758
}
27712759

2760+
private void normalizeVendorExtensionWithStringList(CodegenModel cm , String name) {
2761+
if (cm.getVendorExtensions().containsKey(name)) {
2762+
List<String> annotations = getObjectAsStringList(cm.getVendorExtensions().get(name));
2763+
cm.getVendorExtensions().replace(name, annotations);
2764+
} else {
2765+
cm.getVendorExtensions().put(name, new ArrayList<String>());
2766+
}
2767+
}
2768+
27722769
/**
27732770
* for Jspecify, remove @Nullable before the datatype and set keptNullable to true if done.
27742771
*/

0 commit comments

Comments
 (0)