code: private ClassDescriptor discoverDescriptor(Class clazz)
      {
          ClassDescriptor result = (ClassDescriptor) descriptorTable.get(clazz.getName());
  
          if (result == null)
          {
              Class superClass = clazz.getSuperclass();
              // only recurse if the superClass is not java.lang.Object
              if (superClass != null)
              {
                  result = discoverDescriptor(superClass);
              }
              if (result == null)
              {
                  // we're also checking the interfaces as there could be normal
                  // mappings for them in the repository (using factory-class,
                  // factory-method, and the property field accessor)
                  Class[] interfaces = clazz.getInterfaces();
  
                  if ((interfaces != null) && (interfaces.length > 0))
                  {
                      for (int idx = 0; (idx < interfaces.length) && (result == null); idx++)
                      {
                          result = discoverDescriptor(interfaces[idx]);
                      }
                  }
              }
  
              if (result != null)
              {
                  /**
                   * Kuali Foundation modification -- 6/19/2009
                   */
              	synchronized (descriptorTable) {
                  /**
                   * End of Kuali Foundation modification
                   */
              		descriptorTable.put(clazz.getName(), result);
                  /**
                   * Kuali Foundation modification -- 6/19/2009
                   */
              	}
                  /**
                   * End of Kuali Foundation modification
                   */
              }
          }
          return result;
      }
docs: Internal method for recursivly searching for a class descriptor that avoids
  class loading when we already have a class object.
  
  @param clazz The class whose descriptor we need to find
  @return ClassDescriptor for <code>clazz</code> or <code>null</code>
  if no ClassDescriptor could be located.