This is an automated email from the ASF dual-hosted git repository.
albumenj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/master by this push:
new 1a7ca1e Process TypeDefinition#properties when it is not a primitive
type object (#7579)
1a7ca1e is described below
commit 1a7ca1e431bd960d44910c2b2223e74a8ddf0442
Author: 灼华 <[email protected]>
AuthorDate: Tue May 18 08:25:09 2021 +0800
Process TypeDefinition#properties when it is not a primitive type object
(#7579)
* process TypeDefinition#properties when necessary
* Fix code-style check
---
.../metadata/definition/TypeDefinitionBuilder.java | 5 -----
.../definition/builder/DefaultTypeBuilder.java | 18 +++++++++++-------
2 files changed, 11 insertions(+), 12 deletions(-)
diff --git
a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/definition/TypeDefinitionBuilder.java
b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/definition/TypeDefinitionBuilder.java
index fe99d2e..79bee90 100755
---
a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/definition/TypeDefinitionBuilder.java
+++
b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/definition/TypeDefinitionBuilder.java
@@ -30,8 +30,6 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
-import static org.apache.dubbo.common.utils.ClassUtils.isSimpleType;
-
/**
* 2015/1/27.
*/
@@ -55,9 +53,6 @@ public class TypeDefinitionBuilder {
td = DefaultTypeBuilder.build(clazz, typeCache);
td.setTypeBuilderName(DefaultTypeBuilder.class.getName());
}
- if (isSimpleType(clazz)) { // changed since 2.7.6
- td.setProperties(null);
- }
return td;
}
diff --git
a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/definition/builder/DefaultTypeBuilder.java
b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/definition/builder/DefaultTypeBuilder.java
index 567b4b3..42ecafb 100755
---
a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/definition/builder/DefaultTypeBuilder.java
+++
b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/definition/builder/DefaultTypeBuilder.java
@@ -26,6 +26,8 @@ import java.lang.reflect.Type;
import java.util.List;
import java.util.Map;
+import static org.apache.dubbo.common.utils.ClassUtils.isSimpleType;
+
/**
* 2015/1/27.
*/
@@ -51,14 +53,16 @@ public final class DefaultTypeBuilder {
ref.set$ref(name);
typeCache.put(clazz, ref);
- List<Field> fields = ClassUtils.getNonStaticFields(clazz);
- for (Field field : fields) {
- String fieldName = field.getName();
- Class<?> fieldClass = field.getType();
- Type fieldType = field.getGenericType();
+ if(!clazz.isPrimitive() && !isSimpleType(clazz)){
+ List<Field> fields = ClassUtils.getNonStaticFields(clazz);
+ for (Field field : fields) {
+ String fieldName = field.getName();
+ Class<?> fieldClass = field.getType();
+ Type fieldType = field.getGenericType();
- TypeDefinition fieldTd = TypeDefinitionBuilder.build(fieldType,
fieldClass, typeCache);
- td.getProperties().put(fieldName, fieldTd);
+ TypeDefinition fieldTd =
TypeDefinitionBuilder.build(fieldType, fieldClass, typeCache);
+ td.getProperties().put(fieldName, fieldTd);
+ }
}
typeCache.put(clazz, td);