[jboss-cvs] JBossAS SVN: r85909 - in projects/jboss-reflect/trunk/src: main/java/org/jboss/joinpoint/plugins and 7 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Mar 16 07:38:26 EDT 2009


Author: stalep
Date: 2009-03-16 07:38:26 -0400 (Mon, 16 Mar 2009)
New Revision: 85909

Added:
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistFieldInfoTestCase.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/ModifierInfoTestCase.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/PojoField.java
Modified:
   projects/jboss-reflect/trunk/src/main/java/org/jboss/beans/info/plugins/AbstractBeanInfoFactory.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/beans/info/plugins/FieldFilter.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/joinpoint/plugins/Config.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/AnnotationInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/ClassInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/ConstructorInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/EnumInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/FieldInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/InterfaceInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/MethodInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/IntrospectionTypeInfoFactoryImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectClassInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectConstructorInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectFieldInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectMethodInfoImpl.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistConstructorInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistFieldInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistMethodInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistTypeInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/AnnotationInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/ClassInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/DelegateClassInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/MemberInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/ModifierInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/MutableClassInfo.java
   projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/NumberInfo.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/beaninfo/test/AbstractBeanInfoTest.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/AbstractClassInfoTest.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoClassTest.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoEnumTest.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoGenericClassTest.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoGenericInterfaceTest.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoInterfaceTest.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoTest.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistBodyTestCase.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistMutableMethodInfoTestCase.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistMutableTypeInfoTestCase.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistUtilTestCase.java
   projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/Pojo.java
Log:
[JBREFLECT-49]
Changed ModifierInfo to a enum and updated all dependencies accordingly.
added testcase for MutableFieldInfo

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/beans/info/plugins/AbstractBeanInfoFactory.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/beans/info/plugins/AbstractBeanInfoFactory.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/beans/info/plugins/AbstractBeanInfoFactory.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -210,7 +210,7 @@
       HashSet<ConstructorInfo> result = new HashSet<ConstructorInfo>();
       for (int i = 0; i < cinfos.length; ++i)
       {
-         if (cinfos[i].isPublic() && cinfos[i].isStatic() == false)
+         if (cinfos[i].getModifiers().isPublic() && cinfos[i].getModifiers().isStatic() == false)
             result.add(cinfos[i]);
       }
       return result;
@@ -233,7 +233,7 @@
          {
             for (int i = 0; i < minfos.length; ++i)
             {
-               if (result.contains(minfos[i]) == false && minfos[i].isPublic() && minfos[i].isStatic() == false && minfos[i].isVolatile() == false)
+               if (result.contains(minfos[i]) == false && minfos[i].getModifiers().isPublic() && minfos[i].getModifiers().isStatic() == false && minfos[i].getModifiers().isVolatile() == false)
                   result.add(minfos[i]);
             }
          }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/beans/info/plugins/FieldFilter.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/beans/info/plugins/FieldFilter.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/beans/info/plugins/FieldFilter.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -59,7 +59,7 @@
    {
       public boolean useField(FieldInfo field)
       {
-         return field.isPublic();
+         return field.getModifiers().isPublic();
       }
    }
 }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/joinpoint/plugins/Config.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/joinpoint/plugins/Config.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/joinpoint/plugins/Config.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -420,7 +420,7 @@
          {
             if (name.equals(method.getName()) &&
                   equals(paramTypes, method.getParameterTypes()) &&
-                  (strict == false || (method.isStatic() == isStatic && method.isPublic() == isPublic)))
+                  (strict == false || (method.getModifiers().isStatic() == isStatic && method.getModifiers().isPublic() == isPublic)))
                return method;
          }
       }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/AnnotationInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/AnnotationInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/AnnotationInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -25,6 +25,7 @@
 
 import org.jboss.reflect.spi.AnnotationAttribute;
 import org.jboss.reflect.spi.AnnotationInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 
 /**
  * Annotation Info
@@ -56,7 +57,7 @@
     * @param name the name
     * @param modifiers the modifiers
     */
-   public AnnotationInfoImpl(String name, int modifiers)
+   public AnnotationInfoImpl(String name, ModifierInfo modifiers)
    {
       super(name, modifiers);
    }
@@ -85,7 +86,7 @@
       return true;
    }
    
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
       return modifiers;
    }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/ClassInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/ClassInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/ClassInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -33,6 +33,7 @@
 import org.jboss.reflect.spi.FieldInfo;
 import org.jboss.reflect.spi.InterfaceInfo;
 import org.jboss.reflect.spi.MethodInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.PackageInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.reflect.spi.TypeInfoFactory;
@@ -78,7 +79,7 @@
    protected String name;
    
    /** The class modifiers */
-   protected int modifiers;
+   protected ModifierInfo modifiers;
    
    /** The interfaces */
    protected InterfaceInfo[] interfaces = UNKNOWN_INTERFACES;
@@ -148,7 +149,7 @@
     * @param name the class name
     * @param modifiers the class modifiers
     */
-   public ClassInfoImpl(String name, int modifiers)
+   public ClassInfoImpl(String name, ModifierInfo modifiers)
    {
       this.name = name;
       this.modifiers = modifiers;
@@ -162,7 +163,7 @@
     * @param interfaces the interfaces
     * @param superclass the super class
     */
-   public ClassInfoImpl(String name, int modifiers, InterfaceInfo[] interfaces,
+   public ClassInfoImpl(String name, ModifierInfo modifiers, InterfaceInfo[] interfaces,
                         ClassInfoImpl superclass)
    {
       this.name = name;
@@ -270,7 +271,7 @@
    {
       setAnnotatedElement(type);
       if (type != null)
-         modifiers = type.getModifiers();
+         modifiers = ModifierInfo.getNewModifier(type.getModifiers());
    }
    
    /**
@@ -439,24 +440,24 @@
       return genericSuperclass;
    }
    
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
       return modifiers;
    }
    
    public boolean isStatic()
    {
-      return Modifier.isStatic(modifiers);
+      return modifiers.isStatic();
    }
    
    public boolean isPublic()
    {
-      return Modifier.isPublic(modifiers);
+      return modifiers.isPublic();
    }
 
    public boolean isVolatile()
    {
-      return Modifier.isVolatile(modifiers);
+      return modifiers.isVolatile();
    }
 
    public String getName()

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/ConstructorInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/ConstructorInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/ConstructorInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -28,6 +28,7 @@
 import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.reflect.spi.ConstructorInfo;
 import org.jboss.reflect.spi.MethodInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.ParameterInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.util.JBossStringBuilder;
@@ -57,7 +58,7 @@
    protected ClassInfo[] exceptionTypes;
    
    /** The modifiers */
-   protected int modifiers;
+   protected ModifierInfo modifiers;
    
    /** The hash code */
    protected int hash;
@@ -79,7 +80,7 @@
     * @param modifiers the modifiers
     * @param declaring the declaring class
     */
-   public ConstructorInfoImpl(AnnotationValue[] annotations, TypeInfo[] parameterTypes, AnnotationValue[][] parameterAnnotations, ClassInfo[] exceptionTypes, int modifiers, ClassInfo declaring)
+   public ConstructorInfoImpl(AnnotationValue[] annotations, TypeInfo[] parameterTypes, AnnotationValue[][] parameterAnnotations, ClassInfo[] exceptionTypes, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations);
       if (parameterTypes == null)
@@ -112,7 +113,7 @@
     * @param modifiers the modifiers
     * @param declaring the declaring class
     */
-   public ConstructorInfoImpl(AnnotationValue[] annotations, ParameterInfo[] parameters, ClassInfo[] exceptionTypes, int modifiers, ClassInfo declaring)
+   public ConstructorInfoImpl(AnnotationValue[] annotations, ParameterInfo[] parameters, ClassInfo[] exceptionTypes, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations);
       if (parameters == null || parameters.length == 0)
@@ -156,24 +157,24 @@
       return exceptionTypes;
    }
    
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
       return modifiers;
    }
    
    public boolean isStatic()
    {
-      return Modifier.isStatic(modifiers);
+      return modifiers.isStatic();
    }
    
    public boolean isPublic()
    {
-      return Modifier.isPublic(modifiers);
+      return modifiers.isPublic();
    }
    
    public boolean isVolatile()
    {
-      return Modifier.isVolatile(modifiers);
+      return modifiers.isVolatile();
    }
 
    public Object newInstance(Object[] args) throws Throwable

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/EnumInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/EnumInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/EnumInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -25,6 +25,7 @@
 
 import org.jboss.reflect.spi.EnumConstantInfo;
 import org.jboss.reflect.spi.EnumInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 
 /**
  * Enumeration info
@@ -56,7 +57,7 @@
     * @param name the enumeration name
     * @param modifiers the modifiers
     */
-   public EnumInfoImpl(String name, int modifiers)
+   public EnumInfoImpl(String name, ModifierInfo modifiers)
    {
       super(name, modifiers);
    }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/FieldInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/FieldInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/FieldInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -26,6 +26,7 @@
 import org.jboss.reflect.spi.AnnotationValue;
 import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.reflect.spi.FieldInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.util.JBossStringBuilder;
 import org.jboss.util.NotImplementedException;
@@ -48,7 +49,7 @@
    protected TypeInfo type;
    
    /** The field modifier */
-   protected int modifiers;
+   protected ModifierInfo modifiers;
    
    /** The declaring class */
    protected ClassInfo declaringClass;
@@ -72,7 +73,7 @@
     * @param modifiers the field modifiers
     * @param declaring the declaring class
     */
-   public FieldInfoImpl(AnnotationValue[] annotations, String name, TypeInfo type, int modifiers, ClassInfo declaring)
+   public FieldInfoImpl(AnnotationValue[] annotations, String name, TypeInfo type, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations);
       this.name = name;
@@ -97,24 +98,24 @@
       return declaringClass;
    }
    
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
       return modifiers;
    }
    
    public boolean isStatic()
    {
-      return Modifier.isStatic(modifiers);
+      return modifiers.isStatic();
    }
    
    public boolean isPublic()
    {
-      return Modifier.isPublic(modifiers);
+      return modifiers.isPublic();
    }
 
    public boolean isVolatile()
    {
-      return Modifier.isVolatile(modifiers);
+      return modifiers.isVolatile();
    }
 
    public Object get(Object target) throws Throwable

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/InterfaceInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/InterfaceInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/InterfaceInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -22,6 +22,7 @@
 package org.jboss.reflect.plugins;
 
 import org.jboss.reflect.spi.InterfaceInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 
 /**
  * Interface info
@@ -57,7 +58,7 @@
     * @param name the interface name
     * @param modifiers the interface modifier
     */
