org.apache.openjpa.jdbc.kernel
Class DelegatingJDBCFetchConfiguration

java.lang.Object
  extended by org.apache.openjpa.kernel.DelegatingFetchConfiguration
      extended by org.apache.openjpa.jdbc.kernel.DelegatingJDBCFetchConfiguration
All Implemented Interfaces:
Serializable, Cloneable, EagerFetchModes, JDBCFetchConfiguration, LRSSizes, JoinSyntaxes, FetchConfiguration, LockLevels, LockScopes, QueryFlushModes

public class DelegatingJDBCFetchConfiguration
extends DelegatingFetchConfiguration
implements JDBCFetchConfiguration

Delegating fetch configuration that can also perform exception transation for use in facades.

Since:
0.4.0
Author:
Abe White
See Also:
Serialized Form

Field Summary
 
Fields inherited from interface org.apache.openjpa.kernel.FetchConfiguration
DEFAULT, FETCH_LOAD, FETCH_NONE, FETCH_REF
 
Fields inherited from interface org.apache.openjpa.kernel.LockLevels
LOCK_NONE, LOCK_READ, LOCK_WRITE
 
Fields inherited from interface org.apache.openjpa.kernel.LockScopes
LOCKSCOPE_EXTENDED, LOCKSCOPE_NORMAL
 
Fields inherited from interface org.apache.openjpa.kernel.QueryFlushModes
FLUSH_FALSE, FLUSH_TRUE, FLUSH_WITH_CONNECTION
 
Fields inherited from interface org.apache.openjpa.jdbc.kernel.EagerFetchModes
EAGER_JOIN, EAGER_NONE, EAGER_PARALLEL
 
Fields inherited from interface org.apache.openjpa.jdbc.kernel.LRSSizes
SIZE_LAST, SIZE_QUERY, SIZE_UNKNOWN
 
Fields inherited from interface org.apache.openjpa.jdbc.sql.JoinSyntaxes
SYNTAX_DATABASE, SYNTAX_SQL92, SYNTAX_TRADITIONAL
 
Constructor Summary
DelegatingJDBCFetchConfiguration(JDBCFetchConfiguration delegate)
          Constructor; supply delegate.
DelegatingJDBCFetchConfiguration(JDBCFetchConfiguration delegate, RuntimeExceptionTranslator trans)
          Constructor; supply delegate and exception translator.
 
Method Summary
 JDBCFetchConfiguration addFetchInnerJoin(String field)
          Adds field to the set of fully-qualified field names to eagerly join when loading objects.
 JDBCFetchConfiguration addFetchInnerJoins(Collection fields)
          Adds fields to the set of fully-qualified field names to eagerly join when loading objects.
 JDBCFetchConfiguration addJoin(String field)
          Adds field to the set of fully-qualified field names to eagerly join when loading objects.
 JDBCFetchConfiguration addJoins(Collection fields)
          Adds fields to the set of fully-qualified field names to eagerly join when loading objects.
 JDBCFetchConfiguration clearJoins()
          Clears the set of field names to join when loading data.
 int getEagerFetchMode()
          Return the eager fetch mode.
 int getFetchDirection()
          The fetch direction to use as a constant from ResultSet.
 Set getFetchInnerJoins()
          Returns the names of the inner fetch joins that this component will use when loading objects.
 int getIsolation()
          The isolation level for queries issued to the database.
 JDBCFetchConfiguration getJDBCDelegate()
          Return the JDBC delegate.
 Set getJoins()
          Returns the names of the joins that this component will use when loading objects.
 int getJoinSyntax()
          The join syntax to use.
 int getLRSSize()
          The large result set size mode to use.
 int getResultSetType()
          The result set type to use as a constant from ResultSet.
 int getSubclassFetchMode()
          Return the subclass fetch mode.
 int getSubclassFetchMode(ClassMapping cls)
          Return the effective subclass fetch mode for the given type.
 boolean hasFetchInnerJoin(String field)
          Return true if the given fully-qualified inner fetch join has been added.
 boolean hasJoin(String field)
          Return true if the given fully-qualified join has been added.
 JDBCFetchConfiguration removeJoin(String field)
          Removes field to the set of fully-qualified field names to eagerly join when loading objects.
 JDBCFetchConfiguration removeJoins(Collection fields)
          Removes fields from the set of fully-qualified field names to eagerly join when loading objects.
 JDBCFetchConfiguration setEagerFetchMode(int mode)
          Set the eager fetch mode.
 JDBCFetchConfiguration setFetchDirection(int direction)
          The fetch direction to use as a constant from ResultSet.
 JDBCFetchConfiguration setIsolation(int level)
          The isolation level for queries issued to the database.
 JDBCFetchConfiguration setJoinSyntax(int syntax)
          The join syntax to use.
 JDBCFetchConfiguration setLRSSize(int lrsSize)
          The large result set size mode to use.
 JDBCFetchConfiguration setResultSetType(int type)
          The result set type to use as a constant from ResultSet.
 JDBCFetchConfiguration setSubclassFetchMode(int mode)
          Set the subclass fetch mode.
 JDBCFetchConfiguration traverseJDBC(FieldMetaData fm)
          Convenience method to cast traversal to store-specific type.
 
