code: @SuppressWarnings("unchecked")
      private void checkParents(String name) throws ObjectLoadException {
          ArrayList<String> list = new ArrayList<String>();
          list.add(name);
          String currentParent = map.get(name).get("parent").toString();
          while (true) {
              if (currentParent == null)
                  break;
              if (list.contains(currentParent))
                  throw Lang.makeThrow(    ObjectLoadException.class,
                                          "!!!Inheritance cycle! id = %s",
                                          name);
              list.add(currentParent);
              Object obj = map.get(currentParent);
              if (obj != null && obj instanceof Map)
                  currentParent = (String) ((Map<String, Object>) obj).get("parent");
              else
                  throw Lang.makeThrow(    ObjectLoadException.class,
                                          "!!!Inheritance errors! id = %s",
                                          name);
          }
      }
docs: 检查继承关系,如果发现循环继承,或其他错误的继承关系,则抛出ObjectLoadException
  
  @param name
  beanId
  @throws ObjectLoadException
  if Inheritance errors or Inheritance cycle founded.