-   public InterfaceInfoImpl(String name, int modifiers)
+   public InterfaceInfoImpl(String name, ModifierInfo modifiers)
    {
       super(name, modifiers);
    }
@@ -69,7 +70,7 @@
     * @param modifiers the interface modifier
     * @param interfaces the interfaces
     */
-   public InterfaceInfoImpl(String name, int modifiers, InterfaceInfo[] interfaces)
+   public InterfaceInfoImpl(String name, ModifierInfo modifiers, InterfaceInfo[] interfaces)
    {
       super(name, modifiers, interfaces, null);
    }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/MethodInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/MethodInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/MethodInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -27,6 +27,7 @@
 import org.jboss.reflect.spi.AnnotationValue;
 import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.reflect.spi.MethodInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.ParameterInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.util.JBossStringBuilder;
@@ -59,7 +60,7 @@
    protected ClassInfo[] exceptionTypes;
    
    /** The modifiers */
-   protected int modifiers;
+   protected ModifierInfo modifiers;
    
    /** The return type */
    protected TypeInfo returnType;
@@ -86,7 +87,7 @@
     * @param modifiers the modifiers
     * @param declaring the declaring class
     */
-   public MethodInfoImpl(AnnotationValue[] annotations, String name, TypeInfo returnType, TypeInfo[] parameterTypes, AnnotationValue[][] parameterAnnotations, ClassInfo[] exceptionTypes, int modifiers, ClassInfo declaring)
+   public MethodInfoImpl(AnnotationValue[] annotations, String name, TypeInfo returnType, TypeInfo[] parameterTypes, AnnotationValue[][] parameterAnnotations, ClassInfo[] exceptionTypes, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations);
       this.name = name;
@@ -123,7 +124,7 @@
     * @param modifiers the modifiers
     * @param declaring the declaring class
     */
-   public MethodInfoImpl(AnnotationValue[] annotations, String name, TypeInfo returnType, ParameterInfo[] parameters, ClassInfo[] exceptionTypes, int modifiers, ClassInfo declaring)
+   public MethodInfoImpl(AnnotationValue[] annotations, String name, TypeInfo returnType, ParameterInfo[] parameters, ClassInfo[] exceptionTypes, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations);
       this.name = name;
@@ -179,24 +180,24 @@
       return returnType;
    }
    
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
       return modifiers;
    }
    
    public boolean isStatic()
    {
-      return Modifier.isStatic(modifiers);
+      return modifiers.isStatic();
    }
    
    public boolean isPublic()
    {
-      return Modifier.isPublic(modifiers);
+      return modifiers.isPublic();
    }
    
    public boolean isVolatile()
    {
-      return Modifier.isVolatile(modifiers);
+      return modifiers.isVolatile();
    }
 
    public Object invoke(Object target, Object[] args) throws Throwable

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/IntrospectionTypeInfoFactoryImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/IntrospectionTypeInfoFactoryImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/IntrospectionTypeInfoFactoryImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -53,6 +53,7 @@
 import org.jboss.reflect.spi.ArrayInfo;
 import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.reflect.spi.InterfaceInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.NumberInfo;
 import org.jboss.reflect.spi.PrimitiveInfo;
 import org.jboss.reflect.spi.TypeInfo;
@@ -159,7 +160,7 @@
                if (genericParameterTypes.length != parameterTypes.length)
                   genericParameterTypes = parameterTypes;
 
-               infos[i] = new ReflectConstructorInfoImpl(annotations, getTypeInfos(genericParameterTypes), getParameterAnnotations(constructors[i].getParameterAnnotations()), getClassInfos(constructors[i].getGenericExceptionTypes()), constructors[i].getModifiers(), (ClassInfo) getTypeInfo(constructors[i].getDeclaringClass()));
+               infos[i] = new ReflectConstructorInfoImpl(annotations, getTypeInfos(genericParameterTypes), getParameterAnnotations(constructors[i].getParameterAnnotations()), getClassInfos(constructors[i].getGenericExceptionTypes()), ModifierInfo.getNewModifier(constructors[i].getModifiers()), (ClassInfo) getTypeInfo(constructors[i].getDeclaringClass()));
                infos[i].setConstructor(constructors[i]);
             }
          }
@@ -183,7 +184,7 @@
             for (int i = 0; i < fields.length; ++i)
             {
                AnnotationValue[] annotations = getAnnotations(fields[i]);
-               infos[i] = new ReflectFieldInfoImpl(annotations, fields[i].getName(), getTypeInfo(fields[i].getGenericType()), fields[i].getModifiers(), (ClassInfo) getTypeInfo(fields[i].getDeclaringClass()));
+               infos[i] = new ReflectFieldInfoImpl(annotations, fields[i].getName(), getTypeInfo(fields[i].getGenericType()), ModifierInfo.getNewModifier(fields[i].getModifiers()), (ClassInfo) getTypeInfo(fields[i].getDeclaringClass()));
                infos[i].setField(fields[i]);
             }
 
@@ -208,7 +209,7 @@
             for (int i = 0; i < methods.length; ++i)
             {
                AnnotationValue[] annotations = getAnnotations(methods[i]);
-               infos[i] = new ReflectMethodInfoImpl(annotations, methods[i].getName(), getTypeInfo(methods[i].getGenericReturnType()), getTypeInfos(methods[i].getGenericParameterTypes()), getParameterAnnotations(methods[i].getParameterAnnotations()), getClassInfos(methods[i].getGenericExceptionTypes()), methods[i].getModifiers(), (ClassInfo) getTypeInfo(methods[i].getDeclaringClass()));
+               infos[i] = new ReflectMethodInfoImpl(annotations, methods[i].getName(), getTypeInfo(methods[i].getGenericReturnType()), getTypeInfos(methods[i].getGenericParameterTypes()), getParameterAnnotations(methods[i].getParameterAnnotations()), getClassInfos(methods[i].getGenericExceptionTypes()), ModifierInfo.getNewModifier(methods[i].getModifiers()), (ClassInfo) getTypeInfo(methods[i].getDeclaringClass()));
                infos[i].setMethod(methods[i]);
             }
             return infos;
