protected PersistentType buildSuperPersistentType() {
   PersistentType spt = this.buildSuperPersistentType_();
   if (spt == null) {
     return null;
   }
   // check for circular inheritance
   return IterableTools.contains(spt.getInheritanceHierarchy(), this) ? null : spt;
 }