code: @Override
      public Set<SingularAttribute<? super X, ?>> getIdClassAttributes()
      {
          if (isIdClass)
          {
              return idClassAttributes;
          }
          else if (getSuperClazzType() != null
          /*
           * && getSuperClazzType().getJavaType().isAssignableFrom(
           * AbstractIdentifiableType.class)
           */)
          {
              idClassAttributes = ((AbstractIdentifiableType) getSuperClazzType()).getIdClassAttributes();
          }
  
          throw new IllegalArgumentException("The identifiable type does not have an id class");
      }
docs: /*
  (non-Javadoc)
  
  @see javax.persistence.metamodel.IdentifiableType#getIdClassAttributes()