From 51028f0c1bb23320ad3e8001ca6aed91b7ced25f Mon Sep 17 00:00:00 2001 From: William Cheng Date: Tue, 20 Apr 2021 15:05:34 +0800 Subject: [PATCH] prevent NPE in constructing oneOf example (#9231) --- .../codegen/languages/RubyClientCodegen.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java index 40b2d9c22ee..96a5f5d7c3f 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java @@ -748,8 +748,14 @@ public class RubyClientCodegen extends AbstractRubyCodegen { return moduleName + "::" + codegenModel.classname + "::" + enumVars.get(0).get("name"); } else if (codegenModel.oneOf != null && !codegenModel.oneOf.isEmpty()) { String subModel = (String) codegenModel.oneOf.toArray()[0]; - String oneOf = constructExampleCode(modelMaps.get(subModel), modelMaps, processedModelMap); - return oneOf; + if (modelMaps.containsKey(subModel)) { + // oneOf models + return constructExampleCode(modelMaps.get(subModel), modelMaps, processedModelMap); + } else { + // TODO oneOf primitive type not supported at the moment + LOGGER.warn("oneOf example value not supported at the moment."); + return "nil"; + } } else { processedModelMap.put(model, 1); }