This commit is contained in:
@@ -205,6 +205,7 @@ public abstract class ConvertFactory<R extends Reader, W extends Writer> {
|
||||
* 使所有类的所有被声明为ConvertColumn.ignore = true 的字段或方法变为ConvertColumn.ignore = false
|
||||
*
|
||||
* @param skipIgnore
|
||||
*
|
||||
* @return 自身
|
||||
*/
|
||||
public ConvertFactory<R, W> skipAllIgnore(final boolean skipIgnore) {
|
||||
@@ -386,7 +387,7 @@ public abstract class ConvertFactory<R extends Reader, W extends Writer> {
|
||||
} else if (clazz == Object.class) {
|
||||
od = new ObjectDecoder(type);
|
||||
decoder = od;
|
||||
} else if (!clazz.getName().startsWith("java.")) {
|
||||
} else if (!clazz.getName().startsWith("java.") || clazz.getName().startsWith("java.awt.geom.Point2D")) {
|
||||
Decodeable simpleCoder = null;
|
||||
for (final Method method : clazz.getDeclaredMethods()) {
|
||||
if (!Modifier.isStatic(method.getModifiers())) continue;
|
||||
|
||||
@@ -98,6 +98,10 @@ public final class ObjectDecoder<R extends Reader, T> implements Decodeable<R, T
|
||||
ref = factory.findRef(method);
|
||||
if (ref != null && ref.ignore()) continue;
|
||||
Type t = ObjectEncoder.createClassType(method.getGenericParameterTypes()[0], this.type);
|
||||
if (t instanceof Class) {
|
||||
Class ct = (Class) t;
|
||||
if (ct.isInterface() || Modifier.isAbstract(ct.getModifiers())) continue;
|
||||
}
|
||||
list.add(new DeMember(ObjectEncoder.createAttribute(factory, clazz, null, null, method), factory.loadDecoder(t)));
|
||||
}
|
||||
if (cps != null) { //可能存在某些构造函数中的字段名不存在setter方法
|
||||
@@ -161,6 +165,7 @@ public final class ObjectDecoder<R extends Reader, T> implements Decodeable<R, T
|
||||
* 对象格式: [0x1][short字段个数][字段名][字段值]...[0x2]
|
||||
*
|
||||
* @param in 输入流
|
||||
*
|
||||
* @return 反解析后的对象结果
|
||||
*/
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user