From 24335472785efe247cafffceffefbe35d9963bfc Mon Sep 17 00:00:00 2001 From: kkhan Date: Fri, 14 Jul 2006 10:04:35 +0000 Subject: [PATCH] Move handling of primitive class value from MemberValue to ClassMemberValue git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@292 30ef5769-5b8d-40dd-aea6-55b5d6557bb3 --- .../bytecode/annotation/ClassMemberValue.java | 39 ++++++++++++++++++- .../bytecode/annotation/MemberValue.java | 36 ----------------- 2 files changed, 38 insertions(+), 37 deletions(-) diff --git a/src/main/javassist/bytecode/annotation/ClassMemberValue.java b/src/main/javassist/bytecode/annotation/ClassMemberValue.java index cf2f510b..af2a6c36 100644 --- a/src/main/javassist/bytecode/annotation/ClassMemberValue.java +++ b/src/main/javassist/bytecode/annotation/ClassMemberValue.java @@ -63,7 +63,44 @@ public class ClassMemberValue extends MemberValue { Object getValue(ClassLoader cl, ClassPool cp, Method m) throws ClassNotFoundException { - return loadClass(cl, getValue()); + final String classname = getValue(); + if (classname.equals("void")) + { + return void.class; + } + if (classname.equals("int")) + { + return int.class; + } + if (classname.equals("byte")) + { + return byte.class; + } + if (classname.equals("long")) + { + return long.class; + } + if (classname.equals("double")) + { + return double.class; + } + if (classname.equals("float")) + { + return float.class; + } + if (classname.equals("char")) + { + return char.class; + } + if (classname.equals("short")) + { + return short.class; + } + if (classname.equals("boolean")) + { + return boolean.class; + } + return loadClass(cl, classname); } Class getType(ClassLoader cl) throws ClassNotFoundException { diff --git a/src/main/javassist/bytecode/annotation/MemberValue.java b/src/main/javassist/bytecode/annotation/MemberValue.java index cd2f3cc8..f2e70916 100644 --- a/src/main/javassist/bytecode/annotation/MemberValue.java +++ b/src/main/javassist/bytecode/annotation/MemberValue.java @@ -48,42 +48,6 @@ public abstract class MemberValue { static Class loadClass(ClassLoader cl, String classname) throws ClassNotFoundException { - if (classname.equals("void")) - { - return void.class; - } - if (classname.equals("int")) - { - return int.class; - } - if (classname.equals("byte")) - { - return byte.class; - } - if (classname.equals("long")) - { - return long.class; - } - if (classname.equals("double")) - { - return double.class; - } - if (classname.equals("float")) - { - return float.class; - } - if (classname.equals("char")) - { - return char.class; - } - if (classname.equals("short")) - { - return short.class; - } - if (classname.equals("boolean")) - { - return boolean.class; - } return Class.forName(classname, true, cl); } -- 2.39.5