提交 f9bffb6a 编写于 作者: 如梦技术's avatar 如梦技术 🐛

Merge branch 'mica-v2.4.x'

...@@ -27,7 +27,6 @@ import org.springframework.util.ClassUtils; ...@@ -27,7 +27,6 @@ import org.springframework.util.ClassUtils;
import java.beans.PropertyDescriptor; import java.beans.PropertyDescriptor;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.security.ProtectionDomain; import java.security.ProtectionDomain;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
...@@ -53,6 +52,7 @@ public abstract class MicaBeanCopier { ...@@ -53,6 +52,7 @@ public abstract class MicaBeanCopier {
private static final Signature BEAN_MAP_GET = TypeUtils.parseSignature("Object get(Object)"); private static final Signature BEAN_MAP_GET = TypeUtils.parseSignature("Object get(Object)");
private static final Type CLASS_UTILS = TypeUtils.parseType(ClassUtils.class.getName()); private static final Type CLASS_UTILS = TypeUtils.parseType(ClassUtils.class.getName());
private static final Signature IS_ASSIGNABLE_VALUE = TypeUtils.parseSignature("boolean isAssignableValue(Class, Object)"); private static final Signature IS_ASSIGNABLE_VALUE = TypeUtils.parseSignature("boolean isAssignableValue(Class, Object)");
private static final String BEAN_NAME_PREFIX = MicaBeanCopier.class.getName();
/** /**
* The map to store {@link MicaBeanCopier} of source type and class type for copy. * The map to store {@link MicaBeanCopier} of source type and class type for copy.
*/ */
...@@ -69,8 +69,11 @@ public abstract class MicaBeanCopier { ...@@ -69,8 +69,11 @@ public abstract class MicaBeanCopier {
Generator gen = new Generator(); Generator gen = new Generator();
gen.setSource(key.getSource()); gen.setSource(key.getSource());
gen.setTarget(key.getTarget()); gen.setTarget(key.getTarget());
gen.setContextClass(MicaBeanCopier.class);
gen.setUseConverter(key.isUseConverter()); gen.setUseConverter(key.isUseConverter());
gen.setNonNull(key.isNonNull()); gen.setNonNull(key.isNonNull());
gen.setNamePrefix(BEAN_NAME_PREFIX);
gen.setUseCache(true);
return gen.create(key); return gen.create(key);
}); });
} }
...@@ -96,19 +99,18 @@ public abstract class MicaBeanCopier { ...@@ -96,19 +99,18 @@ public abstract class MicaBeanCopier {
} }
public void setSource(Class source) { public void setSource(Class source) {
if (!Modifier.isPublic(source.getModifiers())) {
setNamePrefix(source.getName());
}
this.source = source; this.source = source;
} }
public void setTarget(Class target) { public void setTarget(Class target) {
if (!Modifier.isPublic(target.getModifiers())) {
setNamePrefix(target.getName());
}
this.target = target; this.target = target;
} }
@Override
public void setNamePrefix(String namePrefix) {
super.setNamePrefix(namePrefix);
}
public void setUseConverter(boolean useConverter) { public void setUseConverter(boolean useConverter) {
this.useConverter = useConverter; this.useConverter = useConverter;
} }
......
...@@ -20,6 +20,6 @@ public class TypeTest { ...@@ -20,6 +20,6 @@ public class TypeTest {
Object aa = new Integer[]{123123}; Object aa = new Integer[]{123123};
Stream<Integer> stream = Arrays.stream((Integer[]) aa); Stream<Integer> stream = Arrays.stream((Integer[]) aa);
Object[] objects = stream.unordered().toArray(); Object[] objects = stream.unordered().toArray();
System.out.println((int[])aa); System.out.println(aa);
} }
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册