diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java index bef91d6e73..fd072c6bd0 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java @@ -63,6 +63,7 @@ public class CrystalClientCodegen extends DefaultCodegen { protected String shardAuthorEmail = ""; protected String apiDocPath = "docs/"; protected String modelDocPath = "docs/"; + protected List primitiveTypes = new ArrayList(); public static final String SHARD_NAME = "shardName"; public static final String MODULE_NAME = "moduleName"; @@ -184,6 +185,7 @@ public class CrystalClientCodegen extends DefaultCodegen { instantiationTypes.put("map", "Hash"); instantiationTypes.put("array", "Array"); instantiationTypes.put("set", "Set"); + primitiveTypes = new ArrayList(typeMapping.values()); // remove modelPackage and apiPackage added by default cliOptions.removeIf(opt -> CodegenConstants.MODEL_PACKAGE.equals(opt.getOpt()) || @@ -355,6 +357,15 @@ public class CrystalClientCodegen extends DefaultCodegen { return toModelName(type); } + @Override + public String toModelImport(String name) { + if (primitiveTypes.contains(name)) { + return null; + } else { + return toModelFilename(name); + } + } + @Override public String toModelName(final String name) { String modelName;