List of usage examples for org.hibernate.hql.internal.ast.tree FromElement getTableAlias
public String getTableAlias()
From source file:com.blazebit.persistence.integration.hibernate.base.HibernateExtendedQuerySupport.java
License:Apache License
@Override public String getSqlAlias(EntityManager em, Query query, String alias) { SessionImplementor session = em.unwrap(SessionImplementor.class); HQLQueryPlan plan = getOriginalQueryPlan(session, query); if (plan.getTranslators().length > 1) { throw new IllegalArgumentException("No support for multiple translators yet!"); }//from w w w . ja v a2 s . co m QueryTranslator translator = plan.getTranslators()[0]; QueryNode queryNode = getField(translator, "sqlAst"); FromElement fromElement = queryNode.getFromClause().getFromElement(alias); if (fromElement == null) { throw new IllegalArgumentException("The alias " + alias + " could not be found in the query: " + query); } return fromElement.getTableAlias(); }