org.apache.cayenne.access.trans
Class JoinStack

java.lang.Object
  extended by org.apache.cayenne.access.trans.JoinStack
Direct Known Subclasses:
OpenBaseJoinStack

public class JoinStack
extends Object

Encapsulates join reuse/split logic used in SelectQuery processing. All expression path's that exist in the query (in the qualifier, etc.) are processed to produce a combined join tree.

Since:
3.0

Field Summary
protected  JoinTreeNode rootNode
           
protected  JoinTreeNode topNode
           
 
Constructor Summary
protected JoinStack()
           
 
Method Summary
protected  void appendJoins(Appendable out)
          Appends all configured joins to the provided output object.
protected  void appendJoinSubtree(Appendable out, JoinTreeNode node)
           
protected  void appendQualifier(Appendable out, boolean firstQualifyerElement)
          Append join information to the qualifier - the part after "WHERE".
protected  String newAlias()
           
protected  int size()
          Returns the number of configured joins.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

rootNode

protected JoinTreeNode rootNode

topNode

protected JoinTreeNode topNode
Constructor Detail

JoinStack

protected JoinStack()
Method Detail

size

protected int size()
Returns the number of configured joins.


appendJoins

protected void appendJoins(Appendable out)
                    throws IOException
Appends all configured joins to the provided output object.

Throws:
IOException

appendJoinSubtree

protected void appendJoinSubtree(Appendable out,
                                 JoinTreeNode node)
                          throws IOException
Throws:
IOException

appendQualifier

protected void appendQualifier(Appendable out,
                               boolean firstQualifyerElement)
                        throws IOException
Append join information to the qualifier - the part after "WHERE".

Throws:
IOException

newAlias

protected String newAlias()


Copyright © 2001-2008 Apache Cayenne. All Rights Reserved.