@@ -430,7 +431,7 @@
       }
       else if (clazz.isEnum())
       {
-         EnumInfoImpl enumInfoImpl = new EnumInfoImpl(clazz.getName(), clazz.getModifiers());
+         EnumInfoImpl enumInfoImpl = new EnumInfoImpl(clazz.getName(), ModifierInfo.getNewModifier(clazz.getModifiers()));
          result = enumInfoImpl;
          Field[] fields = clazz.getFields();
          EnumConstantInfoImpl[] constants = new EnumConstantInfoImpl[fields.length];
@@ -444,7 +445,7 @@
       }
       else if (clazz.isAnnotation())
       {
-         result = new AnnotationInfoImpl(clazz.getName(), clazz.getModifiers());
+         result = new AnnotationInfoImpl(clazz.getName(), ModifierInfo.getNewModifier(clazz.getModifiers()));
          Method[] methods = getDeclaredMethods(clazz);
          AnnotationAttributeImpl[] atttributes = new AnnotationAttributeImpl[methods.length];
          for (int i = 0 ; i < methods.length ; i++)

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectClassInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectClassInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectClassInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -23,6 +23,7 @@
 
 import org.jboss.reflect.plugins.ClassInfoImpl;
 import org.jboss.reflect.spi.InterfaceInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.TypeInfoFactory;
 
 /**
@@ -61,7 +62,7 @@
     * @param interfaces the interfaces
     * @param superclass the super class
     */
-   public ReflectClassInfoImpl(String name, int modifiers, InterfaceInfo[] interfaces,
+   public ReflectClassInfoImpl(String name, ModifierInfo modifiers, InterfaceInfo[] interfaces,
                         ReflectClassInfoImpl superclass)
    {
       super(name, modifiers, interfaces, superclass);

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectConstructorInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectConstructorInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectConstructorInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -28,6 +28,7 @@
 import org.jboss.reflect.plugins.ConstructorInfoImpl;
 import org.jboss.reflect.spi.AnnotationValue;
 import org.jboss.reflect.spi.ClassInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.ParameterInfo;
 import org.jboss.reflect.spi.TypeInfo;
 
@@ -62,7 +63,7 @@
     * @param modifiers the modifiers
     * @param declaring the declaring class
     */
-   public ReflectConstructorInfoImpl(AnnotationValue[] annotations, TypeInfo[] parameterTypes, AnnotationValue[][] parameterAnnotations, ClassInfo[] exceptionTypes, int modifiers, ClassInfo declaring)
+   public ReflectConstructorInfoImpl(AnnotationValue[] annotations, TypeInfo[] parameterTypes, AnnotationValue[][] parameterAnnotations, ClassInfo[] exceptionTypes, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations, parameterTypes, parameterAnnotations, exceptionTypes, modifiers, declaring);
    }
@@ -76,7 +77,7 @@
     * @param modifiers the modifiers
     * @param declaring the declaring class
     */
-   public ReflectConstructorInfoImpl(AnnotationValue[] annotations, ParameterInfo[] parameters, ClassInfo[] exceptionTypes, int modifiers, ClassInfo declaring)
+   public ReflectConstructorInfoImpl(AnnotationValue[] annotations, ParameterInfo[] parameters, ClassInfo[] exceptionTypes, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations, parameters, exceptionTypes, modifiers, declaring);
    }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectFieldInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectFieldInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectFieldInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -33,6 +33,7 @@
 import org.jboss.reflect.plugins.FieldInfoImpl;
 import org.jboss.reflect.spi.AnnotationValue;
 import org.jboss.reflect.spi.ClassInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.TypeInfo;
 
 /**
@@ -69,7 +70,7 @@
     * @param modifiers the field modifiers
     * @param declaring the declaring class
     */
-   public ReflectFieldInfoImpl(AnnotationValue[] annotations, String name, TypeInfo type, int modifiers, ClassInfo declaring)
+   public ReflectFieldInfoImpl(AnnotationValue[] annotations, String name, TypeInfo type, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations, name, type, modifiers, declaring);
    }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectMethodInfoImpl.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectMethodInfoImpl.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/introspection/ReflectMethodInfoImpl.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -33,6 +33,7 @@
 import org.jboss.reflect.plugins.MethodInfoImpl;
 import org.jboss.reflect.spi.AnnotationValue;
 import org.jboss.reflect.spi.ClassInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.ParameterInfo;
 import org.jboss.reflect.spi.TypeInfo;
 
@@ -73,7 +74,7 @@
     * @param modifiers the modifiers
     * @param declaring the declaring class
     */
-   public ReflectMethodInfoImpl(AnnotationValue[] annotations, String name, TypeInfo returnType, TypeInfo[] parameterTypes, AnnotationValue[][] parameterAnnotations, ClassInfo[] exceptionTypes, int modifiers, ClassInfo declaring)
+   public ReflectMethodInfoImpl(AnnotationValue[] annotations, String name, TypeInfo returnType, TypeInfo[] parameterTypes, AnnotationValue[][] parameterAnnotations, ClassInfo[] exceptionTypes, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations, name, returnType, parameterTypes, parameterAnnotations, exceptionTypes, modifiers, declaring);
    }
@@ -89,7 +90,7 @@
     * @param modifiers the modifiers
     * @param declaring the declaring class
     */
-   public ReflectMethodInfoImpl(AnnotationValue[] annotations, String name, TypeInfo returnType, ParameterInfo[] parameters, ClassInfo[] exceptionTypes, int modifiers, ClassInfo declaring)
+   public ReflectMethodInfoImpl(AnnotationValue[] annotations, String name, TypeInfo returnType, ParameterInfo[] parameters, ClassInfo[] exceptionTypes, ModifierInfo modifiers, ClassInfo declaring)
    {
       super(annotations, name, returnType, parameters, exceptionTypes, modifiers, declaring);
    }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistConstructorInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistConstructorInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistConstructorInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -21,7 +21,6 @@
 */
 package org.jboss.reflect.plugins.javassist;
 
-import java.lang.reflect.Modifier;
 import java.util.Arrays;
 
 import javassist.CannotCompileException;
@@ -76,24 +75,24 @@
       
    }
 
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
-      return ctConstructor.getModifiers();
+      return ModifierInfo.getNewModifier(ctConstructor.getModifiers());
    }
 
    public boolean isPublic()
    {
-      return Modifier.isPublic(getModifiers());
+      return getModifiers().isPublic();
    }
 
    public boolean isStatic()
    {
-      return Modifier.isStatic(getModifiers());
+      return getModifiers().isStatic();
    }
 
    public boolean isVolatile()
    {
-      return Modifier.isVolatile(getModifiers());
+      return getModifiers().isVolatile();
    }
 
    public ClassInfo getDeclaringClass()

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistFieldInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistFieldInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistFieldInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -32,7 +32,6 @@
 
 import javassist.CtClass;
 import javassist.CtField;
-import javassist.Modifier;
 import javassist.NotFoundException;
 
 /**
@@ -80,24 +79,24 @@
       return ctField.getName();
    }
 
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
-      return ctField.getModifiers();
+      return ModifierInfo.getNewModifier(ctField.getModifiers());
    }
 
    public boolean isPublic()
    {
-      return Modifier.isPublic(getModifiers());
+      return getModifiers().isPublic();
    }
 
    public boolean isStatic()
    {
-      return Modifier.isStatic(getModifiers());
+      return getModifiers().isStatic();
    }
 
    public boolean isVolatile()
    {
-      return Modifier.isVolatile(getModifiers());
+      return getModifiers().isVolatile();
    }
 
    public ClassInfo getDeclaringClass()

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistMethodInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistMethodInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistMethodInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -84,24 +84,24 @@
       return typeInfo;
    }
 
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
-      return ctMethod.getModifiers();
+      return ModifierInfo.getNewModifier(ctMethod.getModifiers());
    }
 
    public boolean isPublic()
    {
-      return Modifier.isPublic(getModifiers());
+      return getModifiers().isPublic();
    }
 
    public boolean isStatic()
    {
-      return Modifier.isStatic(getModifiers());
+      return getModifiers().isStatic();
    }
 
    public boolean isVolatile()
    {
-      return Modifier.isVolatile(getModifiers());
+      return getModifiers().isVolatile();
    }
 
    public ClassInfo[] getExceptionTypes()
@@ -336,13 +336,11 @@
 
    public void setReturnType(String returnType)
    {
-      // TODO Auto-generated method stub
-      
+      throw new RuntimeException("Method not supported by Javassist");
    }
 
    public void setReturnType(ClassInfo returnType)
    {
-      // TODO Auto-generated method stub
-      
+      throw new RuntimeException("Method not supported by Javassist");
    }
 }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistTypeInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistTypeInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/plugins/javassist/JavassistTypeInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -142,24 +142,24 @@
       return getType().getSimpleName();
    }
 
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
-      return ctClass.getModifiers();
+      return ModifierInfo.getNewModifier(ctClass.getModifiers());
    }
 
    public boolean isPublic()
    {
-      return Modifier.isPublic(getModifiers());
+      return getModifiers().isPublic();
    }
 
    public boolean isStatic()
    {
-      return Modifier.isStatic(getModifiers());
+      return getModifiers().isStatic();
    }
 
    public boolean isVolatile()
    {
-      return Modifier.isVolatile(getModifiers());
+      return getModifiers().isVolatile();
    }
 
    @Deprecated
@@ -253,6 +253,17 @@
       return generateConstructorInfo(key);
    }
 
+   public MutableConstructorInfo getDeclaredConstructor(String[] parameters) throws ClassNotFoundException
+   {
+      TypeInfo[] typeParams = new TypeInfo[parameters.length];
+      for(int i=0; i<parameters.length;i++)
+      {
+         typeParams[i] = factory.getTypeInfo(parameters[i], 
+               JavassistTypeInfoFactoryImpl.poolFactory.getPoolForLoader(null).getClassLoader());
+      }
+      return getDeclaredConstructor(typeParams);
+   }
+   
    public MutableFieldInfo getDeclaredField(String fieldName)
    {
       synchronized (fields)
@@ -311,6 +322,17 @@
       return generateMethodInfo(key);
    }
 
+   public MutableMethodInfo getDeclaredMethod(String methodName, String[] parameters) throws ClassNotFoundException
+   {
+      TypeInfo[] typeParams = new TypeInfo[parameters.length];
+      for(int i=0; i<parameters.length;i++)
+      {
+         typeParams[i] = factory.getTypeInfo(parameters[i], 
+               JavassistTypeInfoFactoryImpl.poolFactory.getPoolForLoader(null).getClassLoader());
+      }         
+      return getDeclaredMethod(methodName, typeParams);
+   }
+   
    public MutableMethodInfo[] getDeclaredMethods()
    {
       if (methodArray == null)
@@ -727,6 +749,8 @@
    {
       if(methodArray != null)
          methodArray = null;
+      if(methods.size() > 0)
+         methods.clear();
    }
    
    protected void clearConstructorCache()

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/AnnotationInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/AnnotationInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/AnnotationInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -28,7 +28,7 @@
  * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
  * @author <a href="mailto:adrian at jboss.org">Adrian Brock</a>
  */
