You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by dm...@apache.org on 2004/05/08 17:10:05 UTC

cvs commit: jakarta-commons/jxpath/src/java/org/apache/commons/jxpath JXPathIntrospector.java

dmitri      2004/05/08 08:10:05

  Modified:    jxpath/src/java/org/apache/commons/jxpath
                        JXPathIntrospector.java
  Log:
  Fixed dynamic BeanInfo lookup
  
  Revision  Changes    Path
  1.10      +9 -5      jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/JXPathIntrospector.java
  
  Index: JXPathIntrospector.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/JXPathIntrospector.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- JXPathIntrospector.java	29 Feb 2004 14:17:42 -0000	1.9
  +++ JXPathIntrospector.java	8 May 2004 15:10:05 -0000	1.10
  @@ -117,10 +117,10 @@
        * interfaces.
        */
       private static JXPathBeanInfo findDynamicBeanInfo(Class beanClass) {
  -        JXPathBeanInfo beanInfo;
  +        JXPathBeanInfo beanInfo = null;
           if (beanClass.isInterface()) {
               beanInfo = (JXPathBeanInfo) byInterface.get(beanClass);
  -            if (beanInfo != null) {
  +            if (beanInfo != null && beanInfo.isDynamic()) {
                   return beanInfo;
               }
           }
  @@ -129,7 +129,7 @@
           if (interfaces != null) {
               for (int i = 0; i < interfaces.length; i++) {
                   beanInfo = findDynamicBeanInfo(interfaces[i]);
  -                if (beanInfo != null) {
  +                if (beanInfo != null && beanInfo.isDynamic()) {
                       return beanInfo;
                   }
               }
  @@ -137,7 +137,11 @@
   
           Class sup = beanClass.getSuperclass();
           if (sup != null) {
  -            return findDynamicBeanInfo(sup);
  +            beanInfo = (JXPathBeanInfo) byClass.get(sup);
  +            if (beanInfo != null && beanInfo.isDynamic()) {
  +                return beanInfo;
  +            }
  +            return findDynamicBeanInfo(sup);                
           }
           return null;
       }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org