org.apache.openjpa.kernel
Class ExtentImpl

java.lang.Object
  extended by org.apache.openjpa.kernel.ExtentImpl
All Implemented Interfaces:
Extent

public class ExtentImpl
extends Object
implements Extent

Representation of all members of a persistent class.

Author:
Abe White, Patrick Linskey

Constructor Summary
ExtentImpl(Broker broker, Class type, boolean subs, FetchConfiguration fetch)
          Constructor.
 
Method Summary
 void closeAll()
          Close all open iterators.
 Broker getBroker()
          The broker that generated the extent.
 Class getElementType()
          The class of extent elements.
 FetchConfiguration getFetchConfiguration()
          Return the (mutable) fetch configuration for this extent.
 boolean getIgnoreChanges()
          Whether this extent will ignore changes made in the current transaction.
 boolean hasSubclasses()
          Whether the extent includes subclasses.
 Iterator iterator()
          Return an iterator over the extent members.
 List list()
          Returns a list of all objects represented by this extent.
 void lock()
          Synchronizes on an internal lock.
 void setIgnoreChanges(boolean ignoreChanges)
          Whether this extent will ignore changes made in the current transaction.
 void unlock()
          Release the internal lock.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExtentImpl

ExtentImpl(Broker broker,
           Class type,
           boolean subs,
           FetchConfiguration fetch)
Constructor.

Parameters:
broker - the owning broker
type - the candidate class
subs - whether subclasses are included in the extent
Method Detail

getFetchConfiguration

public FetchConfiguration getFetchConfiguration()
Description copied from interface: Extent
Return the (mutable) fetch configuration for this extent.

Specified by:
getFetchConfiguration in interface Extent

getIgnoreChanges

public boolean getIgnoreChanges()
Description copied from interface: Extent
Whether this extent will ignore changes made in the current transaction.

Specified by:
getIgnoreChanges in interface Extent

setIgnoreChanges

public void setIgnoreChanges(boolean ignoreChanges)
Description copied from interface: Extent
Whether this extent will ignore changes made in the current transaction.

Specified by:
setIgnoreChanges in interface Extent

list

public List list()
Description copied from interface: Extent
Returns a list of all objects represented by this extent. This method creates a List by traversing the entire iterator returned by a call to Extent.iterator(). This means that Collection.size() will work correctly, but if the extent represents a large data set, this method may be quite slow and may consume quite a bit of memory.

Specified by:
list in interface Extent

iterator

public Iterator iterator()
Description copied from interface: Extent
Return an iterator over the extent members.

Specified by:
iterator in interface Extent

getBroker

public Broker getBroker()
Description copied from interface: Extent
The broker that generated the extent.

Specified by:
getBroker in interface Extent

getElementType

public Class getElementType()
Description copied from interface: Extent
The class of extent elements.

Specified by:
getElementType in interface Extent

hasSubclasses

public boolean hasSubclasses()
Description copied from interface: Extent
Whether the extent includes subclasses.

Specified by:
hasSubclasses in interface Extent

closeAll

public void closeAll()
Description copied from interface: Extent
Close all open iterators.

Specified by:
closeAll in interface Extent

lock

public void lock()
Description copied from interface: Extent
Synchronizes on an internal lock.

Specified by:
lock in interface Extent

unlock

public void unlock()
Description copied from interface: Extent
Release the internal lock.

Specified by:
unlock in interface Extent


Copyright © 2006-2010 Apache Software Foundation. All Rights Reserved.