javax.jdo.FetchPlan - JDO interface
javax.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.getFetchPlan. 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
String ALL
String DEFAULT
For use with PersistenceManager.detachCopy and setDetachmentOptions. Specifies that fields that are not loaded but are in the current fetch plan should be loaded prior to detachment.
- Since:
- JDO 2.0
For use with PersistenceManager.detachCopy and setDetachmentOptions. 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
Add the fetch group to the set of active fetch groups.
- Parameters:
-
fetchGroupName
-
- Returns:
- the FetchPlan
- Since:
- JDO 2.0
Remove all active groups leaving no active fetch group.
- Returns:
- the FetchPlan
- Since:
- JDO 2.0
int getDetachmentOptions()
Get options used during detachment.
- Since:
- JDO 2.0
Class[] getDetachmentRootClasses()
Get the root classes for DetachAllOnCommit.
- Returns:
- The detachment root classes
- Since:
- JDO 2.0
Collection getDetachmentRoots()
Get the roots for DetachAllOnCommit.
- Returns:
- Collection of detachment roots.
- Since:
- JDO 2.0
int getFetchSize()
Return the fetch size, or FETCH_SIZE_OPTIMAL if not set, or FETCH_SIZE_GREEDY to fetch all.
- Returns:
- 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.
- Returns:
- an immutable Set containing the names of all currently active fetch groups
- Since:
- JDO 2.0
int getMaxFetchDepth()
Return the maximum fetch depth used when fetching instances.
- Returns:
- the maximum fetch depth
- Since:
- JDO 2.0
FetchPlan removeGroup(String fetchGroupName)
Remove the fetch group from the set active fetch groups.
- Parameters:
-
fetchGroupName
-
- Returns:
- 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.
- Parameters:
-
options
-
- 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
- Returns:
- the FetchPlan
- Since:
- JDO 2.0
Set the active fetch groups to the single named fetch group.
- Parameters:
-
fetchGroupName
- the single fetch group
- Returns:
- the FetchPlan
- Since:
- JDO 2.0
Set a collection of groups.
- Parameters:
-
fetchGroupNames
- a String array of names of fetch groups
- Returns:
- the FetchPlan
- Since:
- JDO 2.0
Set a collection of groups.
- Parameters:
-
fetchGroupNames
- a collection of names of fetch groups
- Returns:
- 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
- Returns:
- the FetchPlan
- Since:
- JDO 2.0