-public interface AnnotationInfo extends InterfaceInfo, ModifierInfo
+public interface AnnotationInfo extends InterfaceInfo
 {
    /**
     * Get the name
@@ -51,4 +51,6 @@
     * @return the attribute
     */
    AnnotationAttribute getAttribute(String name);
+   
+   ModifierInfo getModifiers();
 }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/ClassInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/ClassInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/ClassInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -27,7 +27,7 @@
  * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
  * @author <a href="mailto:adrian at jboss.org">Adrian Brock</a>
  */
-public interface ClassInfo extends AnnotatedInfo, ModifierInfo, TypeInfo
+public interface ClassInfo extends AnnotatedInfo, TypeInfo
 {
    /**
     * Get the class name
@@ -165,4 +165,6 @@
     * @return the package
     */
    PackageInfo getPackage();
+   
+   ModifierInfo getModifiers();
 }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/DelegateClassInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/DelegateClassInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/DelegateClassInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -201,24 +201,24 @@
       return delegate.isAnnotationPresent(annotationType);
    }
 
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
       return delegate.getModifiers();
    }
 
    public boolean isPublic()
    {
-      return delegate.isPublic();
+      return delegate.getModifiers().isPublic();
    }
 
    public boolean isStatic()
    {
-      return delegate.isStatic();
+      return delegate.getModifiers().isStatic();
    }
 
    public boolean isVolatile()
    {
-      return delegate.isVolatile();
+      return delegate.getModifiers().isVolatile();
    }
 
    public Object convertValue(Object value) throws Throwable

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/MemberInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/MemberInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/MemberInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -27,7 +27,7 @@
  * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
  * @author <a href="mailto:adrian at jboss.org">Adrian Brock</a>
  */
-public interface MemberInfo extends ModifierInfo
+public interface MemberInfo
 {
    /**
     * Get the declaring class
@@ -35,4 +35,6 @@
     * @return the declaring class 
     */
    ClassInfo getDeclaringClass();
+   
+   ModifierInfo getModifiers();
 }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/ModifierInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/ModifierInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/ModifierInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -28,90 +28,228 @@
  *
  * @author <a href="mailto:adrian at jboss.org">Adrian Brock</a>
  */
