public ClassDescriptor getDescriptor() { if (isAttribute()) { //TODO: add support for treat on attributes throw QueryException.couldNotFindCastDescriptor(castClass, getBaseExpression()); } if (descriptor == null) { ClassDescriptor rootDescriptor = typeExpressionBase.getDescriptor(); descriptor = convertToCastDescriptor(rootDescriptor, getSession()); } return descriptor; }
public ClassDescriptor getDescriptor() { if (isAttribute()) { //TODO: add support for treat on attributes throw QueryException.couldNotFindCastDescriptor(castClass, getBaseExpression()); } if (descriptor == null) { ClassDescriptor rootDescriptor = typeExpressionBase.getDescriptor(); descriptor = convertToCastDescriptor(rootDescriptor, getSession()); } return descriptor; }
if(getSession().getPlatform().shouldPrintOuterJoinInWhereClause()) {
if(getSession().getPlatform().shouldPrintOuterJoinInWhereClause()) {
/** * INTERNAL: * Return the expression to join the main table of this node to any auxiliary tables. */ public Expression additionalTreatExpressionCriteria() { if (getDescriptor() == null) { return null; } //need to build this using just the multiple tables on this descriptor not included in the parent's join expression Expression criteria = null; if(getSession().getPlatform().shouldPrintOuterJoinInWhereClause()) { if(isUsingOuterJoinForMultitableInheritance()) { criteria = getDescriptor().getInheritancePolicy().getChildrenJoinExpression(); criteria = this.baseExpression.twist(criteria, this); criteria.convertToUseOuterJoin(); } } return criteria; }
/** * INTERNAL: * Return the expression to join the main table of this node to any auxiliary tables. */ public Expression additionalTreatExpressionCriteria() { if (getDescriptor() == null) { return null; } //need to build this using just the multiple tables on this descriptor not included in the parent's join expression Expression criteria = null; if(getSession().getPlatform().shouldPrintOuterJoinInWhereClause()) { if(isUsingOuterJoinForMultitableInheritance()) { criteria = getDescriptor().getInheritancePolicy().getChildrenJoinExpression(); criteria = this.baseExpression.twist(criteria, this); criteria.convertToUseOuterJoin(); } } return criteria; }
if (getSession().getPlatform().isInformixOuterJoin()) { normalizer.addAdditionalLocalExpression(typeExpression.and(additionalTreatExpressionCriteria()).and(this.onClause)); return this; } else if (((!getSession().getPlatform().shouldPrintOuterJoinInWhereClause())) || (!getSession().getPlatform().shouldPrintInnerJoinInWhereClause())) { } else if (!getSession().getPlatform().shouldPrintOuterJoinInWhereClause() || (!getSession().getPlatform().shouldPrintInnerJoinInWhereClause())) {
if (getSession().getPlatform().isInformixOuterJoin()) { normalizer.addAdditionalLocalExpression(typeExpression.and(additionalTreatExpressionCriteria()).and(this.onClause)); return this; } else if (((!getSession().getPlatform().shouldPrintOuterJoinInWhereClause())) || (!getSession().getPlatform().shouldPrintInnerJoinInWhereClause())) { } else if (!getSession().getPlatform().shouldPrintOuterJoinInWhereClause() || (!getSession().getPlatform().shouldPrintInnerJoinInWhereClause())) {