if (jt.equals(JoinType.LEFT)){
exp.doUseOuterJoin();
}else if(jt.equals(JoinType.RIGHT)){
throw new UnsupportedOperationException(ExceptionLocalization.buildMessage("RIGHT_JOIN_NOT_SUPPORTED"));
}else{
exp.doNotUseOuterJoin();
}
join = new JoinImpl<X, Y>(this, this.metamodel.managedType(clazz), this.metamodel, clazz, exp, attribute, jt);
this.joins.add(join);
((FromImpl)join).isJoin = true;
return join;