Methods Summary |
---|
public void | checkSelectNodeBeforeResolving(boolean shouldCheck)
shouldCheckSelectNodeBeforeResolving = shouldCheck;
|
private boolean | computeUseParallelExpressions()
boolean computedUseParallelExpressions;
//use parallel expressions if I have a 1:1 selected, and the same class isn't
//declared in the FROM
computedUseParallelExpressions = ((SelectNode)this.parseTree.getQueryNode()).hasOneToOneSelected(this);
//check if they've SELECTed a variable declared in the IN clause in the FROM,
//or they've mapped more than one variable to the same type in the FROM
computedUseParallelExpressions = computedUseParallelExpressions || ((SelectNode)this.parseTree.getQueryNode()).isVariableInINClauseSelected(this) || this.parseTree.getContext().hasMoreThanOneVariablePerType() || this.parseTree.getContext().hasMoreThanOneAliasInFrom();
return computedUseParallelExpressions;
|
public void | dontUseOuterJoins()
shouldUseOuterJoins = false;
|
public oracle.toplink.essentials.internal.parsing.MemberOfNode | getMemberOfNode()
return memberOfNode;
|
public oracle.toplink.essentials.internal.parsing.GenerationContext | getOuterContext()
return outer;
|
public boolean | hasMemberOfNode()
return memberOfNode != null;
|
public oracle.toplink.essentials.expressions.Expression | joinVariables(java.util.Set variables)Iterate the set of variables declared in an outer scope and
connect the inner varaible expression with the outer one.
if ((outer == null) || (variables == null) || variables.isEmpty()) {
// not an inner query or no variables to join
return null;
}
Expression expr = null;
for (Iterator i = variables.iterator(); i.hasNext(); ) {
String name = (String)i.next();
VariableNode var = new VariableNode(name);
Expression innerExpr = var.generateExpression(this);
Expression outerExpr = var.generateExpression(outer);
Expression join = innerExpr.equal(outerExpr);
expr = var.appendExpression(expr, join);
}
return expr;
|
public void | setMemberOfNode(oracle.toplink.essentials.internal.parsing.MemberOfNode newMemberOfNode)
memberOfNode = newMemberOfNode;
|
public boolean | shouldCheckSelectNodeBeforeResolving()
return shouldCheckSelectNodeBeforeResolving;
|
public boolean | shouldUseOuterJoins()
return shouldUseOuterJoins;
|
public void | useOuterJoins()
shouldUseOuterJoins = true;
|
public boolean | useParallelExpressions()
return useParallelExpressions;
|