Methods inherited from class org.apache.openjpa.kernel.DelegatingFetchConfiguration
addFetchGroup, addFetchGroups, addField, addFields, clearFetchGroups, clearFields, clone, copy, equals, getCacheRetrieveMode, getCacheStoreMode, getContext, getDelegate, getExtendedPathLookup, getFetchBatchSize, getFetchGroups, getFields, getFlushBeforeQueries, getHint, getHints, getInnermostDelegate, getLockScope, getLockTimeout, getMaxFetchDepth, getQueryCacheEnabled, getQueryTimeout, getReadLockLevel, getRootClasses, getRootInstances, getWriteLockLevel, hasFetchGroup, hasField, hashCode, isHintSet, lock, newResultList, removeFetchGroup, removeFetchGroups, removeField, removeFields, requiresFetch, requiresLoad, resetFetchGroups, setCacheRetrieveMode, setCacheStoreMode, setContext, setExtendedPathLookup, setFetchBatchSize, setFlushBeforeQueries, setHint, setHint, setLockScope, setLockTimeout, setMaxFetchDepth, setQueryCacheEnabled, setQueryTimeout, setReadLockLevel, setRootClasses, setRootInstances, setWriteLockLevel, translate, traverse, unlock
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.openjpa.kernel.FetchConfiguration
addFetchGroup, addFetchGroups, addField, addFields, clearFetchGroups, clearFields, clone, copy, getCacheRetrieveMode, getCacheStoreMode, getContext, getExtendedPathLookup, getFetchBatchSize, getFetchGroups, getFields, getFlushBeforeQueries, getHint, getHints, getLockScope, getLockTimeout, getMaxFetchDepth, getQueryCacheEnabled, getQueryTimeout, getReadLockLevel, getRootClasses, getRootInstances, getWriteLockLevel, hasFetchGroup, hasField, isHintSet, lock, newResultList, removeFetchGroup, removeFetchGroups, removeField, removeFields, requiresFetch, requiresLoad, resetFetchGroups, setCacheRetrieveMode, setCacheStoreMode, setContext, setExtendedPathLookup, setFetchBatchSize, setFlushBeforeQueries, setHint, setHint, setLockScope, setLockTimeout, setMaxFetchDepth, setQueryCacheEnabled, setQueryTimeout, setReadLockLevel, setRootClasses, setRootInstances, setWriteLockLevel, traverse, unlock
 

Constructor Detail

DelegatingJDBCFetchConfiguration

public DelegatingJDBCFetchConfiguration(JDBCFetchConfiguration delegate)
Constructor; supply delegate.


DelegatingJDBCFetchConfiguration

public DelegatingJDBCFetchConfiguration(JDBCFetchConfiguration delegate,
                                        RuntimeExceptionTranslator trans)
Constructor; supply delegate and exception translator.

Method Detail

getJDBCDelegate

public JDBCFetchConfiguration getJDBCDelegate()
Return the JDBC delegate.


getEagerFetchMode

public int getEagerFetchMode()
Description copied from interface: JDBCFetchConfiguration
Return the eager fetch mode. Defaults to the openjpa.jdbc.EagerFetchMode setting.

