diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/CodegenConfig.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/CodegenConfig.java index 940cde4deb9..235a9b5ba6b 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/CodegenConfig.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/CodegenConfig.java @@ -18,6 +18,7 @@ public interface CodegenConfig { String modelFileFolder(); String modelPackage(); String toApiName(String name); + String toApiVarName(String name); String toModelName(String name); String toParamName(String name); String escapeReservedWord(String name); diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/DefaultCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/DefaultCodegen.java index 9d908aafb6f..014a595ae16 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/DefaultCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/DefaultCodegen.java @@ -11,6 +11,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.*; +import java.io.File; public class DefaultCodegen { Logger LOGGER = LoggerFactory.getLogger(DefaultCodegen.class); @@ -101,11 +102,11 @@ public class DefaultCodegen { } public String apiFileFolder() { - return outputFolder + "/" + apiPackage().replaceAll("\\.", "/"); + return outputFolder + "/" + apiPackage().replace('.', File.separatorChar); } public String modelFileFolder() { - return outputFolder + "/" + modelPackage().replaceAll("\\.", "/"); + return outputFolder + "/" + modelPackage().replace('.', File.separatorChar); } public Map additionalProperties() { @@ -133,6 +134,10 @@ public class DefaultCodegen { return initialCaps(name) + "Api"; } + public String toApiVarName(String name) { + return snakeCase(name); + } + public String toModelFilename(String name) { return name; } @@ -306,6 +311,10 @@ public class DefaultCodegen { return datatype; } + public String snakeCase(String name) { + return Character.toLowerCase(name.charAt(0)) + name.substring(1); + } + public String initialCaps(String name) { return Character.toUpperCase(name.charAt(0)) + name.substring(1); } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/DefaultGenerator.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/DefaultGenerator.java index 1a107463d7c..65355d75b1f 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/DefaultGenerator.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/DefaultGenerator.java @@ -114,6 +114,7 @@ public class DefaultGenerator implements Generator { operation.put("modelPackage", config.modelPackage()); operation.putAll(config.additionalProperties()); operation.put("classname", config.toApiName(tag)); + operation.put("classVarName", config.toApiVarName(tag)); allOperations.add(operation); for(String templateName : config.apiTemplateFiles().keySet()) { String suffix = config.apiTemplateFiles().get(templateName); @@ -153,7 +154,7 @@ public class DefaultGenerator implements Generator { } bundle.put("apiInfo", apis); bundle.put("models", allModels); - bundle.put("apiFolder", config.apiPackage().replaceAll("\\.", "/")); + bundle.put("apiFolder", config.apiPackage().replace('.', File.separatorChar)); bundle.put("modelPackage", config.modelPackage()); if (swagger.getExternalDocs() != null) { bundle.put("externalDocs", swagger.getExternalDocs()); diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/NodeJSServerCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/NodeJSServerCodegen.java index 8ae6e955b9c..74632b622fc 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/NodeJSServerCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/NodeJSServerCodegen.java @@ -89,11 +89,11 @@ public class NodeJSServerCodegen extends DefaultCodegen implements CodegenConfig @Override public String apiFileFolder() { - return outputFolder + File.separator + apiPackage().replaceAll("\\.", File.separator); + return outputFolder + File.separator + apiPackage().replace('.', File.separatorChar); } public String modelFileFolder() { - return outputFolder + File.separator + modelPackage().replaceAll("\\.", File.separator); + return outputFolder + File.separator + modelPackage().replace('.', File.separatorChar); } @Override diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PythonClientCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PythonClientCodegen.java index f78e08b153b..962f5ac0848 100755 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PythonClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PythonClientCodegen.java @@ -64,11 +64,11 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig @Override public String apiFileFolder() { - return outputFolder + "/" + apiPackage().replaceAll("\\.", "/"); + return outputFolder + "/" + apiPackage().replace('.', File.separatorChar); } public String modelFileFolder() { - return outputFolder + "/" + modelPackage().replaceAll("\\.", "/"); + return outputFolder + "/" + modelPackage().replace('.', File.separatorChar); } @Override