From 8636a1a43d993c460bf4a7f3a0f9e9e406767893 Mon Sep 17 00:00:00 2001 From: Redkale Date: Fri, 23 Dec 2022 21:15:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96ConvertException?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/redkale/convert/ConvertFactory.java | 17 ++++++++--------- src/main/java/org/redkale/convert/DeMember.java | 9 ++++----- src/main/java/org/redkale/convert/EnMember.java | 9 ++++----- .../redkale/convert/json/JsonDynEncoder.java | 4 ++-- .../convert/json/JsonMultiImplDecoder.java | 4 ++-- 5 files changed, 20 insertions(+), 23 deletions(-) diff --git a/src/main/java/org/redkale/convert/ConvertFactory.java b/src/main/java/org/redkale/convert/ConvertFactory.java index e2cbedb66..1a94a1b53 100644 --- a/src/main/java/org/redkale/convert/ConvertFactory.java +++ b/src/main/java/org/redkale/convert/ConvertFactory.java @@ -12,11 +12,10 @@ import java.net.*; import java.nio.ByteBuffer; import java.nio.channels.CompletionHandler; import java.util.*; -import java.util.concurrent.*; +import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.*; import java.util.regex.Pattern; import java.util.stream.*; - import org.redkale.annotation.ConstructorParameters; import org.redkale.convert.bson.BsonConvert; import org.redkale.convert.ext.*; @@ -575,7 +574,7 @@ public abstract class ConvertFactory { if (params.length == 0) { encoder = (Encodeable) constructor.newInstance(); } else if (params.length == 1) { - if (paramTypes[0] != Type.class) throw new RuntimeException(clazz2 + " not found public empty-parameter Constructor"); + if (paramTypes[0] != Type.class) throw new ConvertException(clazz2 + " not found public empty-parameter Constructor"); encoder = (Encodeable) constructor.newInstance(colType); } else if (params.length == 2) { if (paramTypes[0] == ConvertFactory.class && paramTypes[1] == Type.class) { @@ -583,10 +582,10 @@ public abstract class ConvertFactory { } else if (paramTypes[0] == Type.class && paramTypes[1] == ConvertFactory.class) { encoder = (Encodeable) constructor.newInstance(colType, this); } else { - throw new RuntimeException(clazz2 + " not found public empty-parameter Constructor"); + throw new ConvertException(clazz2 + " not found public empty-parameter Constructor"); } } else { - throw new RuntimeException(clazz2 + " not found public empty-parameter Constructor"); + throw new ConvertException(clazz2 + " not found public empty-parameter Constructor"); } RedkaleClassLoader.putReflectionPublicConstructors(clazz2, clazz2.getName()); if (encoderList == null) encoderList = new ArrayList<>(); @@ -620,7 +619,7 @@ public abstract class ConvertFactory { if (params.length == 0) { decoder = (Decodeable) constructor.newInstance(); } else if (params.length == 1) { - if (paramTypes[0] != Type.class) throw new RuntimeException(clazz2 + " not found public empty-parameter Constructor"); + if (paramTypes[0] != Type.class) throw new ConvertException(clazz2 + " not found public empty-parameter Constructor"); decoder = (Decodeable) constructor.newInstance(colType); } else if (params.length == 2) { if (paramTypes[0] == ConvertFactory.class && paramTypes[1] == Type.class) { @@ -628,10 +627,10 @@ public abstract class ConvertFactory { } else if (paramTypes[0] == Type.class && paramTypes[1] == ConvertFactory.class) { decoder = (Decodeable) constructor.newInstance(colType, this); } else { - throw new RuntimeException(clazz2 + " not found public empty-parameter Constructor"); + throw new ConvertException(clazz2 + " not found public empty-parameter Constructor"); } } else { - throw new RuntimeException(clazz2 + " not found public empty-parameter Constructor"); + throw new ConvertException(clazz2 + " not found public empty-parameter Constructor"); } RedkaleClassLoader.putReflectionPublicConstructors(clazz2, clazz2.getName()); if (decoderList == null) decoderList = new ArrayList<>(); @@ -866,7 +865,7 @@ public abstract class ConvertFactory { try { clazz.getDeclaredField(field); } catch (Exception e) { - throw new RuntimeException(clazz + " not found field(" + field + ")"); + throw new ConvertException(clazz + " not found field(" + field + ")"); } if (coder == null) { Map map = this.fieldCoders.get(clazz); diff --git a/src/main/java/org/redkale/convert/DeMember.java b/src/main/java/org/redkale/convert/DeMember.java index c13e574b8..23b73b91d 100644 --- a/src/main/java/org/redkale/convert/DeMember.java +++ b/src/main/java/org/redkale/convert/DeMember.java @@ -6,11 +6,10 @@ package org.redkale.convert; import java.lang.reflect.*; - import org.redkale.annotation.Comment; import org.redkale.persistence.Column; import org.redkale.source.FilterColumn; -import org.redkale.util.*; +import org.redkale.util.Attribute; /** * 字段的反序列化操作类 @@ -95,7 +94,7 @@ public final class DeMember { Field field = clazz.getDeclaredField(fieldName); return new DeMember<>(Attribute.create(field), factory.loadDecoder(field.getGenericType()), field, null); } catch (Exception e) { - throw new RuntimeException(e); + throw new ConvertException(e); } } @@ -104,7 +103,7 @@ public final class DeMember { Field field = clazz.getDeclaredField(fieldName); return new DeMember<>(Attribute.create(clazz, fieldName, fieldType), factory.loadDecoder(fieldType), field, null); } catch (Exception e) { - throw new RuntimeException(e); + throw new ConvertException(e); } } @@ -160,7 +159,7 @@ public final class DeMember { if (o == null) return -1; if (this.position != o.position) return (this.position == 0 ? Integer.MAX_VALUE : this.position) - (o.position == 0 ? Integer.MAX_VALUE : o.position); if (this.index != o.index) return (this.index == 0 ? Integer.MAX_VALUE : this.index) - (o.index == 0 ? Integer.MAX_VALUE : o.index); - if (this.index != 0) throw new RuntimeException("fields (" + attribute.field() + ", " + o.attribute.field() + ") have same ConvertColumn.index(" + this.index + ") in " + attribute.declaringClass()); + if (this.index != 0) throw new ConvertException("fields (" + attribute.field() + ", " + o.attribute.field() + ") have same ConvertColumn.index(" + this.index + ") in " + attribute.declaringClass()); return fieldSort ? this.attribute.field().compareTo(o.attribute.field()) : 0; } diff --git a/src/main/java/org/redkale/convert/EnMember.java b/src/main/java/org/redkale/convert/EnMember.java index b6a116809..c1a7e6378 100644 --- a/src/main/java/org/redkale/convert/EnMember.java +++ b/src/main/java/org/redkale/convert/EnMember.java @@ -6,11 +6,10 @@ package org.redkale.convert; import java.lang.reflect.*; - import org.redkale.annotation.Comment; import org.redkale.persistence.Column; import org.redkale.source.FilterColumn; -import org.redkale.util.*; +import org.redkale.util.Attribute; /** * 字段的序列化操作类 @@ -106,7 +105,7 @@ public final class EnMember { Field field = clazz.getDeclaredField(fieldname); return new EnMember<>(Attribute.create(field), factory.loadEncoder(field.getGenericType()), field, null); } catch (Exception e) { - throw new RuntimeException(e); + throw new ConvertException(e); } } @@ -115,7 +114,7 @@ public final class EnMember { Field field = clazz.getDeclaredField(fieldname); return new EnMember<>(Attribute.create(clazz, fieldname, fieldtype), factory.loadEncoder(fieldtype), field, null); } catch (Exception e) { - throw new RuntimeException(e); + throw new ConvertException(e); } } @@ -179,7 +178,7 @@ public final class EnMember { if (o == null) return -1; if (this.position != o.position) return (this.position == 0 ? Integer.MAX_VALUE : this.position) - (o.position == 0 ? Integer.MAX_VALUE : o.position); if (this.index != o.index) return (this.index == 0 ? Integer.MAX_VALUE : this.index) - (o.index == 0 ? Integer.MAX_VALUE : o.index); - if (this.index != 0) throw new RuntimeException("fields (" + attribute.field() + ", " + o.attribute.field() + ") have same ConvertColumn.index(" + this.index + ") in " + attribute.declaringClass()); + if (this.index != 0) throw new ConvertException("fields (" + attribute.field() + ", " + o.attribute.field() + ") have same ConvertColumn.index(" + this.index + ") in " + attribute.declaringClass()); return fieldSort ? this.attribute.field().compareTo(o.attribute.field()) : 0; } diff --git a/src/main/java/org/redkale/convert/json/JsonDynEncoder.java b/src/main/java/org/redkale/convert/json/JsonDynEncoder.java index fcdc0cdcd..2d078fb64 100644 --- a/src/main/java/org/redkale/convert/json/JsonDynEncoder.java +++ b/src/main/java/org/redkale/convert/json/JsonDynEncoder.java @@ -8,8 +8,8 @@ package org.redkale.convert.json; import java.lang.reflect.*; import java.lang.reflect.Type; import java.util.*; -import org.redkale.asm.*; import static org.redkale.asm.ClassWriter.COMPUTE_FRAMES; +import org.redkale.asm.*; import static org.redkale.asm.Opcodes.*; import org.redkale.convert.*; import org.redkale.convert.ext.*; @@ -705,7 +705,7 @@ public abstract class JsonDynEncoder implements Encodeable { } return resultEncoder; } catch (Exception ex) { - throw new RuntimeException(ex); + throw new ConvertException(ex); } } diff --git a/src/main/java/org/redkale/convert/json/JsonMultiImplDecoder.java b/src/main/java/org/redkale/convert/json/JsonMultiImplDecoder.java index 4f58e5253..dcfc05832 100644 --- a/src/main/java/org/redkale/convert/json/JsonMultiImplDecoder.java +++ b/src/main/java/org/redkale/convert/json/JsonMultiImplDecoder.java @@ -5,7 +5,7 @@ package org.redkale.convert.json; import java.lang.reflect.Type; import java.util.*; import org.redkale.convert.*; -import org.redkale.util.*; +import org.redkale.util.Attribute; /** * 抽象或接口类存在多种实现类的反序列化解析器
@@ -56,7 +56,7 @@ public class JsonMultiImplDecoder implements Decodeable { if (t == null) { fieldTypes.put(name, member.getAttribute()); } else if (!member.getAttribute().genericType().equals(t.genericType())) { - throw new RuntimeException("Field(" + name + ")'s Type is not same in " + member.getAttribute().declaringClass() + " and " + t.declaringClass()); + throw new ConvertException("Field(" + name + ")'s Type is not same in " + member.getAttribute().declaringClass() + " and " + t.declaringClass()); } } this.decoders[i] = decoder;