Specified by:
getEagerFetchMode in interface JDBCFetchConfiguration

setEagerFetchMode

public JDBCFetchConfiguration setEagerFetchMode(int mode)
Description copied from interface: JDBCFetchConfiguration
Set the eager fetch mode. Defaults to the openjpa.jdbc.EagerFetchMode setting.

Specified by:
setEagerFetchMode in interface JDBCFetchConfiguration

getSubclassFetchMode

public int getSubclassFetchMode()
Description copied from interface: JDBCFetchConfiguration
Return the subclass fetch mode. Defaults to the openjpa.jdbc.SubclassFetchMode setting.

Specified by:
getSubclassFetchMode in interface JDBCFetchConfiguration

getSubclassFetchMode

public int getSubclassFetchMode(ClassMapping cls)
Description copied from interface: JDBCFetchConfiguration
Return the effective subclass fetch mode for the given type.

Specified by:
getSubclassFetchMode in interface JDBCFetchConfiguration

setSubclassFetchMode

public JDBCFetchConfiguration setSubclassFetchMode(int mode)
Description copied from interface: JDBCFetchConfiguration
Set the subclass fetch mode. Defaults to the openjpa.jdbc.SubclassFetchMode setting.

Specified by:
setSubclassFetchMode in interface JDBCFetchConfiguration

getResultSetType

public int getResultSetType()
Description copied from interface: JDBCFetchConfiguration
The result set type to use as a constant from ResultSet. Defaults to the openjpa.jdbc.ResultSetType setting.

Specified by:
getResultSetType in interface JDBCFetchConfiguration

setResultSetType

public JDBCFetchConfiguration setResultSetType(int type)
Description copied from interface: JDBCFetchConfiguration
The result set type to use as a constant from ResultSet. Defaults to the openjpa.jdbc.ResultSetType setting.

Specified by:
setResultSetType in interface JDBCFetchConfiguration

getFetchDirection

public int getFetchDirection()
Description copied from interface: JDBCFetchConfiguration
The fetch direction to use as a constant from ResultSet. Defaults to the openjpa.jdbc.FetchDirection setting.

Specified by:
getFetchDirection in interface JDBCFetchConfiguration

setFetchDirection

public JDBCFetchConfiguration setFetchDirection(int direction)
Description copied from interface: JDBCFetchConfiguration
The fetch direction to use as a constant from ResultSet. Defaults to the openjpa.jdbc.FetchDirection setting.

Specified by:
setFetchDirection in interface JDBCFetchConfiguration

getLRSSize

public int getLRSSize()
Description copied from interface: JDBCFetchConfiguration
The large result set size mode to use. Defaults to the openjpa.jdbc.LRSSize setting.

Specified by:
getLRSSize in interface JDBCFetchConfiguration

setLRSSize

public JDBCFetchConfiguration setLRSSize(int lrsSize)
Description copied from interface: JDBCFetchConfiguration
The large result set size mode to use. Defaults to the openjpa.jdbc.LRSSize setting.

Specified by:
setLRSSize in interface JDBCFetchConfiguration

getJoinSyntax

public int getJoinSyntax()
Description copied from interface: JDBCFetchConfiguration
The join syntax to use.

Specified by:
getJoinSyntax in interface JDBCFetchConfiguration

setJoinSyntax

public JDBCFetchConfiguration setJoinSyntax(int syntax)
Description copied from interface: JDBCFetchConfiguration
The join syntax to use.

Specified by:
setJoinSyntax in interface JDBCFetchConfiguration

getJoins

public Set getJoins()
Description copied from interface: JDBCFetchConfiguration
Returns the names of the joins that this component will use when loading objects. Defaults to the empty set. This set is not thread safe.

Specified by:
getJoins in interface JDBCFetchConfiguration

hasJoin

public boolean hasJoin(String field)
Description copied from interface: JDBCFetchConfiguration
Return true if the given fully-qualified join has been added.

Specified by:
hasJoin in interface JDBCFetchConfiguration

addJoin

public JDBCFetchConfiguration addJoin(String field)
Description copied from interface: JDBCFetchConfiguration
Adds field to the set of fully-qualified field names to eagerly join when loading objects. Each class can have at most one to-many eagerly joined fields.

