public <A> A createAliasForVariable(Class<A> cl, String var) {
try {
Expression<?> path = pathCache.get(Pair.<Class<?>, String>of(cl, var));
return (A) proxyCache.get(Pair.<Class<?>, Expression<?>>of(cl, path));
} catch (ExecutionException e) {
throw new QueryException(e);
}
}