if (interfaces != null) { for (int i = 0; i < interfaces.length; i++) { beanInfo = findDynamicBeanInfo(interfaces[i]); if (beanInfo != null && beanInfo.isDynamic()) { return beanInfo; return beanInfo; return findDynamicBeanInfo(sup);
/** * Creates and registers a JXPathBeanInfo object for the supplied class. If * the class has already been registered, returns the registered * JXPathBeanInfo object. * <p> * The process of creation of JXPathBeanInfo is as follows: * <ul> * <li>If class named <code><beanClass>XBeanInfo</code> exists, * an instance of that class is allocated. * <li>Otherwise, an instance of {@link JXPathBasicBeanInfo * JXPathBasicBeanInfo} is allocated. * </ul> * @param beanClass whose info to get * @return JXPathBeanInfo */ public static JXPathBeanInfo getBeanInfo(Class beanClass) { JXPathBeanInfo beanInfo = (JXPathBeanInfo) byClass.get(beanClass); if (beanInfo == null) { beanInfo = findDynamicBeanInfo(beanClass); if (beanInfo == null) { beanInfo = findInformant(beanClass); if (beanInfo == null) { beanInfo = new JXPathBasicBeanInfo(beanClass); } } byClass.put(beanClass, beanInfo); } return beanInfo; }