JDO Interface

FetchPlan


Fetch groups are activated using methods on this interface. An instance of this interface can be obtained from PersistenceManager.getFetchPlan, Extent.getFetchPlan, and Query. When a Query or Extent is retrieved from a PersistenceManager, its FetchPlan is initialized to the same settings as that of the PersistenceManager. Subsequent modifications of the Query or Extent's FetchPlan are not reflected in the FetchPlan of the PersistenceManager.
Since:
JDO 2.0

Public Methods

FetchPlan addGroup(String fetchGroupName)
Add the fetch group to the set of active fetch groups.
Return:
the FetchPlan
Since:
JDO 2.0
FetchPlan clearGroups()
Remove all active groups leaving no active fetch group.
Return:
the FetchPlan
Since:
JDO 2.0
Get options used during detachment.
Since:
JDO 2.0
Get the root classes for DetachAllOnCommit.
Return:
The detachment root classes
Since:
JDO 2.0
Collection getDetachmentRoots()
Get the roots for DetachAllOnCommit.
Return:
Collection of detachment roots.
Since:
JDO 2.0
Return the fetch size, or FETCH_SIZE_OPTIMAL if not set, or FETCH_SIZE_GREEDY to fetch all.
Return:
the fetch size
Since:
JDO 2.0
Set getGroups()
Return an immutable Set containing the names of all active fetch groups.
The Set is a copy of the currently active groups and will not change based on subsequent changes to the groups.
Return:
an immutable Set containing the names of all currently active fetch groups
Since:
JDO 2.0
Return the maximum fetch depth used when fetching instances.
Return:
the maximum fetch depth
Since:
JDO 2.0
FetchPlan removeGroup(String fetchGroupName)
Remove the fetch group from the set active fetch groups.
Return:
the FetchPlan
Since:
JDO 2.0
FetchPlan setDetachmentOptions(int options)
Set options to be used during detachment.
Options are DETACH_LOAD_FIELDS and DETACH_UNLOAD_FIELDS.
Since:
JDO 2.0
FetchPlan setDetachmentRootClasses(Class... rootClasses)
Set the root classes for DetachAllOnCommit.
Parameters:
rootClasses - The root classes.
Since:
JDO 2.0
FetchPlan setDetachmentRoots(Collection roots)
Set the roots for DetachAllOnCommit.
Parameters:
roots - Collection of the detachment roots.
Since:
JDO 2.0
FetchPlan setFetchSize(int fetchSize)
Set the fetch size for large result set support.
Use FETCH_SIZE_OPTIMAL to unset, and FETCH_SIZE_GREEDY to force loading of everything.
Parameters:
fetchSize - the fetch size
Return:
the FetchPlan
Since:
JDO 2.0
FetchPlan setGroup(String fetchGroupName)
Set the active fetch groups to the single named fetch group.
Parameters:
fetchGroupName - the single fetch group
Return:
the FetchPlan
Since:
JDO 2.0
FetchPlan setGroups(Collection fetchGroupNames)
Set a collection of groups.
Parameters:
fetchGroupNames - a collection of names of fetch groups
Return:
the FetchPlan
Since:
JDO 2.0
FetchPlan setGroups(String... fetchGroupNames)
Set a collection of groups.
Parameters:
fetchGroupNames - a String array of names of fetch groups
Return:
the FetchPlan
Since:
JDO 2.0
FetchPlan setMaxFetchDepth(int fetchDepth)
Set the maximum fetch depth when fetching.
A value of 0 has no meaning and will throw a JDOUserException. A value of -1 means that no limit is placed on fetching. A positive integer will result in that number of references from the initial object to be fetched.
Parameters:
fetchDepth - the depth
Return:
the FetchPlan
Since:
JDO 2.0

Public Static Fields

For use with addGroup, removeGroup, and the various setGroups calls.
Value: all.
Since:
JDO 2.0
For use with addGroup, removeGroup, and the various setGroups calls.
Value: default.
Since:
JDO 2.0
Specifies that fields that are not loaded but are in the current fetch plan should be loaded prior to detachment.
Since:
JDO 2.0
Specifies that fields that are loaded but not in the current fetch plan should be unloaded prior to detachment.
Since:
JDO 2.0
For use with setFetchSize.
Value: -1.
Since:
JDO 2.0
For use with setFetchSize.
Value: 0.
Since:
JDO 2.0