From 84e0df6115702d7e07638b049d49ca89b5242981 Mon Sep 17 00:00:00 2001 From: geekerzp Date: Thu, 24 Sep 2015 15:53:55 +0800 Subject: [PATCH 1/2] Fixed issue that model name not camelized in python client and ruby client --- .../java/io/swagger/codegen/languages/PythonClientCodegen.java | 2 ++ .../java/io/swagger/codegen/languages/RubyClientCodegen.java | 2 ++ samples/client/petstore/python/swagger_client/apis/user_api.py | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java index a2960c512b56..2f364695a348 100755 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java @@ -199,6 +199,8 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig @Override public String toModelName(String name) { + name = name.replaceAll("\\W", "_"); + // model name cannot use reserved keyword, e.g. return if (reservedWords.contains(name)) { throw new RuntimeException(name + " (reserved word) cannot be used as a model name"); 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 f608c4b8d0f3..bbb290c8613c 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 @@ -224,6 +224,8 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig { @Override public String toModelName(String name) { + name = name.replaceAll("\\W", "_"); + // model name cannot use reserved keyword, e.g. return if (reservedWords.contains(name)) { throw new RuntimeException(name + " (reserved word) cannot be used as a model name"); diff --git a/samples/client/petstore/python/swagger_client/apis/user_api.py b/samples/client/petstore/python/swagger_client/apis/user_api.py index 1c96e1e923ee..aa35e6db53aa 100644 --- a/samples/client/petstore/python/swagger_client/apis/user_api.py +++ b/samples/client/petstore/python/swagger_client/apis/user_api.py @@ -435,7 +435,7 @@ class UserApi(object): :param callback function: The callback function for asynchronous request. (optional) - :param str username: The name that needs to be fetched. Use user1 for testing. (required) + :param str username: The name that needs to be fetched. Use user1 for testing. (required) :return: User If the method is called asynchronously, returns the request thread. From 2943f41cdd131c50ceb7dd090cd8fbd37936e435 Mon Sep 17 00:00:00 2001 From: geekerzp Date: Thu, 24 Sep 2015 16:29:20 +0800 Subject: [PATCH 2/2] Update python and ruby clients. Use `sanitizeName` to sanitize model name. --- .../java/io/swagger/codegen/languages/PythonClientCodegen.java | 2 +- .../java/io/swagger/codegen/languages/RubyClientCodegen.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java index 2f364695a348..6d9982cf78c0 100755 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/PythonClientCodegen.java @@ -199,7 +199,7 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig @Override public String toModelName(String name) { - name = name.replaceAll("\\W", "_"); + name = sanitizeName(name); // model name cannot use reserved keyword, e.g. return if (reservedWords.contains(name)) { 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 bbb290c8613c..4aac683b6ef8 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 @@ -224,7 +224,7 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig { @Override public String toModelName(String name) { - name = name.replaceAll("\\W", "_"); + name = sanitizeName(name); // model name cannot use reserved keyword, e.g. return if (reservedWords.contains(name)) {