public abstract class DescriptorIterator
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
class |
DescriptorIterator.CascadeCondition |
Modifier and Type | Field and Description |
---|---|
static int |
CascadeAllParts |
static int |
CascadePrivateParts |
static int |
NoCascading |
Constructor and Description |
---|
DescriptorIterator()
Construct a typical iterator:
iterate over all the objects
process the objects contained by "value holders"...
|
Modifier and Type | Method and Description |
---|---|
int |
getCascadeDepth() |
ClassDescriptor |
getCurrentDescriptor() |
AttributeGroup |
getCurrentGroup() |
AttributeItem |
getCurrentItem() |
DatabaseMapping |
getCurrentMapping() |
java.lang.Object |
getResult() |
AbstractSession |
getSession() |
java.lang.Object |
getVisitedGrandparent()
Return the second-to-last object visited.
|
java.util.Map |
getVisitedObjects() |
java.lang.Object |
getVisitedParent()
Return the last object visited.
|
java.util.Stack |
getVisitedStack() |
void |
iterateForAggregateMapping(java.lang.Object aggregateObject,
DatabaseMapping mapping,
ClassDescriptor descriptor)
Iterate on the mapping's reference object and
recursively iterate on the reference object's
reference objects.
|
void |
iterateIndirectContainerForMapping(IndirectContainer container,
DatabaseMapping mapping)
Iterate on the indirection object for its mapping.
|
void |
iteratePrimitiveForMapping(java.lang.Object primitiveValue,
DatabaseMapping mapping)
Iterate on the primitive value for its mapping.
|
void |
iterateReferenceObjectForMapping(java.lang.Object referenceObject,
DatabaseMapping mapping)
Iterate on the mapping's reference object and
recursively iterate on the reference object's
reference objects.
|
void |
iterateValueHolderForMapping(ValueHolderInterface valueHolder,
DatabaseMapping mapping)
Iterate on the value holder for its mapping.
|
void |
setCascadeCondition(DescriptorIterator.CascadeCondition cascadeCondition) |
void |
setCascadeDepth(int cascadeDepth) |
void |
setCurrentDescriptor(ClassDescriptor currentDescriptor) |
void |
setCurrentGroup(AttributeGroup group) |
void |
setCurrentItem(AttributeItem item) |
void |
setCurrentMapping(DatabaseMapping currentMapping) |
void |
setResult(java.lang.Object result) |
void |
setSession(AbstractSession session) |
void |
setShouldBreak(boolean shouldBreak) |
void |
setShouldIterateOnAggregates(boolean shouldIterateOnAggregates)
Set whether the aggregate reference objects themselves
should be processed.
|
void |
setShouldIterateOnFetchGroupAttributesOnly(boolean shouldIterateOnFetchGroupAttributesOnly)
Set whether the attributes outside fetch group should be processed.
|
void |
setShouldIterateOnIndirectionObjects(boolean shouldIterateOnIndirectionObjects)
Set whether the indirection objects themselves (e.g.
|
void |
setShouldIterateOnPrimitives(boolean shouldIterateOnPrimitives)
Set whether to process primitive reference objects
(e.g.
|
void |
setShouldIterateOverIndirectionObjects(boolean shouldIterateOverIndirectionObjects)
Set whether to process the objects contained by indirection objects
(e.g.
|
void |
setShouldIterateOverUninstantiatedIndirectionObjects(boolean shouldIterateOverUninstantiatedIndirectionObjects)
Set whether to *instantiate* and process the objects
contained by indirection objects (e.g.
|
void |
setShouldIterateOverWrappedObjects(boolean shouldIterateOverWrappedObjects) |
void |
setShouldTrackCurrentGroup(boolean shouldTrackCurrentGroup) |
void |
setVisitedObjects(java.util.Map visitedObjects) |
boolean |
shouldBreak() |
boolean |
shouldCascadeAllParts() |
boolean |
shouldCascadeNoParts() |
boolean |
shouldCascadePrivateParts() |
boolean |
shouldIterateOnAggregates()
Return whether the aggregate reference objects themselves
should be processed.
|
boolean |
shouldIterateOnFetchGroupAttributesOnly()
If true then if object has a FetchGroup then iterations
not performed on mappings that are outside of the FetchGroup.
|
boolean |
shouldIterateOnIndirectionObjects()
Return whether the indirection objects themselves (e.g.
|
boolean |
shouldIterateOnPrimitives()
Return whether to process primitive reference objects
(e.g.
|
boolean |
shouldIterateOverIndirectionObjects()
Return whether to process the objects contained by indirection objects
(e.g.
|
boolean |
shouldIterateOverUninstantiatedIndirectionObjects()
Return whether to *instantiate* and process the objects
contained by indirection objects (e.g.
|
boolean |
shouldIterateOverWrappedObjects() |
boolean |
shouldTrackCurrentGroup() |
void |
startIterationOn(java.lang.Object sourceObject)
This is the root method called to start the iteration.
|
void |
startIterationOn(java.lang.Object sourceObject,
AttributeGroup group) |
boolean |
usesGroup() |
public static final int NoCascading
public static final int CascadePrivateParts
public static final int CascadeAllParts
public DescriptorIterator()
public int getCascadeDepth()
public ClassDescriptor getCurrentDescriptor()
public DatabaseMapping getCurrentMapping()
public AttributeItem getCurrentItem()
public AttributeGroup getCurrentGroup()
public java.lang.Object getResult()
public AbstractSession getSession()
public java.lang.Object getVisitedGrandparent()
public java.util.Map getVisitedObjects()
public java.lang.Object getVisitedParent()
public java.util.Stack getVisitedStack()
public void iterateForAggregateMapping(java.lang.Object aggregateObject, DatabaseMapping mapping, ClassDescriptor descriptor)
public void iterateIndirectContainerForMapping(IndirectContainer container, DatabaseMapping mapping)
public void iteratePrimitiveForMapping(java.lang.Object primitiveValue, DatabaseMapping mapping)
public void iterateReferenceObjectForMapping(java.lang.Object referenceObject, DatabaseMapping mapping)
public void iterateValueHolderForMapping(ValueHolderInterface valueHolder, DatabaseMapping mapping)
public void setCascadeDepth(int cascadeDepth)
public void setCascadeCondition(DescriptorIterator.CascadeCondition cascadeCondition)
public void setCurrentDescriptor(ClassDescriptor currentDescriptor)
public void setCurrentMapping(DatabaseMapping currentMapping)
public void setCurrentItem(AttributeItem item)
public void setCurrentGroup(AttributeGroup group)
public void setResult(java.lang.Object result)
public void setSession(AbstractSession session)
public void setShouldBreak(boolean shouldBreak)
public void setShouldIterateOnAggregates(boolean shouldIterateOnAggregates)
public void setShouldIterateOnFetchGroupAttributesOnly(boolean shouldIterateOnFetchGroupAttributesOnly)
public void setShouldIterateOnIndirectionObjects(boolean shouldIterateOnIndirectionObjects)
public void setShouldIterateOnPrimitives(boolean shouldIterateOnPrimitives)
public void setShouldIterateOverIndirectionObjects(boolean shouldIterateOverIndirectionObjects)
#setShouldIterateOverUninstantiatedIndirectionObjects()
public void setShouldIterateOverUninstantiatedIndirectionObjects(boolean shouldIterateOverUninstantiatedIndirectionObjects)
public void setShouldIterateOverWrappedObjects(boolean shouldIterateOverWrappedObjects)
public void setShouldTrackCurrentGroup(boolean shouldTrackCurrentGroup)
public void setVisitedObjects(java.util.Map visitedObjects)
public boolean shouldBreak()
public boolean shouldCascadeAllParts()
public boolean shouldCascadeNoParts()
public boolean shouldCascadePrivateParts()
public boolean shouldIterateOnAggregates()
public boolean shouldIterateOnFetchGroupAttributesOnly()
public boolean shouldIterateOnIndirectionObjects()
public boolean shouldIterateOnPrimitives()
public boolean shouldIterateOverIndirectionObjects()
public boolean shouldIterateOverUninstantiatedIndirectionObjects()
public boolean shouldIterateOverWrappedObjects()
public boolean shouldTrackCurrentGroup()
public boolean usesGroup()
public void startIterationOn(java.lang.Object sourceObject)
public void startIterationOn(java.lang.Object sourceObject, AttributeGroup group)
EclipseLink 2.6.3, "build v20160428-59c81c5" API Reference