You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by li...@apache.org on 2018/01/20 06:01:44 UTC
[incubator-servicecomb-java-chassis] 05/10: SCB-266 unify
correctClassName logic
This is an automated email from the ASF dual-hosted git repository.
liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git
commit 0b810ddb926538f3448779415253f4aed5552509
Author: wujimin <wu...@huawei.com>
AuthorDate: Sat Jan 20 02:32:08 2018 +0800
SCB-266 unify correctClassName logic
---
.../servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java | 4 +++-
.../apache/servicecomb/swagger/generator/core/utils/ClassUtils.java | 2 +-
.../apache/servicecomb/swagger/generator/core/TestClassUtils.java | 6 ++++++
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/common/common-protobuf/src/main/java/org/apache/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java b/common/common-protobuf/src/main/java/org/apache/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java
index 14fb7a3..f1c985f 100644
--- a/common/common-protobuf/src/main/java/org/apache/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java
+++ b/common/common-protobuf/src/main/java/org/apache/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java
@@ -158,7 +158,9 @@ public final class ProtobufSchemaUtils {
WrapClassConfig config = new WrapClassConfig();
config.setType(WrapType.NORMAL_WRAP);
- config.setClassName("gen.wrap.protobuf." + key.replaceAll("[<>]", "_").replace("[", "array_"));
+ config.setClassName(
+ "gen.wrap.protobuf." +
+ org.apache.servicecomb.swagger.generator.core.utils.ClassUtils.correctClassName(key));
if (!Void.TYPE.isAssignableFrom(javaType.getRawClass())) {
config.addField("field0", javaType);
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/utils/ClassUtils.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/utils/ClassUtils.java
index b3b85be..a7bd83e 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/utils/ClassUtils.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/utils/ClassUtils.java
@@ -249,7 +249,7 @@ public final class ClassUtils {
continue;
}
- part = part.replace('-', '_');
+ part = part.replaceAll("[<>-]", "_").replace("[", "array_");
if (Character.isDigit(part.charAt(0)) || SourceVersion.isKeyword(part)) {
part = "_" + part;
}
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestClassUtils.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestClassUtils.java
index efcbdab..389ae66 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestClassUtils.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestClassUtils.java
@@ -171,6 +171,12 @@ public class TestClassUtils {
}
@Test
+ public void testCorrectClassNameCanonical() {
+ String result = ClassUtils.correctClassName("java.util.List<java.lang.String>[");
+ Assert.assertThat(result, is("java.util.List_java.lang.String_array_"));
+ }
+
+ @Test
public void testGetOrCreateClass() {
String className = this.getClass().getCanonicalName();
--
To stop receiving notification emails like this one, please contact
"commits@servicecomb.apache.org" <co...@servicecomb.apache.org>.