-public interface ModifierInfo
+public enum ModifierInfo
 {
    /** Final */
-   public static final int FINAL = Modifier.FINAL;
+   FINAL(Modifier.FINAL),
 
    /** Static */
-   public static final int STATIC = Modifier.STATIC;
+   STATIC(Modifier.STATIC),
 
    /** Abstract */
-   public static final int ABSTRACT = Modifier.ABSTRACT;
+   ABSTRACT(Modifier.ABSTRACT),
 
    /** Public */
-   public static final int PUBLIC = Modifier.PUBLIC;
+   PUBLIC(Modifier.PUBLIC),
 
    /** Protected */
-   public static final int PROTECTED = Modifier.PROTECTED;
+   PROTECTED(Modifier.PROTECTED),
 
    /** Package */
-   public static final int PACKAGE = 0;
+   PACKAGE(0),
 
    /** Private */
-   public static final int PRIVATE = Modifier.PRIVATE;
+   PRIVATE(Modifier.PRIVATE),
 
    /** A constant */
-   public static final int CONSTANT = STATIC + FINAL;
+   CONSTANT(STATIC.getModifiers() + FINAL.getModifiers()),
 
    /** A public constant */
-   public static final int PUBLIC_CONSTANT = PUBLIC + CONSTANT;
+   PUBLIC_CONSTANT(PUBLIC.getModifiers() + CONSTANT.getModifiers()),
 
    /** A protected constant */
-   public static final int PROTECTED_CONSTANT = PROTECTED + CONSTANT;
+   PROTECTED_CONSTANT(PROTECTED.getModifiers() + CONSTANT.getModifiers()),
 
    /** A package constant */
-   public static final int PACKAGE_CONSTANT = CONSTANT;
+//   PACKAGE_CONSTANT(CONSTANT.getModifiers()),
 
    /** A private constant */
-   public static final int PRIVATE_CONSTANT = PRIVATE + CONSTANT;
+   PRIVATE_CONSTANT(PRIVATE.getModifiers() + CONSTANT.getModifiers()),
 
    /** Public Static */
-   public static final int PUBLIC_STATIC = PUBLIC + STATIC;
+   PUBLIC_STATIC(PUBLIC.getModifiers() + STATIC.getModifiers()),
 
    /** Protected Static */
-   public static final int PROTECTED_STATIC = PROTECTED + STATIC;
+   PROTECTED_STATIC(PROTECTED.getModifiers() + STATIC.getModifiers()),
 
    /** Package Static */
-   public static final int PACKAGE_STATIC = STATIC;
+//   PACKAGE_STATIC(STATIC.getModifiers()),
 
    /** Private Static */
-   public static final int PRIVATE_STATIC = PRIVATE + STATIC;
+   PRIVATE_STATIC(PRIVATE.getModifiers() + STATIC.getModifiers()),
 
    /** Public Abstract */
-   public static final int PUBLIC_ABSTRACT = PUBLIC + ABSTRACT;
+   PUBLIC_ABSTRACT(PUBLIC.getModifiers() + ABSTRACT.getModifiers()),
 
    /** Protected Abstract */
-   public static final int PROTECTED_ABSTRACT = PROTECTED + ABSTRACT;
+   PROTECTED_ABSTRACT(PROTECTED.getModifiers() + ABSTRACT.getModifiers()),
 
    /** Package Abstract */
-   public static final int PACKAGE_ABSTRACT = ABSTRACT;
+   PACKAGE_ABSTRACT(ABSTRACT.getModifiers()),
+   
+   PUBLIC_FINAL(PUBLIC.getModifiers() + FINAL.getModifiers()),
+   
+   PROTECTED_FINAL(PROTECTED.getModifiers() + FINAL.getModifiers()),
+   
+   PRIVATE_FINAL(PRIVATE.getModifiers() + FINAL.getModifiers()),
 
+   PUBLIC_FINAL_ABSTRACT(PUBLIC_FINAL.getModifiers() + ABSTRACT.getModifiers()),
+   
+   PROTECTED_FINAL_ABSTRACT(PROTECTED_FINAL.getModifiers() + ABSTRACT.getModifiers()),
+   
+   PRIVATE_FINAL_ABSTRACT(PRIVATE_FINAL.getModifiers() + ABSTRACT.getModifiers()),
+   
+   /** Volatile */
+   VOLATILE(Modifier.VOLATILE),
+   
+   PUBLIC_VOLATILE(PUBLIC.getModifiers() + VOLATILE.getModifiers()),
+   
+   PROTECTED_VOLATILE(PROTECTED.getModifiers() + VOLATILE.getModifiers()),
+   
+   PRIVATE_VOLATILE(PRIVATE.getModifiers() + VOLATILE.getModifiers()),
+   
+   SYNCHRONIZED(Modifier.SYNCHRONIZED),
+   
+   PUBLIC_SYNCHRONIZED(PUBLIC.getModifiers() + SYNCHRONIZED.getModifiers()),
+   
+   PROTECTED_SYNCHRONIZED(PROTECTED.getModifiers() + SYNCHRONIZED.getModifiers()),
+   
+   PRIVATE_SYNCHRONIZED(PRIVATE.getModifiers() + SYNCHRONIZED.getModifiers()),
+   
+   INTERFACE(Modifier.INTERFACE),
+   PUBLIC_INTERFACE(PUBLIC.getModifiers() + INTERFACE.getModifiers()),
+   PROTECTED_INTERFACE(PROTECTED.getModifiers() + INTERFACE.getModifiers()),
+   PRIVATE_INTERFACE(PRIVATE.getModifiers() + INTERFACE.getModifiers()),
+   
+   PUBLIC_ABSTRACT_INTERFACE(PUBLIC_ABSTRACT.getModifiers() + INTERFACE.getModifiers()),
+   PROTECTED_ABSTRACT_INTERFACE(PROTECTED_ABSTRACT.getModifiers() + INTERFACE.getModifiers()),
+   
+   
+   NATIVE(Modifier.NATIVE),
+   
+   PUBLIC_NATIVE(PUBLIC.getModifiers() + NATIVE.getModifiers()),
+   
+   PROTECTED_NATIVE(PROTECTED.getModifiers() + NATIVE.getModifiers()),
+   
+   PRIVATE_NATIVE(PRIVATE.getModifiers() + NATIVE.getModifiers()),
+   
+   PUBLIC_FINAL_NATIVE(PUBLIC_FINAL.getModifiers() + NATIVE.getModifiers()),
+   PROTECTED_FINAL_NATIVE(PROTECTED_FINAL.getModifiers() + NATIVE.getModifiers()),
+   PRIVATE_FINAL_NATIVE(PRIVATE_FINAL.getModifiers() + NATIVE.getModifiers()),
+
+   PUBLIC_STATIC_NATIVE(PUBLIC_STATIC.getModifiers() + NATIVE.getModifiers()),
+   PROTECTED_STATIC_NATIVE(PROTECTED_STATIC.getModifiers() + NATIVE.getModifiers()),
+   PRIVATE_STATIC_NATIVE(PRIVATE_STATIC.getModifiers() + NATIVE.getModifiers()),
+
+   STRICTH(Modifier.STRICT),
+   
+   TRANSIENT(Modifier.TRANSIENT),
+   PUBLIC_TRANSIENT(PUBLIC.getModifiers() + TRANSIENT.getModifiers()),
+   PROTECTED_TRANSIENT(PROTECTED.getModifiers() + TRANSIENT.getModifiers()),
+   PRIVATE_TRANSIENT(PRIVATE.getModifiers() + TRANSIENT.getModifiers()),
+   
+   PUBLIC_STATIC_TRANSIENT(PUBLIC_STATIC.getModifiers() + TRANSIENT.getModifiers()),
+   PROTECTED_STATIC_TRANSIENT(PROTECTED_STATIC.getModifiers() + TRANSIENT.getModifiers()),
+   PRIVATE_STATIC_TRANSIENT(PRIVATE_STATIC.getModifiers() + TRANSIENT.getModifiers()),
+   
+   SYNTHETIC(0x00001000),
+   PUBLIC_SYNTHETIC(PUBLIC.getModifiers() + SYNTHETIC.getModifiers()),
+   PROTECTED_SYNTHETIC(PROTECTED.getModifiers() + SYNTHETIC.getModifiers()),
+   PRIVATE_SYNTHETIC(PRIVATE.getModifiers() + SYNTHETIC.getModifiers()),
+   
+   PUBLIC_CONSTANT_SYNTHETIC(PUBLIC_CONSTANT.getModifiers() + SYNTHETIC.getModifiers()),
+   PROTECTED_CONSTANT_SYNTHETIC(PROTECTED_CONSTANT.getModifiers() + SYNTHETIC.getModifiers()),
+   PRIVATE_CONSTANT_SYNTHETIC(PRIVATE_CONSTANT.getModifiers() + SYNTHETIC.getModifiers()),
+   
+   PUBLIC_VOLATILE_SYNTHETIC(PUBLIC_VOLATILE.getModifiers() + SYNTHETIC.getModifiers()),
+   PROTECTED_VOLATILE_SYNTHETIC(PROTECTED_VOLATILE.getModifiers() + SYNTHETIC.getModifiers()),
+   PRIVATE_VOLATILE_SYNTHETIC(PRIVATE_VOLATILE.getModifiers() + SYNTHETIC.getModifiers()),
+   
+   
+   ANNOTATION(0x00002000),
+   PUBLIC_ANNOTATION(PUBLIC.getModifiers() + ANNOTATION.getModifiers()),
+   PROTECTED_ANNOTATION(PROTECTED.getModifiers() + ANNOTATION.getModifiers()),
+   PRIVATE_ANNOTATION(PRIVATE.getModifiers() + ANNOTATION.getModifiers()),
+
+   PUBLIC_ABSTRACT_ANNOTATION(PUBLIC_ABSTRACT.getModifiers() + ANNOTATION.getModifiers()),
+   PROTECTED_ABSTRACT_ANNOTATION(PROTECTED_ABSTRACT.getModifiers() + ANNOTATION.getModifiers()),
+   
+   PUBLIC_INTERFACE_ANNOTATION(PUBLIC_INTERFACE.getModifiers() + ANNOTATION.getModifiers()),
+   PROTECTED_INTERFACE_ANNOTATION(PROTECTED_INTERFACE.getModifiers() + ANNOTATION.getModifiers()),
+   
+   PUBLIC_ABSTRACT_INTERFACE_ANNOTATION(PUBLIC_ABSTRACT_INTERFACE.getModifiers() + ANNOTATION.getModifiers()),
+   PROTECTED_ABSTRACT_INTERFACE_ANNOTATION(PROTECTED_ABSTRACT_INTERFACE.getModifiers() + ANNOTATION.getModifiers()),
+   
+   
+   ENUM(0x00004000),
+   PUBLIC_ENUM(PUBLIC.getModifiers() + ENUM.getModifiers()),
+   PROTECTED_ENUM(PROTECTED.getModifiers() + ENUM.getModifiers()),
+   PRIVATE_ENUM(PRIVATE.getModifiers() +ENUM.getModifiers()),
+   
+   PUBLIC_CONSTANT_ENUM(PUBLIC_CONSTANT.getModifiers() + ENUM.getModifiers()),
+   PROTECTED_CONSTANT_ENUM(PROTECTED_CONSTANT.getModifiers() + ENUM.getModifiers()),
+   PRIVATE_CONSTANT_ENUM(PRIVATE_CONSTANT.getModifiers() +ENUM.getModifiers()),
+   
+   PUBLIC_FINAL_ENUM(PUBLIC_FINAL.getModifiers() + ENUM.getModifiers()),
+   PROTECTED_FINAL_ENUM(PROTECTED_FINAL.getModifiers() + ENUM.getModifiers()),
+   PRIVATE_FINAL_ENUM(PRIVATE_FINAL.getModifiers() +ENUM.getModifiers()),
+   
+   
+   ;
+   
+   
+
+   private final int modifier;
+   
+   ModifierInfo(int modifier)
+   {
+      this.modifier = modifier;
+   }
+   
    /**
     * Get the modifiers
     * 
     * @return the modifiers
     */
-   int getModifiers();
+   public int getModifiers()
+   {
+      return modifier;
+   }
    
-   /**
-    * Whether it is public
-    * 
-    * @return true when public
-    */
-   boolean isPublic();
+   public boolean isPublic()
+   {
+      return (this.equals(PUBLIC) || this.equals(PUBLIC_ABSTRACT) || 
+            this.equals(PUBLIC_CONSTANT) || this.equals(PUBLIC_STATIC));
+   }
    
    /**
     * Whether it is static
     * 
     * @return true when static
     */
-   boolean isStatic();
+    public boolean isStatic()
+    {
+       return (this.equals(STATIC) || //this.equals(PACKAGE_STATIC) || 
+             this.equals(PRIVATE_STATIC) || this.equals(PROTECTED_STATIC) ||
+             this.equals(PUBLIC_STATIC));
+    }
 
    /**
     * Whether it is volatile
     *
     * @return true if volatile
     */
-   boolean isVolatile();
+    public boolean isVolatile()
+    {
+       return (this.equals(VOLATILE));
+    }
+
+   public static ModifierInfo getNewModifier(int modifiers)
+   {
+      for(ModifierInfo modifier : values())
+         if(modifier.getModifiers() == modifiers)
+            return modifier;
+      
+      throw new RuntimeException("Couldnt find Modifier for: "+modifiers);
+   }
 }

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/MutableClassInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/MutableClassInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/MutableClassInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -40,6 +40,18 @@
    MutableMethodInfo getDeclaredMethod(String name, TypeInfo[] parameters);
    
    /**
+    * Get the declared method
+    * Note: the parameters will be loaded with the classloader defined in
+    * TypeInfoFactory.
+    * 
+    * @param name the method name
+    * @param parameters the parameters
+    * @return the method info
+    * @throws ClassNotFoundException 
+    */
+   MutableMethodInfo getDeclaredMethod(String name, String[] parameters) throws ClassNotFoundException;
+   
+   /**
     * Get the declared methods
     * 
     * @return the methods
@@ -62,6 +74,17 @@
    MutableConstructorInfo getDeclaredConstructor(TypeInfo[] parameters);
 
    /**
+    * Get a declared constructor
+    * Note: the parameters will be loaded with the classloader defined in
+    * TypeInfoFactory.
+    * 
+    * @param parameters the parameters
+    * @return the constructor
+    * @throws ClassNotFoundException 
+    */
+   MutableConstructorInfo getDeclaredConstructor(String[] parameters) throws ClassNotFoundException;
+   
+   /**
     * Get the declared field
     * 
     * @param name the field name

Modified: projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/NumberInfo.java
===================================================================
--- projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/NumberInfo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/main/java/org/jboss/reflect/spi/NumberInfo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -270,24 +270,24 @@
       return delegate.isAnnotationPresent(annotationType);
    }
 
-   public int getModifiers()
+   public ModifierInfo getModifiers()
    {
       return delegate.getModifiers();
    }
 
    public boolean isPublic()
    {
-      return delegate.isPublic();
+      return delegate.getModifiers().isPublic();
    }
 
    public boolean isStatic()
    {
-      return delegate.isStatic();
+      return delegate.getModifiers().isStatic();
    }
 
    public boolean isVolatile()
    {
-      return delegate.isVolatile();
+      return delegate.getModifiers().isVolatile();
    }
 
    @Override

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/beaninfo/test/AbstractBeanInfoTest.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/beaninfo/test/AbstractBeanInfoTest.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/beaninfo/test/AbstractBeanInfoTest.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -47,6 +47,7 @@
 import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.reflect.spi.ConstructorInfo;
 import org.jboss.reflect.spi.MethodInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.PrimitiveInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.reflect.spi.TypeInfoFactory;
@@ -97,7 +98,7 @@
          int i = 0;
          for (Class<?> c : paramClasses)
             paramTypes[i++] = factory.getTypeInfo(c);
-         ConstructorInfo c = new ConstructorInfoImpl(null, paramTypes, paramAnnotations, null, constructor.getModifiers(), classInfo);
+         ConstructorInfo c = new ConstructorInfoImpl(null, paramTypes, paramAnnotations, null, ModifierInfo.getNewModifier(constructor.getModifiers()), classInfo);
          expected.add(c);
       }
       
@@ -134,7 +135,7 @@
          for (Class<?> c : paramClasses)
             paramTypes[i++] = factory.getTypeInfo(c);
          ClassInfo classInfo = (ClassInfo) factory.getTypeInfo(method.getDeclaringClass());
-         MethodInfo m = new MethodInfoImpl(null, method.getName(), returnType, paramTypes, paramAnnotations, null, method.getModifiers(), classInfo);
+         MethodInfo m = new MethodInfoImpl(null, method.getName(), returnType, paramTypes, paramAnnotations, null, ModifierInfo.getNewModifier(method.getModifiers()), classInfo);
          expected.add(m);
       }
       
@@ -274,7 +275,7 @@
             
             TypeInfo type = factory.getTypeInfo(getter.getGenericReturnType());
             ClassInfo declaringType = (ClassInfo) factory.getTypeInfo(getter.getDeclaringClass());
-            MethodInfo getterInfo = new MethodInfoImpl(null, getter.getName(), type, new TypeInfo[0], null, null, getter.getModifiers(), declaringType);
+            MethodInfo getterInfo = new MethodInfoImpl(null, getter.getName(), type, new TypeInfo[0], null, null, ModifierInfo.getNewModifier(getter.getModifiers()), declaringType);
             MethodInfo setterInfo = null;
             if (setter != null)
             {
@@ -282,7 +283,7 @@
                AnnotationValue[][] paramAnnotations = new AnnotationValue[1][];
                setterAnnotations = getExpectedAnnotations(setter.getParameterAnnotations()[0]); 
                paramAnnotations[0] = setterAnnotations.toArray(new AnnotationValue[setterAnnotations.size()]);
-               setterInfo = new MethodInfoImpl(null, setter.getName(), PrimitiveInfo.VOID, new TypeInfo[] { type }, paramAnnotations, null, setter.getModifiers(), declaringType);
+               setterInfo = new MethodInfoImpl(null, setter.getName(), PrimitiveInfo.VOID, new TypeInfo[] { type }, paramAnnotations, null, ModifierInfo.getNewModifier(setter.getModifiers()), declaringType);
             }
             properties.put(lowerName, new DefaultPropertyInfo(lowerName, name, type, getterInfo, setterInfo, annotations));
          }
@@ -307,7 +308,7 @@
                AnnotationValue[][] paramAnnotations = new AnnotationValue[1][];
                setterAnnotations = getExpectedAnnotations(setter.getParameterAnnotations()[0]); 
                paramAnnotations[0] = setterAnnotations.toArray(new AnnotationValue[setterAnnotations.size()]);
-               MethodInfo setterInfo = new MethodInfoImpl(null, setter.getName(), PrimitiveInfo.VOID, new TypeInfo[] { type }, paramAnnotations, null, setter.getModifiers(), declaringType);
+               MethodInfo setterInfo = new MethodInfoImpl(null, setter.getName(), PrimitiveInfo.VOID, new TypeInfo[] { type }, paramAnnotations, null, ModifierInfo.getNewModifier(setter.getModifiers()), declaringType);
                properties.put(lowerName, new DefaultPropertyInfo(lowerName, name, type, null, setterInfo, annotations));
             }
          }
@@ -353,7 +354,7 @@
             ClassInfo declaringType = (ClassInfo) factory.getTypeInfo(method.getDeclaringClass());
             Set<AnnotationValue> getterAnnotations = getExpectedAnnotations(method.getAnnotations()); 
             AnnotationValue[] annotations = getterAnnotations.toArray(new AnnotationValue[getterAnnotations.size()]);
-            MethodInfo getter = new MethodInfoImpl(null, name, returnType, new TypeInfo[0], new AnnotationValue[0][], null, method.getModifiers(), declaringType);
+            MethodInfo getter = new MethodInfoImpl(null, name, returnType, new TypeInfo[0], new AnnotationValue[0][], null, ModifierInfo.getNewModifier(method.getModifiers()), declaringType);
             properties.add(new DefaultPropertyInfo(name, name, returnType, getter, null, annotations));
          }
       }
@@ -378,7 +379,7 @@
             for (int i = 0; i < finfos.length; ++i)
             {
                FieldInfo field = finfos[i];
-               if ((mode == BeanAccessMode.FIELDS && field.isPublic()) || (mode == BeanAccessMode.ALL))
+               if ((mode == BeanAccessMode.FIELDS && field.getModifiers().isPublic()) || (mode == BeanAccessMode.ALL))
                   fields.add(field);
             }
          }

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/AbstractClassInfoTest.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/AbstractClassInfoTest.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/AbstractClassInfoTest.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -43,6 +43,7 @@
 import org.jboss.reflect.spi.FieldInfo;
 import org.jboss.reflect.spi.InterfaceInfo;
 import org.jboss.reflect.spi.MethodInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.PackageInfo;
 import org.jboss.reflect.spi.ParameterInfo;
 import org.jboss.reflect.spi.TypeInfo;
@@ -147,7 +148,7 @@
    protected void assertModifiers(Class<?> clazz, ClassInfo classInfo) throws Throwable
    {
       int expected = clazz.getModifiers();
-      int actual = classInfo.getModifiers();
+      int actual = classInfo.getModifiers().getModifiers();
       getLog().debug(clazz + " modifier expected=" + expected + " actual=" + actual);
       assertEquals(expected, actual);
    }
@@ -224,7 +225,7 @@
       for (Field field : clazz.getDeclaredFields())
       {
          TypeInfo type = factory.getTypeInfo(field.getGenericType());
-         FieldInfo f = new FieldInfoImpl(null, field.getName(), type, field.getModifiers(), classInfo);
+         FieldInfo f = new FieldInfoImpl(null, field.getName(), type, ModifierInfo.getNewModifier(field.getModifiers()), classInfo);
          expected.add(f);
       }
       
@@ -257,7 +258,7 @@
       TypeInfo type = factory.getTypeInfo(field.getGenericType());
       assertTypeEquals(field.getName(), type, fieldInfo.getType());
       assertEquals(classInfo, fieldInfo.getDeclaringClass());
-      assertEquals(field.getModifiers(), fieldInfo.getModifiers());
+      assertEquals(field.getModifiers(), fieldInfo.getModifiers().getModifiers());
       assertFieldAnnotations(field, fieldInfo);
    }
    
@@ -274,7 +275,7 @@
          int i = 0;
          for (Class<?> c : paramClasses)
             paramTypes[i++] = factory.getTypeInfo(c);
-         MethodInfo m = new MethodInfoImpl(null, method.getName(), returnType, paramTypes, paramAnnotations, null, method.getModifiers(), classInfo);
+         MethodInfo m = new MethodInfoImpl(null, method.getName(), returnType, paramTypes, paramAnnotations, null, ModifierInfo.getNewModifier(method.getModifiers()), classInfo);
          expected.add(m);
       }
       
@@ -321,7 +322,7 @@
          assertTypeEquals(method.getName() + " exception" + i, expectedExceptionTypes[i], actualExceptionTypes[i]);
       assertTypeEquals(method.getName() + " returnType", returnType, methodInfo.getReturnType());
       assertEquals(classInfo, methodInfo.getDeclaringClass());
-      assertEquals(method.getModifiers(), methodInfo.getModifiers());
+      assertEquals(method.getModifiers(), methodInfo.getModifiers().getModifiers());
       assertMethodAnnotations(method, methodInfo);
       assertParameterAnnotations(method, methodInfo);
    }
@@ -338,7 +339,7 @@
          int i = 0;
          for (Class<?> c : paramClasses)
             paramTypes[i++] = factory.getTypeInfo(c);
-         ConstructorInfo c = new ConstructorInfoImpl(null, paramTypes, paramAnnotations, null, constructor.getModifiers(), classInfo);
+         ConstructorInfo c = new ConstructorInfoImpl(null, paramTypes, paramAnnotations, null, ModifierInfo.getNewModifier(constructor.getModifiers()), classInfo);
          expected.add(c);
       }
       
@@ -390,7 +391,7 @@
       for (int i = 0; i < exceptionClasses.length; ++i)
          assertTypeEquals(clazz + " constructorException" + i, expectedExceptionTypes[i], actualExceptionTypes[i]);
       assertEquals(classInfo, constructorInfo.getDeclaringClass());
-      assertEquals(constructor.getModifiers(), constructorInfo.getModifiers());
+      assertEquals(constructor.getModifiers(), constructorInfo.getModifiers().getModifiers());
       assertConstructorAnnotations(constructor, constructorInfo);
       assertParameterAnnotations(constructor, constructorInfo);
    }
@@ -531,7 +532,7 @@
       for (Annotation annotation : annotations)
       {
          Class<?> type = annotation.annotationType();
-         AnnotationInfoImpl info = new AnnotationInfoImpl(type.getName(), type.getModifiers());
+         AnnotationInfoImpl info = new AnnotationInfoImpl(type.getName(), ModifierInfo.getNewModifier(type.getModifiers()));
          // TODO JBMICROCONT-127 attributes
          AnnotationValue a = new AnnotationValueImpl(info, new HashMap<String, Value>(), annotation);
          expected.add(a);

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoClassTest.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoClassTest.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoClassTest.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -21,10 +21,9 @@
 */
 package org.jboss.test.classinfo.test;
 
