From ab6118afe429a9a4d4ee3d0bd006678e55b077cd Mon Sep 17 00:00:00 2001 From: russellb337 Date: Thu, 3 Sep 2015 08:24:33 -0700 Subject: [PATCH] update default generator to skip generation of models that have import mappings defined --- .../src/main/java/io/swagger/codegen/CodegenConfig.java | 2 ++ .../src/main/java/io/swagger/codegen/DefaultCodegen.java | 4 ++++ .../src/main/java/io/swagger/codegen/DefaultGenerator.java | 7 +++++++ 3 files changed, 13 insertions(+) diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/CodegenConfig.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/CodegenConfig.java index 1b0e349daca..10d7363cc35 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/CodegenConfig.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/CodegenConfig.java @@ -85,6 +85,8 @@ public interface CodegenConfig { Set languageSpecificPrimitives(); + void preprocessSwagger(Swagger swagger); + void processSwagger(Swagger swagger); String toApiFilename(String name); diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java index 8fb6eee2964..f7d0ce3f45f 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java @@ -120,6 +120,10 @@ public class DefaultCodegen { return objs; } + //override with any special handling of the entire swagger spec + public void preprocessSwagger(Swagger swagger) { + } + // override with any special handling of the entire swagger spec public void processSwagger(Swagger swagger) { } diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultGenerator.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultGenerator.java index e5a49f4eba4..80a25350d8b 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultGenerator.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultGenerator.java @@ -71,6 +71,7 @@ public class DefaultGenerator extends AbstractGenerator implements Generator { List files = new ArrayList(); try { config.processOpts(); + config.preprocessSwagger(swagger); config.additionalProperties().put("generatedDate", DateTime.now().toString()); config.additionalProperties().put("generatorClass", config.getClass().toString()); @@ -138,6 +139,12 @@ public class DefaultGenerator extends AbstractGenerator implements Generator { List sortedModelKeys = sortModelsByInheritance(definitions); for (String name : sortedModelKeys) { + + //dont generate models that have an import mapping + if(config.importMapping().containsKey(name)) { + continue; + } + Model model = definitions.get(name); Map modelMap = new HashMap(); modelMap.put(name, model);