|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.cayenne.query.PrefetchTreeNode
public class PrefetchTreeNode
Defines a node in a prefetch tree.
Field Summary | |
---|---|
protected java.util.Collection |
children
|
static int |
DISJOINT_PREFETCH_SEMANTICS
|
static int |
JOINT_PREFETCH_SEMANTICS
|
protected java.lang.String |
name
|
protected PrefetchTreeNode |
parent
|
protected boolean |
phantom
|
protected int |
semantics
|
static int |
UNDEFINED_SEMANTICS
|
Constructor Summary | |
---|---|
|
PrefetchTreeNode()
Creates a root node of the prefetch tree. |
protected |
PrefetchTreeNode(PrefetchTreeNode parent,
java.lang.String segmentPath)
Creates a phantom PrefetchTreeNode, initializing it with parent node and a name of a relationship segment connecting this node with the parent. |
Method Summary | |
---|---|
void |
addChild(PrefetchTreeNode child)
|
PrefetchTreeNode |
addPath(java.lang.String path)
Adds a "path" with specified semantics to this prefetch node. |
java.util.Collection |
adjacentJointNodes()
Returns a subset of nodes with "joint" semantics that are to be prefetched in the same query as the current node. |
java.util.Collection |
disjointNodes()
Returns a collection of PrefetchTreeNodes with disjoint semantics. |
void |
encodeAsXML(XMLEncoder encoder)
Prints itself as XML to the provided XMLEncoder. |
protected PrefetchTreeNode |
getChild(java.lang.String segment)
|
java.util.Collection |
getChildren()
Returns an unmodifiable collection of children. |
java.lang.String |
getName()
|
PrefetchTreeNode |
getNode(java.lang.String path)
Looks up an existing node in the tree desribed by the dot-separated path. |
PrefetchTreeNode |
getParent()
|
java.lang.String |
getPath()
Returns full prefetch path, that is a dot separated String of node names starting from root and up to and including this node. |
java.lang.String |
getPath(PrefetchTreeNode upTillParent)
|
PrefetchTreeNode |
getRoot()
Returns the root of the node tree. |
int |
getSemantics()
|
boolean |
hasChildren()
|
boolean |
isDisjointPrefetch()
|
boolean |
isJointPrefetch()
|
boolean |
isPhantom()
|
java.util.Collection |
jointNodes()
Returns a collection of PrefetchTreeNodes in this tree with joint semantics. |
java.util.Collection |
nonPhantomNodes()
Returns a collection of PrefetchTreeNodes that are not phantoms. |
void |
removeChild(PrefetchTreeNode child)
|
protected void |
removeChild(java.lang.String segment)
|
void |
removePath(java.lang.String path)
Removes or makes phantom a node defined by this path. |
void |
setPhantom(boolean phantom)
|
void |
setSemantics(int semantics)
|
void |
traverse(PrefetchProcessor processor)
Traverses the tree depth-first, invoking callback methods of the processor when passing through the nodes. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int UNDEFINED_SEMANTICS
public static final int JOINT_PREFETCH_SEMANTICS
public static final int DISJOINT_PREFETCH_SEMANTICS
protected java.lang.String name
protected boolean phantom
protected int semantics
protected transient PrefetchTreeNode parent
protected java.util.Collection children
Constructor Detail |
---|
public PrefetchTreeNode()
protected PrefetchTreeNode(PrefetchTreeNode parent, java.lang.String segmentPath)
Method Detail |
---|
public void encodeAsXML(XMLEncoder encoder)
XMLSerializable
encodeAsXML
in interface XMLSerializable
public PrefetchTreeNode getRoot()
public java.lang.String getPath()
public java.lang.String getPath(PrefetchTreeNode upTillParent)
public java.util.Collection adjacentJointNodes()
public java.util.Collection jointNodes()
public java.util.Collection disjointNodes()
public java.util.Collection nonPhantomNodes()
public void traverse(PrefetchProcessor processor)
public PrefetchTreeNode getNode(java.lang.String path)
public PrefetchTreeNode addPath(java.lang.String path)
public void removePath(java.lang.String path)
public void addChild(PrefetchTreeNode child)
public void removeChild(PrefetchTreeNode child)
protected void removeChild(java.lang.String segment)
protected PrefetchTreeNode getChild(java.lang.String segment)
public PrefetchTreeNode getParent()
public java.util.Collection getChildren()
public boolean hasChildren()
public java.lang.String getName()
public boolean isPhantom()
public void setPhantom(boolean phantom)
public int getSemantics()
public void setSemantics(int semantics)
public boolean isJointPrefetch()
public boolean isDisjointPrefetch()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |