/**
   * This method returns the supermost class of the class passed that is in the same package as
   * class
   *
   * @author aarti_sharma
   * @param objClass
   * @return
   */
  public static Class getSupermostClassInPackage(Object obj) {
    Class objClass = obj.getClass();
    Package objPackage = objClass.getPackage();
    Logger.out.debug("Input Class: " + objClass.getName() + " Package:" + objPackage.getName());

    PersistentClass persistentClass = cfg.getClassMapping(objClass);
    if (persistentClass != null && persistentClass.getSuperclass() != null) {

      Logger.out.debug(
          objPackage.getName()
              + " "
              + persistentClass.getName()
              + "*********"
              + persistentClass.getSuperclass().getMappedClass().getPackage().getName());
      Logger.out.debug(
          "!!!!!!!!!!! "
              + persistentClass
                  .getSuperclass()
                  .getMappedClass()
                  .getPackage()
                  .getName()
                  .equals(objPackage.getName()));
      do {
        persistentClass = persistentClass.getSuperclass();
      } while (persistentClass != null);
      Logger.out.debug(
          "Supermost class in the same package:" + persistentClass.getMappedClass().getName());
    } else {
      return objClass;
    }
    return persistentClass.getMappedClass();
  }
 /**
  * This method returns the super class of the obj passed
  *
  * @author aarti_sharma
  * @param objClass
  * @return
  */
 public static Class getSuperClass(Object obj) {
   Class objClass = obj.getClass();
   PersistentClass persistentClass = cfg.getClassMapping(objClass);
   PersistentClass superClass = persistentClass.getSuperclass();
   return superClass.getClass();
 }