Package javax.jdo

Interface FetchPlan


public 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:
2.0
Version:
2.0
  • Field Details

  • Method Details

    • addGroup

      FetchPlan addGroup(String fetchGroupName)
      Add the fetch group to the set of active fetch groups.
      Returns:
      the FetchPlan
      Since:
      2.0
    • removeGroup

      FetchPlan removeGroup(String fetchGroupName)
      Remove the fetch group from the set active fetch groups.
      Returns:
      the FetchPlan
      Since:
      2.0
    • clearGroups

      FetchPlan clearGroups()
      Remove all active groups leaving no active fetch group.
      Returns:
      the FetchPlan
      Since:
      2.0
    • getGroups

      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:
      2.0
    • setGroups

      FetchPlan setGroups(Collection fetchGroupNames)
      Set a collection of groups.
      Parameters:
      fetchGroupNames - a collection of names of fetch groups
      Returns:
      the FetchPlan
      Since:
      2.0
    • setGroups

      FetchPlan setGroups(String... fetchGroupNames)
      Set a collection of groups.
      Parameters:
      fetchGroupNames - a String array of names of fetch groups
      Returns:
      the FetchPlan
      Since:
      2.0
    • setGroup

      FetchPlan setGroup(String fetchGroupName)
      Set the active fetch groups to the single named fetch group.
      Parameters:
      fetchGroupName - the single fetch group
      Returns:
      the FetchPlan
      Since:
      2.0
    • setMaxFetchDepth

      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:
      2.0
    • getMaxFetchDepth

      int getMaxFetchDepth()
      Return the maximum fetch depth used when fetching instances.
      Returns:
      the maximum fetch depth
      Since:
      2.0
    • setDetachmentRoots

      FetchPlan setDetachmentRoots(Collection roots)
      Set the roots for DetachAllOnCommit.
      Parameters:
      roots - Collection of the detachment roots.
      Since:
      2.0
    • getDetachmentRoots

      Collection getDetachmentRoots()
      Get the roots for DetachAllOnCommit.
      Returns:
      Collection of detachment roots.
      Since:
      2.0
    • setDetachmentRootClasses

      FetchPlan setDetachmentRootClasses(Class... rootClasses)
      Set the root classes for DetachAllOnCommit.
      Parameters:
      rootClasses - The root classes.
      Since:
      2.0
    • getDetachmentRootClasses

      Class[] getDetachmentRootClasses()
      Get the root classes for DetachAllOnCommit.
      Returns:
      The detachment root classes
      Since:
      2.0
    • setFetchSize

      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:
      2.0
    • getFetchSize

      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:
      2.0
    • setDetachmentOptions

      FetchPlan setDetachmentOptions(int options)
      Set options to be used during detachment. Options are DETACH_LOAD_FIELDS and DETACH_UNLOAD_FIELDS.
    • getDetachmentOptions

      int getDetachmentOptions()
      Get options used during detachment.