Class JDBCFetchConfigurationImpl
- All Implemented Interfaces:
Serializable,Cloneable,EagerFetchModes,JDBCFetchConfiguration,LRSSizes,JoinSyntaxes,FetchConfiguration,LockLevels,LockScopes,QueryFlushModes
- Direct Known Subclasses:
TargetFetchConfiguration
FetchConfiguration.- Author:
- Abe White
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classConfigurable JDBC state shared throughout a traversal chain.Nested classes/interfaces inherited from class org.apache.openjpa.kernel.FetchConfigurationImpl
FetchConfigurationImpl.ConfigurationState -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final JDBCFetchConfigurationImpl.JDBCConfigurationStateFields inherited from interface org.apache.openjpa.jdbc.kernel.EagerFetchModes
EAGER_JOIN, EAGER_NONE, EAGER_PARALLELFields inherited from interface org.apache.openjpa.kernel.FetchConfiguration
DEFAULT, FETCH_LOAD, FETCH_NONE, FETCH_REFFields inherited from interface org.apache.openjpa.jdbc.sql.JoinSyntaxes
SYNTAX_DATABASE, SYNTAX_SQL92, SYNTAX_TRADITIONALFields inherited from interface org.apache.openjpa.kernel.LockLevels
LOCK_NONE, LOCK_READ, LOCK_WRITEFields inherited from interface org.apache.openjpa.kernel.LockScopes
LOCKSCOPE_EXTENDED, LOCKSCOPE_NORMALFields inherited from interface org.apache.openjpa.jdbc.kernel.LRSSizes
SIZE_LAST, SIZE_QUERY, SIZE_UNKNOWNFields inherited from interface org.apache.openjpa.kernel.QueryFlushModes
FLUSH_FALSE, FLUSH_TRUE, FLUSH_WITH_CONNECTION -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJDBCFetchConfigurationImpl(FetchConfigurationImpl.ConfigurationState state, JDBCFetchConfigurationImpl.JDBCConfigurationState jstate) -
Method Summary
Modifier and TypeMethodDescriptionaddFetchInnerJoin(String join) Addsfieldto the set of fully-qualified field names to eagerly join when loading objects.addFetchInnerJoins(Collection<String> joins) Addsfieldsto the set of fully-qualified field names to eagerly join when loading objects.Addsfieldto the set of fully-qualified field names to eagerly join when loading objects.addJoins(Collection<String> joins) Addsfieldsto the set of fully-qualified field names to eagerly join when loading objects.Clears the set of field names to join when loading data.voidcopy(FetchConfiguration fetch) Copy the state from the given fetch configuration to this one.intReturn the eager fetch mode.intThe fetch direction to use as a constant fromResultSet.Returns the names of the inner fetch joins that this component will use when loading objects.booleanAffirms if foreign key for a relation field will be pre-fetched as part of the owning object irrespective of whether the field is included in the default fetch group of this fetch configuration.intThe isolation level for queries issued to the database.getJoins()Returns the names of the joins that this component will use when loading objects.intThe join syntax to use.intThe large result set size mode to use.intThe result set type to use as a constant fromResultSet.intReturn the subclass fetch mode.intReturn the effective subclass fetch mode for the given type.booleanhasFetchInnerJoin(String field) Return true if the given fully-qualified inner fetch join has been added.booleanReturn true if the given fully-qualified join has been added.protected FetchConfigurationImplReturn a new hollow instance.ResultList<?>Return a new result list for the current fetch configuration.removeJoin(String field) Removesfieldto the set of fully-qualified field names to eagerly join when loading objects.removeJoins(Collection<String> joins) Removesfieldsfrom the set of fully-qualified field names to eagerly join when loading objects.voidsetContext(StoreContext ctx) Called automatically by the system to associate the fetch configuration with a context before use.setEagerFetchMode(int mode) Set the eager fetch mode.setFetchDirection(int direction) The fetch direction to use as a constant fromResultSet.voidsetIgnoreDfgForFkSelect(boolean b) Affirms if foreign key for a relation field will be pre-fetched as part of the owning object irrespective of whether the field is included in the default fetch group of this fetch configuration.setIsolation(int level) The isolation level for queries issued to the database.setJoinSyntax(int syntax) The join syntax to use.setLRSSize(int size) The large result set size mode to use.setResultSetType(int type) The result set type to use as a constant fromResultSet.setSubclassFetchMode(int mode) Set the subclass fetch mode.Convenience method to cast traversal to store-specific type.Methods inherited from class org.apache.openjpa.kernel.FetchConfigurationImpl
addFetchGroup, addFetchGroups, addField, addFields, clearFetchGroups, clearFields, clone, getCacheRetrieveMode, getCacheStoreMode, getContext, getExtendedPathLookup, getFetchBatchSize, getFetchGroups, getFields, getFlushBeforeQueries, getHint, getHints, getLockScope, getLockTimeout, getMaxFetchDepth, getQueryCacheEnabled, getQueryTimeout, getReadLockLevel, getRootClasses, getRootInstances, getSupportedHints, getWriteLockLevel, hasFetchGroup, hasFetchGroupAll, hasFetchGroupDefault, hasField, isDefaultPUFetchGroupConfigurationOnly, isFetchConfigurationSQLCacheAdmissible, isHintSet, lock, populateHintSetter, populateHintSetter, removeFetchGroup, removeFetchGroups, removeField, removeFields, removeHint, removeHint, requiresFetch, requiresLoad, resetFetchGroups, setCacheRetrieveMode, setCacheStoreMode, setExtendedPathLookup, setFetchBatchSize, setFlushBeforeQueries, setHint, setHint, setLockScope, setLockTimeout, setMaxFetchDepth, setQueryCacheEnabled, setQueryTimeout, setReadLockLevel, setRootClasses, setRootInstances, setWriteLockLevel, toString, toString, traverse, unlockMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.openjpa.kernel.FetchConfiguration
addFetchGroup, addFetchGroups, addField, addFields, clearFetchGroups, clearFields, clone, getCacheRetrieveMode, getCacheStoreMode, getContext, getExtendedPathLookup, getFetchBatchSize, getFetchGroups, getFields, getFlushBeforeQueries, getHint, getHints, getLockScope, getLockTimeout, getMaxFetchDepth, getQueryCacheEnabled, getQueryTimeout, getReadLockLevel, getRootClasses, getRootInstances, getWriteLockLevel, hasFetchGroup, hasField, isDefaultPUFetchGroupConfigurationOnly, isFetchConfigurationSQLCacheAdmissible, isHintSet, lock, removeFetchGroup, removeFetchGroups, removeField, removeFields, requiresFetch, requiresLoad, resetFetchGroups, setCacheRetrieveMode, setCacheStoreMode, setExtendedPathLookup, setFetchBatchSize, setFlushBeforeQueries, setHint, setHint, setLockScope, setLockTimeout, setMaxFetchDepth, setQueryCacheEnabled, setQueryTimeout, setReadLockLevel, setRootClasses, setRootInstances, setWriteLockLevel, traverse, unlock
-
Field Details
-
_state
-
-
Constructor Details
-
JDBCFetchConfigurationImpl
public JDBCFetchConfigurationImpl() -
JDBCFetchConfigurationImpl
protected JDBCFetchConfigurationImpl(FetchConfigurationImpl.ConfigurationState state, JDBCFetchConfigurationImpl.JDBCConfigurationState jstate)
-
-
Method Details
-
newInstance
Description copied from class:FetchConfigurationImplReturn a new hollow instance.- Overrides:
newInstancein classFetchConfigurationImpl
-
setContext
Description copied from interface:FetchConfigurationCalled automatically by the system to associate the fetch configuration with a context before use. The fetch configuration properties should be synchronized with the context's configuration object. Subclasses for specific back ends cannot rely on the context's configuration implementing their back end's configuration sub-interface.- Specified by:
setContextin interfaceFetchConfiguration- Overrides:
setContextin classFetchConfigurationImpl
-
copy
Description copied from interface:FetchConfigurationCopy the state from the given fetch configuration to this one.- Specified by:
copyin interfaceFetchConfiguration- Overrides:
copyin classFetchConfigurationImpl
-
getIgnoreDfgForFkSelect
public boolean getIgnoreDfgForFkSelect()Description copied from interface:JDBCFetchConfigurationAffirms if foreign key for a relation field will be pre-fetched as part of the owning object irrespective of whether the field is included in the default fetch group of this fetch configuration.
By default, foreign key for a relation field is pre-fetched as part of the owning object only if the field in included in the default fetch group of this fetch configuration.- Specified by:
getIgnoreDfgForFkSelectin interfaceJDBCFetchConfiguration
-
setIgnoreDfgForFkSelect
public void setIgnoreDfgForFkSelect(boolean b) Description copied from interface:JDBCFetchConfigurationAffirms if foreign key for a relation field will be pre-fetched as part of the owning object irrespective of whether the field is included in the default fetch group of this fetch configuration.
By default, foreign key for a relation field is pre-fetched as part of the owning object only if the field in included in the default fetch group of this fetch configuration.- Specified by:
setIgnoreDfgForFkSelectin interfaceJDBCFetchConfiguration
-
getEagerFetchMode
public int getEagerFetchMode()Description copied from interface:JDBCFetchConfigurationReturn the eager fetch mode. Defaults to theopenjpa.jdbc.EagerFetchModesetting.- Specified by:
getEagerFetchModein interfaceJDBCFetchConfiguration
-
setEagerFetchMode
Description copied from interface:JDBCFetchConfigurationSet the eager fetch mode. Defaults to theopenjpa.jdbc.EagerFetchModesetting.- Specified by:
setEagerFetchModein interfaceJDBCFetchConfiguration
-
getSubclassFetchMode
public int getSubclassFetchMode()Description copied from interface:JDBCFetchConfigurationReturn the subclass fetch mode. Defaults to theopenjpa.jdbc.SubclassFetchModesetting.- Specified by:
getSubclassFetchModein interfaceJDBCFetchConfiguration
-
getSubclassFetchMode
Description copied from interface:JDBCFetchConfigurationReturn the effective subclass fetch mode for the given type.- Specified by:
getSubclassFetchModein interfaceJDBCFetchConfiguration
-
setSubclassFetchMode
Description copied from interface:JDBCFetchConfigurationSet the subclass fetch mode. Defaults to theopenjpa.jdbc.SubclassFetchModesetting.- Specified by:
setSubclassFetchModein interfaceJDBCFetchConfiguration
-
getResultSetType
public int getResultSetType()Description copied from interface:JDBCFetchConfigurationThe result set type to use as a constant fromResultSet. Defaults to theopenjpa.jdbc.ResultSetTypesetting.- Specified by:
getResultSetTypein interfaceJDBCFetchConfiguration
-
setResultSetType
Description copied from interface:JDBCFetchConfigurationThe result set type to use as a constant fromResultSet. Defaults to theopenjpa.jdbc.ResultSetTypesetting.- Specified by:
setResultSetTypein interfaceJDBCFetchConfiguration
-
getFetchDirection
public int getFetchDirection()Description copied from interface:JDBCFetchConfigurationThe fetch direction to use as a constant fromResultSet. Defaults to theopenjpa.jdbc.FetchDirectionsetting.- Specified by:
getFetchDirectionin interfaceJDBCFetchConfiguration
-
setFetchDirection
Description copied from interface:JDBCFetchConfigurationThe fetch direction to use as a constant fromResultSet. Defaults to theopenjpa.jdbc.FetchDirectionsetting.- Specified by:
setFetchDirectionin interfaceJDBCFetchConfiguration
-
getLRSSize
public int getLRSSize()Description copied from interface:JDBCFetchConfigurationThe large result set size mode to use. Defaults to theopenjpa.jdbc.LRSSizesetting.- Specified by:
getLRSSizein interfaceJDBCFetchConfiguration
-
setLRSSize
Description copied from interface:JDBCFetchConfigurationThe large result set size mode to use. Defaults to theopenjpa.jdbc.LRSSizesetting.- Specified by:
setLRSSizein interfaceJDBCFetchConfiguration
-
getJoinSyntax
public int getJoinSyntax()Description copied from interface:JDBCFetchConfigurationThe join syntax to use.- Specified by:
getJoinSyntaxin interfaceJDBCFetchConfiguration
-
setJoinSyntax
Description copied from interface:JDBCFetchConfigurationThe join syntax to use.- Specified by:
setJoinSyntaxin interfaceJDBCFetchConfiguration
-
newResultList
Description copied from interface:FetchConfigurationReturn a new result list for the current fetch configuration.- Specified by:
newResultListin interfaceFetchConfiguration- Overrides:
newResultListin classFetchConfigurationImpl
-
getJoins
Description copied from interface:JDBCFetchConfigurationReturns 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:
getJoinsin interfaceJDBCFetchConfiguration
-
hasJoin
Description copied from interface:JDBCFetchConfigurationReturn true if the given fully-qualified join has been added.- Specified by:
hasJoinin interfaceJDBCFetchConfiguration
-
addJoin
Description copied from interface:JDBCFetchConfigurationAddsfieldto 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:
addJoinin interfaceJDBCFetchConfiguration
-
addJoins
Description copied from interface:JDBCFetchConfigurationAddsfieldsto 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:
addJoinsin interfaceJDBCFetchConfiguration
-
removeJoin
Description copied from interface:JDBCFetchConfigurationRemovesfieldto the set of fully-qualified field names to eagerly join when loading objects.- Specified by:
removeJoinin interfaceJDBCFetchConfiguration
-
removeJoins
Description copied from interface:JDBCFetchConfigurationRemovesfieldsfrom the set of fully-qualified field names to eagerly join when loading objects.- Specified by:
removeJoinsin interfaceJDBCFetchConfiguration
-
clearJoins
Description copied from interface:JDBCFetchConfigurationClears the set of field names to join when loading data.- Specified by:
clearJoinsin interfaceJDBCFetchConfiguration
-
getIsolation
public int getIsolation()Description copied from interface:JDBCFetchConfigurationThe isolation level for queries issued to the database. This overrides the persistence-unit-wide
openjpa.jdbc.TransactionIsolationvalue.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:
getIsolationin interfaceJDBCFetchConfiguration
-
setIsolation
Description copied from interface:JDBCFetchConfigurationThe isolation level for queries issued to the database. This overrides the persistence-unit-wide
openjpa.jdbc.TransactionIsolationvalue.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:
setIsolationin interfaceJDBCFetchConfiguration
-
traverseJDBC
Description copied from interface:JDBCFetchConfigurationConvenience method to cast traversal to store-specific type.- Specified by:
traverseJDBCin interfaceJDBCFetchConfiguration
-
getFetchInnerJoins
Description copied from interface:JDBCFetchConfigurationReturns 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:
getFetchInnerJoinsin interfaceJDBCFetchConfiguration
-
hasFetchInnerJoin
Description copied from interface:JDBCFetchConfigurationReturn true if the given fully-qualified inner fetch join has been added.- Specified by:
hasFetchInnerJoinin interfaceJDBCFetchConfiguration
-
addFetchInnerJoin
Description copied from interface:JDBCFetchConfigurationAddsfieldto 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:
addFetchInnerJoinin interfaceJDBCFetchConfiguration
-
addFetchInnerJoins
Description copied from interface:JDBCFetchConfigurationAddsfieldsto 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:
addFetchInnerJoinsin interfaceJDBCFetchConfiguration
-