From e420bfd49e395d4b32b3e48373d868ba1af3c8d2 Mon Sep 17 00:00:00 2001 From: xhh Date: Thu, 3 Mar 2016 18:04:37 +0800 Subject: [PATCH] Add model name prefix/suffix to JavaScript client --- .../java/io/swagger/codegen/DefaultGenerator.java | 2 +- .../codegen/languages/JavascriptClientCodegen.java | 11 ++++++++++- .../swagger/codegen/languages/RubyClientCodegen.java | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) 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 965291cd326..c966cf6ba66 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 @@ -754,7 +754,7 @@ public class DefaultGenerator extends AbstractGenerator implements Generator { CodegenModel cm = config.fromModel(key, mm, allDefinitions); Map mo = new HashMap(); mo.put("model", cm); - mo.put("importPath", config.toModelImport(key)); + mo.put("importPath", config.toModelImport(cm.classname)); models.add(mo); allImports.addAll(cm.imports); diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavascriptClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavascriptClientCodegen.java index 5bc69ad75cd..c51a16069bd 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavascriptClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavascriptClientCodegen.java @@ -157,6 +157,7 @@ public class JavascriptClientCodegen extends DefaultCodegen implements CodegenCo typeMapping.put("number", "Number"); typeMapping.put("DateTime", "Date"); typeMapping.put("Date", "Date"); + typeMapping.put("file", "File"); // binary not supported in JavaScript client right now, using String as a workaround typeMapping.put("binary", "String"); @@ -293,6 +294,14 @@ public class JavascriptClientCodegen extends DefaultCodegen implements CodegenCo public String toModelName(String name) { name = sanitizeName(name); // FIXME parameter should not be assigned. Also declare it as "final" + if (!StringUtils.isEmpty(modelNamePrefix)) { + name = modelNamePrefix + "_" + name; + } + + if (!StringUtils.isEmpty(modelNameSuffix)) { + name = name + "_" + modelNameSuffix; + } + // camelize the model name // phone_number => PhoneNumber name = camelize(name); @@ -315,7 +324,7 @@ public class JavascriptClientCodegen extends DefaultCodegen implements CodegenCo @Override public String toModelImport(String name) { - return toModelName(name); + return name; } @Override diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/RubyClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/RubyClientCodegen.java index d8469b599ff..e0e9eea1245 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/RubyClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/RubyClientCodegen.java @@ -462,7 +462,7 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig { @Override public String toModelImport(String name) { - return gemName + "/" + modelPackage() + "/" + toModelFilename(name); + return gemName + "/" + modelPackage() + "/" + underscore(name); } @Override