[jboss-svn-commits] JBL Code SVN: r10190 - in labs/jbossrules/trunk/drools-core/src: test/java/org/drools and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Mar 14 17:58:42 EDT 2007


Author: tirelli
Date: 2007-03-14 17:58:42 -0400 (Wed, 14 Mar 2007)
New Revision: 10190

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/asm/ClassFieldInspector.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/Cheese.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/asm/ClassFieldInspectorTest.java
Log:
JBRULES-737: fixing problem when inspecting classes with static initializers

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/asm/ClassFieldInspector.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/asm/ClassFieldInspector.java	2007-03-14 21:37:51 UTC (rev 10189)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/asm/ClassFieldInspector.java	2007-03-14 21:58:42 UTC (rev 10190)
@@ -128,6 +128,7 @@
             if ( (( methods[i].getModifiers() & mask ) == Modifier.PUBLIC ) &&
                  ( methods[i].getParameterTypes().length == 0) && 
                  ( !methods[i].getName().equals( "<init>" )) && 
+                 //( !methods[i].getName().equals( "<clinit>" )) && 
                  (methods[i].getReturnType() != void.class) ) {
                     final int fieldIndex = this.methods.size();
                     addToMapping( methods[i],
@@ -262,7 +263,9 @@
             //and have no args, and return a value
             final int mask = this.includeFinalMethods ? Opcodes.ACC_PUBLIC : Opcodes.ACC_PUBLIC | Opcodes.ACC_FINAL;
             if ( (access & mask) == Opcodes.ACC_PUBLIC ) {
-                if ( desc.startsWith( "()" ) && !(name.equals( "<init>" )) ) {// && ( name.startsWith("get") || name.startsWith("is") ) ) {
+                if ( desc.startsWith( "()" ) && 
+                     ( ! name.equals( "<init>" ) ) /*&&
+                     ( ! name.equals( "<clinit>" ) ) */) {// && ( name.startsWith("get") || name.startsWith("is") ) ) {
                     try {
                         final Method method = this.clazz.getMethod( name,
                                                                     (Class[]) null );

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/Cheese.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/Cheese.java	2007-03-14 21:37:51 UTC (rev 10189)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/Cheese.java	2007-03-14 21:58:42 UTC (rev 10190)
@@ -23,6 +23,14 @@
 public class Cheese
     implements
     CheeseInterface {
+    
+    public static String staticString;
+    
+    static {
+        staticString = "Cheese is tasty";
+    }
+    
+    
     private String type;
 
     private int    price;

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/asm/ClassFieldInspectorTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/asm/ClassFieldInspectorTest.java	2007-03-14 21:37:51 UTC (rev 10189)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/asm/ClassFieldInspectorTest.java	2007-03-14 21:58:42 UTC (rev 10190)
@@ -212,10 +212,15 @@
     }
 
     static class Person {
+        public static String aStaticString;
         private boolean happy;
         private String  name;
         private int     age;
         private String  URI;
+        
+        static {
+            aStaticString = "A static String";
+        }
 
         public int getAge() {
             return this.age;




More information about the jboss-svn-commits mailing list