-import java.lang.reflect.Modifier;
-
 import org.jboss.reflect.plugins.ClassInfoImpl;
 import org.jboss.reflect.spi.ClassInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.test.classinfo.support.ClassInfoAbstractMethodsClass;
 import org.jboss.test.classinfo.support.ClassInfoAnnotationClass;
@@ -120,7 +119,7 @@
    
    private void testClass(Class<?> clazz) throws Throwable
    {
-      ClassInfoImpl expected = new ClassInfoImpl(clazz.getName(), Modifier.PUBLIC);
+      ClassInfoImpl expected = new ClassInfoImpl(clazz.getName(), ModifierInfo.PUBLIC);
       TypeInfo info = testBasics(clazz, expected);
       
       assertFalse(info.isArray());

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoEnumTest.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoEnumTest.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoEnumTest.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -22,7 +22,6 @@
 package org.jboss.test.classinfo.test;
 
 import java.lang.reflect.Field;
-import java.lang.reflect.Modifier;
 import java.util.HashSet;
 import java.util.Set;
 
@@ -31,6 +30,7 @@
 import org.jboss.reflect.spi.AnnotationValue;
 import org.jboss.reflect.spi.EnumConstantInfo;
 import org.jboss.reflect.spi.EnumInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.test.classinfo.support.ClassInfoEnum;
 import org.jboss.test.classinfo.support.ClassInfoEnumAnnotation;
@@ -67,7 +67,7 @@
    @SuppressWarnings("unchecked")
    private void testEnum(Class enumClass) throws Throwable
    {
-      EnumInfoImpl expected = new EnumInfoImpl(enumClass.getName(), Modifier.PUBLIC);
+      EnumInfoImpl expected = new EnumInfoImpl(enumClass.getName(), ModifierInfo.PUBLIC);
       TypeInfo info = testBasics(enumClass, expected);
       
       assertFalse(info.isArray());

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoGenericClassTest.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoGenericClassTest.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoGenericClassTest.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -22,7 +22,6 @@
 package org.jboss.test.classinfo.test;
 
 import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
 import java.lang.reflect.Type;
 import java.util.Arrays;
 import java.util.Collection;
@@ -32,6 +31,7 @@
 import org.jboss.reflect.plugins.ClassInfoImpl;
 import org.jboss.reflect.spi.ClassInfo;
 import org.jboss.reflect.spi.InterfaceInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.reflect.spi.TypeInfoFactory;
 import org.jboss.test.classinfo.support.ClassInfoEmptyClass;
@@ -330,7 +330,7 @@
    
    private void testGenericClass(Class<?> clazz) throws Throwable
    {
-      ClassInfoImpl expected = new ClassInfoImpl(clazz.getName(), Modifier.PUBLIC);
+      ClassInfoImpl expected = new ClassInfoImpl(clazz.getName(), ModifierInfo.PUBLIC);
       TypeInfo info = testBasics(clazz, expected);
       
       assertFalse(info.isArray());

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoGenericInterfaceTest.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoGenericInterfaceTest.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoGenericInterfaceTest.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -21,10 +21,9 @@
 */
 package org.jboss.test.classinfo.test;
 
-import java.lang.reflect.Modifier;
-
 import org.jboss.reflect.plugins.ClassInfoImpl;
 import org.jboss.reflect.spi.ClassInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.test.classinfo.support.ClassInfoGenericFieldsInterface;
 import org.jboss.test.classinfo.support.ClassInfoGenericMethodsInterface;
@@ -54,7 +53,7 @@
    
    private void testGenericInterface(Class<?> clazz) throws Throwable
    {
-      ClassInfoImpl expected = new ClassInfoImpl(clazz.getName(), Modifier.PUBLIC);
+      ClassInfoImpl expected = new ClassInfoImpl(clazz.getName(), ModifierInfo.PUBLIC);
       TypeInfo info = testBasics(clazz, expected);
       
       assertFalse(info.isArray());

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoInterfaceTest.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoInterfaceTest.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoInterfaceTest.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -21,10 +21,9 @@
 */
 package org.jboss.test.classinfo.test;
 
-import java.lang.reflect.Modifier;
-
 import org.jboss.reflect.plugins.ClassInfoImpl;
 import org.jboss.reflect.spi.ClassInfo;
+import org.jboss.reflect.spi.ModifierInfo;
 import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.test.classinfo.support.ClassInfoAnnotationInterface;
 import org.jboss.test.classinfo.support.ClassInfoEmptyInterface;
@@ -90,7 +89,7 @@
    
    private void testInterface(Class<?> clazz) throws Throwable
    {
-      ClassInfoImpl expected = new ClassInfoImpl(clazz.getName(), Modifier.PUBLIC);
+      ClassInfoImpl expected = new ClassInfoImpl(clazz.getName(), ModifierInfo.PUBLIC);
       TypeInfo info = testBasics(clazz, expected);
       
       assertFalse(info.isArray());

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoTest.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoTest.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/classinfo/test/ClassInfoTest.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -415,7 +415,7 @@
       
       HashSet<FieldInfo> result = new HashSet<FieldInfo>();
       result.add(new FieldInfoImpl(null, "PUBLIC_CONSTANT", objectType, ModifierInfo.PUBLIC_CONSTANT, simpleBean));
-      result.add(new FieldInfoImpl(null, "PACKAGE_PRIVATE_CONSTANT", objectType, ModifierInfo.PACKAGE_CONSTANT, simpleBean));
+      result.add(new FieldInfoImpl(null, "PACKAGE_PRIVATE_CONSTANT", objectType, ModifierInfo.CONSTANT, simpleBean));
       result.add(new FieldInfoImpl(null, "PROTECTED_CONSTANT", objectType, ModifierInfo.PROTECTED_CONSTANT, simpleBean));
       result.add(new FieldInfoImpl(null, "PRIVATE_CONSTANT", objectType, ModifierInfo.PRIVATE_CONSTANT, simpleBean));
       result.add(new FieldInfoImpl(null, "serialVersionUID", longType, ModifierInfo.PRIVATE_CONSTANT, simpleBean));
@@ -485,7 +485,7 @@
       result.add(new MethodInfoImpl(null, "overloadedMethod", voidType, objectParameters, MethodInfo.NO_EXCEPTIONS, ModifierInfo.PUBLIC, simpleBean));
       result.add(new MethodInfoImpl(null, "overloadedMethod", voidType, stringParameters, MethodInfo.NO_EXCEPTIONS, ModifierInfo.PUBLIC, simpleBean));
       result.add(new MethodInfoImpl(null, "publicStaticMethod", voidType, MethodInfo.NO_PARAMS, MethodInfo.NO_EXCEPTIONS, ModifierInfo.PUBLIC_STATIC, simpleBean));
-      result.add(new MethodInfoImpl(null, "packagePrivateStaticMethod", voidType, MethodInfo.NO_PARAMS, MethodInfo.NO_EXCEPTIONS, ModifierInfo.PACKAGE_STATIC, simpleBean));
+      result.add(new MethodInfoImpl(null, "packagePrivateStaticMethod", voidType, MethodInfo.NO_PARAMS, MethodInfo.NO_EXCEPTIONS, ModifierInfo.STATIC, simpleBean));
       result.add(new MethodInfoImpl(null, "protectedStaticMethod", voidType, MethodInfo.NO_PARAMS, MethodInfo.NO_EXCEPTIONS, ModifierInfo.PROTECTED_STATIC, simpleBean));
       result.add(new MethodInfoImpl(null, "privateStaticMethod", voidType, MethodInfo.NO_PARAMS, MethodInfo.NO_EXCEPTIONS, ModifierInfo.PRIVATE_STATIC, simpleBean));
       result.add(new MethodInfoImpl(null, "packagePrivateMethod", voidType, MethodInfo.NO_PARAMS, MethodInfo.NO_EXCEPTIONS, ModifierInfo.PACKAGE, simpleBean));

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistBodyTestCase.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistBodyTestCase.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistBodyTestCase.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -50,6 +50,7 @@
       super(name);
    }
    
+   @SuppressWarnings("deprecation")
    public void testBody()
    {
       MutableClassInfo mci = new JavassistTypeInfoFactoryImpl().getMutable("org.jboss.test.plugins.javassist.PojoBody", null);

Added: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistFieldInfoTestCase.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistFieldInfoTestCase.java	                        (rev 0)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistFieldInfoTestCase.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -0,0 +1,25 @@
+package org.jboss.test.plugins.javassist;
+
+import org.jboss.reflect.plugins.javassist.JavassistTypeInfoFactoryImpl;
+import org.jboss.reflect.spi.ModifierInfo;
+import org.jboss.reflect.spi.MutableClassInfo;
+import org.jboss.reflect.spi.MutableFieldInfo;
+import org.jboss.test.ContainerTest;
+
+public class JavassistFieldInfoTestCase extends ContainerTest
+{
+
+   public JavassistFieldInfoTestCase(String name)
+   {
+      super(name);
+   }
+   
+   public void testAddField()
+   {
+      MutableClassInfo mci = new JavassistTypeInfoFactoryImpl().getMutable("org.jboss.test.plugins.javassist.PojoField", null);
+      
+      MutableFieldInfo mfi1 = mci.createMutableField(ModifierInfo.PUBLIC, "java.lang.String", "test1");
+      
+   }
+
+}

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistMutableMethodInfoTestCase.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistMutableMethodInfoTestCase.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistMutableMethodInfoTestCase.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -25,7 +25,6 @@
 import org.jboss.reflect.spi.InsertBeforeJavassistBody;
 import org.jboss.reflect.spi.MutableClassInfo;
 import org.jboss.reflect.spi.MutableMethodInfo;
-import org.jboss.reflect.spi.TypeInfo;
 import org.jboss.test.ContainerTest;
 
 /**
@@ -54,35 +53,45 @@
       MutableMethodInfo[] methods = mci.getDeclaredMethods();
       try
       {
-         MutableMethodInfo bar = mci.getDeclaredMethod("bar", new TypeInfo[] {(TypeInfo) new JavassistTypeInfoFactoryImpl().get("java.lang.String", Thread.currentThread().getContextClassLoader()) });
+         MutableMethodInfo bar = mci.getDeclaredMethod("bar", new String[] {"java.lang.String"});
 
          assertEquals(3, methods.length);
-         System.out.println("should expect bar, but got "+bar.getName());
          assertEquals("bar", bar.getName());
          assertEquals("java.lang.String", bar.getParameterTypes()[0].getName());
       
-      
       }
       catch (ClassNotFoundException e)
       {
-         // TODO Auto-generated catch block
          e.printStackTrace();
       }
+   }
+   
+   public void testRemoveMethod()
+   {
+      MutableClassInfo mci = new JavassistTypeInfoFactoryImpl().getMutable("org.jboss.test.plugins.javassist.Pojo3", null);
       
-      
+      try
+      {
+         MutableMethodInfo bar = mci.getDeclaredMethod("bar", new String[] {"java.lang.String"});
+         mci.removeMethod(bar);
+         assertEquals(2, mci.getDeclaredMethods().length);  
+      }
+      catch (ClassNotFoundException e)
+      {
+         e.printStackTrace();
+      }      
    }
    
+   @SuppressWarnings("deprecation")
    public void testNewMethods()
    {
       MutableClassInfo mci = new JavassistTypeInfoFactoryImpl().getMutable("org.jboss.test.plugins.javassist.Pojo3", null);
       MutableMethodInfo newMethod1 = mci.createMutableMethod(new InsertBeforeJavassistBody("public void test1() { }"));
       mci.addMethod(newMethod1);
       
-      assertEquals(4, mci.getDeclaredMethods().length);
-      
+      assertEquals(3, mci.getDeclaredMethods().length);
       Class<?> theClass = mci.getType();
-      
-      assertEquals(4, theClass.getDeclaredMethods().length);
+      assertEquals(3, theClass.getDeclaredMethods().length);
    }
    
 

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistMutableTypeInfoTestCase.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistMutableTypeInfoTestCase.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistMutableTypeInfoTestCase.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -21,6 +21,8 @@
   */
 package org.jboss.test.plugins.javassist;
 
+import java.lang.reflect.Method;
+
 import org.jboss.reflect.plugins.javassist.JavassistTypeInfoFactoryImpl;
 import org.jboss.reflect.spi.InsertBeforeJavassistBody;
 import org.jboss.reflect.spi.MethodInfo;
@@ -47,39 +49,29 @@
       super(name);
    }
    
+   @SuppressWarnings("deprecation")
    public void testNewClass()
    {
-      MutableClassInfo mci = new JavassistTypeInfoFactoryImpl().createNewMutableClass("org.jboss.test.plugins.javassist.Pojo2");
-      assertEquals(mci.getName(), "org.jboss.test.plugins.javassist.Pojo2");
-      assertEquals(mci.isPublic(), true);
+      MutableClassInfo mci = new JavassistTypeInfoFactoryImpl().createNewMutableClass("org.jboss.test.plugins.javassist.PojoNew");
+      assertEquals(mci.getName(), "org.jboss.test.plugins.javassist.PojoNew");
+      assertEquals(mci.getModifiers().isPublic(), true);
       MutableMethodInfo mmi1 = mci.createMutableMethod(new InsertBeforeJavassistBody("public String getFoo() { return \"foo\"; }"));
       mci.addMethod(mmi1);
       assertEquals(mci.getDeclaredMethods().length, 1);
       MethodInfo mi = mci.getDeclaredMethods()[0];
       assertEquals(mi.getReturnType().getName(), "java.lang.String");
       
-      
-      
-      System.out.println("return type: "+mi.getReturnType().getName());
-      
-      
-      
-//      
-//      Thread.currentThread().getClass().getClassLoader()
-//      Class<?> clazz = mci.getType();
-//      try
-//      {
-//         Object pojo = clazz.newInstance();
-//         Method m1 = clazz.getMethod("getFoo", new Class[0]);
-//         
-//         String s = (String) m1.invoke(pojo, new Object[0]);
-//         System.out.println("Foo returned: "+s);
-//      }
-//      catch (Exception e)
-//      {
-//         // TODO Auto-generated catch block
-//         e.printStackTrace();
-//      }      
+      Class<?> clazz = mci.getType();
+      try
+      {
+         Object pojo = clazz.newInstance();
+         Method m1 = clazz.getMethod("getFoo", new Class[0]);
+         assertEquals("foo", m1.invoke(pojo, new Object[0]));
+      }
+      catch (Exception e)
+      {
+         e.printStackTrace();
+      }      
    }
 
 }

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistUtilTestCase.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistUtilTestCase.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/JavassistUtilTestCase.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -100,15 +100,6 @@
       }
    }
    
-
-   public void testModifier()
-   {
-      assertEquals(ModifierInfo.PUBLIC, Modifier.PUBLIC);
-      assertEquals(ModifierInfo.PRIVATE, Modifier.PRIVATE);
-      assertEquals(ModifierInfo.PROTECTED, Modifier.PROTECTED);
-      assertEquals(ModifierInfo.STATIC, Modifier.STATIC);
-   }
-   
    public void testSignature()
    {
       try

Added: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/ModifierInfoTestCase.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/ModifierInfoTestCase.java	                        (rev 0)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/ModifierInfoTestCase.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -0,0 +1,38 @@
+package org.jboss.test.plugins.javassist;
+
+import javassist.Modifier;
+
+import org.jboss.reflect.spi.ModifierInfo;
+import org.jboss.test.ContainerTest;
+
+public class ModifierInfoTestCase extends ContainerTest
+{
+
+   public ModifierInfoTestCase(String name)
+   {
+      super(name);
+   }
+   
+   public void testModifiers()
+   {
+      assertEquals(ModifierInfo.PUBLIC.getModifiers(), Modifier.PUBLIC);
+      assertEquals(ModifierInfo.PRIVATE.getModifiers(), Modifier.PRIVATE);
+      assertEquals(ModifierInfo.PROTECTED.getModifiers(), Modifier.PROTECTED);
+      assertEquals(ModifierInfo.STATIC.getModifiers(), Modifier.STATIC);
+      assertEquals(ModifierInfo.PUBLIC_STATIC.getModifiers(), Modifier.PUBLIC + Modifier.STATIC);
+      
+      System.out.println("Value of Public is: "+Modifier.PUBLIC);
+      
+      System.out.println("Value of Private is: "+Modifier.PRIVATE);
+      
+      for(ModifierInfo mi : ModifierInfo.values())
+         System.out.println(mi.name()+": "+mi.getModifiers());
+      
+   }
+   
+   public void testNewModifiers()
+   {
+      assertEquals(Modifier.PRIVATE, ModifierInfo.getNewModifier(Modifier.PRIVATE).getModifiers());
+   }
+
+}

Modified: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/Pojo.java
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/Pojo.java	2009-03-16 11:38:07 UTC (rev 85908)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/Pojo.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -32,6 +32,8 @@
    
    public String foo;
    
+   public int bar;
+   
    public Pojo()
    { 
    }

Copied: projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/PojoField.java (from rev 85907, projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/Pojo.java)
===================================================================
--- projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/PojoField.java	                        (rev 0)
+++ projects/jboss-reflect/trunk/src/test/java/org/jboss/test/plugins/javassist/PojoField.java	2009-03-16 11:38:26 UTC (rev 85909)
@@ -0,0 +1,56 @@
+/*
+  * JBoss, Home of Professional Open Source
+  * Copyright 2005, JBoss Inc., and individual contributors as indicated
+  * by the @authors tag. See the copyright.txt in the distribution for a
+  * full listing of individual contributors.
+  *
+  * This is free software; you can redistribute it and/or modify it
+  * under the terms of the GNU Lesser General Public License as
+  * published by the Free Software Foundation; either version 2.1 of
+  * the License, or (at your option) any later version.
+  *
+  * This software is distributed in the hope that it will be useful,
+  * but WITHOUT ANY WARRANTY; without even the implied warranty of
+  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  * Lesser General Public License for more details.
+  *
+  * You should have received a copy of the GNU Lesser General Public
+  * License along with this software; if not, write to the Free
+  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+  */
+package org.jboss.test.plugins.javassist;
+
+/**
+ * A Pojo.
+ * 
+ * @author <a href="mailto:stale.pedersen at jboss.org">Stale W. Pedersen</a>
+ * @version $Revision: 1.1 $
+ */
+public class PojoField
+{
+   
+   public String foo;
+   
+   public PojoField()
+   { 
+   }
+   
+   public PojoField(String s)
+   {
+   }
+   
+   public String foo()
+   {
+      return null;
+   }
+   
+   public void foo(String s)
+   {
+   }
+   
+   public void bar(String s)
+   {
+   }
+
+}




More information about the jboss-cvs-commits mailing list