Specified by:
addJoin in interface JDBCFetchConfiguration

addJoins

public JDBCFetchConfiguration addJoins(Collection fields)
Description copied from interface: JDBCFetchConfiguration
Adds fields to the set of fully-qualified field names to eagerly join when loading objects. Each class can have at most one to-many eagerly joined fields.

Specified by:
addJoins in interface JDBCFetchConfiguration

removeJoin

public JDBCFetchConfiguration removeJoin(String field)
Description copied from interface: JDBCFetchConfiguration
Removes field to the set of fully-qualified field names to eagerly join when loading objects.

Specified by:
removeJoin in interface JDBCFetchConfiguration

removeJoins

public JDBCFetchConfiguration removeJoins(Collection fields)
Description copied from interface: JDBCFetchConfiguration
Removes fields from the set of fully-qualified field names to eagerly join when loading objects.

Specified by:
removeJoins in interface JDBCFetchConfiguration

clearJoins

public JDBCFetchConfiguration clearJoins()
Description copied from interface: JDBCFetchConfiguration
Clears the set of field names to join when loading data.

Specified by:
clearJoins in interface JDBCFetchConfiguration

getIsolation

public int getIsolation()
Description copied from interface: JDBCFetchConfiguration

The isolation level for queries issued to the database. This overrides the persistence-unit-wide openjpa.jdbc.TransactionIsolation value.

Must be one of Connection.TRANSACTION_NONE, Connection.TRANSACTION_READ_UNCOMMITTED, Connection.TRANSACTION_READ_COMMITTED, Connection.TRANSACTION_REPEATABLE_READ, Connection.TRANSACTION_SERIALIZABLE, or -1 for the default connection level specified by the context in which this fetch configuration is being used.

Specified by:
getIsolation in interface JDBCFetchConfiguration

setIsolation

public JDBCFetchConfiguration setIsolation(int level)
Description copied from interface: JDBCFetchConfiguration

The isolation level for queries issued to the database. This overrides the persistence-unit-wide openjpa.jdbc.TransactionIsolation value.

Must be one of Connection.TRANSACTION_NONE, Connection.TRANSACTION_READ_UNCOMMITTED, Connection.TRANSACTION_READ_COMMITTED, Connection.TRANSACTION_REPEATABLE_READ, Connection.TRANSACTION_SERIALIZABLE, or -1 for the default connection level specified by the context in which this fetch configuration is being used.

Specified by:
setIsolation in interface JDBCFetchConfiguration

traverseJDBC

public JDBCFetchConfiguration traverseJDBC(FieldMetaData fm)
Description copied from interface: JDBCFetchConfiguration
Convenience method to cast traversal to store-specific type.

Specified by:
traverseJDBC in interface JDBCFetchConfiguration

getFetchInnerJoins

public Set getFetchInnerJoins()
Description copied from interface: JDBCFetchConfiguration
Returns the names of the inner fetch joins that this component will use when loading objects. Defaults to the empty set. This set is not thread safe.

Specified by:
getFetchInnerJoins in interface JDBCFetchConfiguration

hasFetchInnerJoin

public boolean hasFetchInnerJoin(String field)
Description copied from interface: JDBCFetchConfiguration
Return true if the given fully-qualified inner fetch join has been added.

Specified by:
hasFetchInnerJoin in interface JDBCFetchConfiguration

addFetchInnerJoin

public JDBCFetchConfiguration addFetchInnerJoin(String field)
Description copied from interface: JDBCFetchConfiguration
Adds field to the set of fully-qualified field names to eagerly join when loading objects. Each class can have at most one to-many eagerly joined fields.

Specified by:
addFetchInnerJoin in interface JDBCFetchConfiguration

addFetchInnerJoins

public JDBCFetchConfiguration addFetchInnerJoins(Collection fields)
Description copied from interface: JDBCFetchConfiguration
Adds fields to the set of fully-qualified field names to eagerly join when loading objects. Each class can have at most one to-many eagerly joined fields.

Specified by:
addFetchInnerJoins in interface JDBCFetchConfiguration


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