Package org.eclipse.persistence.queries
Class ScrollableCursorPolicy
- java.lang.Object
-
- org.eclipse.persistence.internal.queries.ContainerPolicy
-
- org.eclipse.persistence.queries.CursorPolicy
-
- org.eclipse.persistence.queries.ScrollableCursorPolicy
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,org.eclipse.persistence.internal.core.queries.CoreContainerPolicy<org.eclipse.persistence.internal.sessions.AbstractSession>
public class ScrollableCursorPolicy extends CursorPolicy
PUBLIC: ScrollableCursorPolicy allows for additional options to be specified for ReadAllQuery or DataReadQuery. These options are passed through to the JDBC result set, the JDBC driver must support JDBC2 scrolling cursors and the options used. Example:ScrollableCursorPolicy policy = new ScrollableCursorPolicy()
policy.setResultSetType(ScrollableCursorPolicy.TYPE_SCROLL_INSENSITIVE);
query.useScrollableCursor(policy);
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static int
CONCUR_READ_ONLY
JDBC 2.0 The concurrency mode for a ResultSet object that may NOT be updated.static int
CONCUR_UPDATABLE
JDBC 2.0 The concurrency mode for a ResultSet object that may be updated.static int
FETCH_FORWARD
JDBC 2.0 The rows in a result set will be processed in a forward direction; first-to-last.static int
FETCH_REVERSE
JDBC 2.0 The rows in a result set will be processed in a reverse direction; last-to-first.static int
FETCH_UNKNOWN
JDBC 2.0 The order in which rows in a result set will be processed is unknown.protected int
resultSetConcurrency
protected int
resultSetType
static int
TYPE_FORWARD_ONLY
JDBC 2.0 The type for a ResultSet object whose cursor may move only forward.static int
TYPE_SCROLL_INSENSITIVE
JDBC 2.0 The type for a ResultSet object that is scrollable but generally not sensitive to changes made by others.static int
TYPE_SCROLL_SENSITIVE
JDBC 2.0 The type for a ResultSet object that is scrollable and generally sensitive to changes made by others.-
Fields inherited from class org.eclipse.persistence.queries.CursorPolicy
pageSize, query
-
-
Constructor Summary
Constructors Constructor Description ScrollableCursorPolicy()
PUBLIC: Create a new scrollable cursor policy.ScrollableCursorPolicy(ReadQuery query, int pageSize)
INTERNAL: Create a cursor policy with the pagesize.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
execute()
INTERNAL: Execute the cursored select and build the stream.int
getResultSetConcurrency()
PUBLIC: The ResultSetConcurrency specifies if the resultset is updatable.int
getResultSetType()
PUBLIC: The ResultSetType specifies if the resultset is sensitive to changes made by others.boolean
isScrollableCursorPolicy()
java.lang.Object
remoteExecute()
INTERNAL: Execute the cursored select and build the stream.void
setResultSetConcurrency(int resultSetConcurrency)
PUBLIC: The ResultSetConcurrency specifies if the resultset is updatable.void
setResultSetType(int resultSetType)
PUBLIC: The ResultSetType specifies if the resultset is sensitive to changes made by others.-
Methods inherited from class org.eclipse.persistence.queries.CursorPolicy
clone, createChangeEvent, getPageSize, getQuery, hasNext, isCursorPolicy, iteratorFor, next, overridesRead, prepare, setPageSize, setQuery, sizeFor, toStringInfo
-
Methods inherited from class org.eclipse.persistence.internal.queries.ContainerPolicy
addAdditionalFieldsToQuery, addAll, addAll, addFieldsForMapKey, addInto, addInto, addInto, addInto, addNestedJoinsQueriesForMapKey, addNextValueFromIteratorInto, buildChangeSetForNewObjectInCollection, buildCloneForKey, buildCollectionEntry, buildContainerFromVector, buildDefaultPolicy, buildKey, buildKeyFromJoinedRow, buildPolicyFor, buildPolicyFor, buildReferencesPKList, buildSelectionQueryForDirectCollectionMapping, cascadeDiscoverAndPersistUnregisteredNewObjects, cascadePerformRemoveIfRequired, cascadeRegisterNewIfRequired, clear, clone, cloneFor, collectObjectForNewCollection, compareCollectionsForChange, compareKeys, concatenateContainers, containerInstance, containerInstance, contains, contains, convertClassNamesToClasses, copyMapDataToRow, createChangeSetForKeys, createWrappedObjectFromExistingWrappedObject, deleteWrappedObject, equals, getAdditionalFieldsForJoin, getAdditionalTablesForJoinQuery, getChangeValuesFrom, getCloneDataFromChangeSet, getConstructor, getContainerClass, getContainerClassName, getDefaultContainerClass, getDescriptorForMapKey, getElementDescriptor, getIdentityFieldsForMapKey, getKeyMappingDataForWriteQuery, getKeySelectionCriteria, getKeyType, hasElementDescriptor, hashCode, hasOrder, initialize, initializeConstructor, isCollectionPolicy, isCursoredStreamPolicy, isDirectMapPolicy, isEmpty, isListPolicy, isMapKeyObject, isMappedKeyMapPolicy, isMapPolicy, isOrderedListPolicy, isValidContainer, isValidContainerType, iterateOnMapKey, keyFrom, keyFromEntry, keyFromIterator, mergeCascadeParts, mergeChanges, mergeChanges, next, nextEntry, nextEntry, postCalculateChanges, postCalculateChanges, postInitialize, prepareForExecution, processAdditionalWritableMapKeyFields, propagatesEventsToCollection, propogatePostDelete, propogatePostInsert, propogatePostUpdate, propogatePreDelete, propogatePreInsert, propogatePreUpdate, recordAddToCollectionInChangeRecord, recordPrivateOwnedRemovals, recordRemoveFromCollectionInChangeRecord, recordUpdateToCollectionInChangeRecord, removeFrom, removeFrom, removeFrom, requiresDataModificationEvents, setConstructor, setContainerClass, setContainerClassName, setDefaultContainerClass, setElementDescriptor, setKeyName, setKeyName, shouldAddAll, shouldIncludeKeyInDeleteEvent, shouldUpdateForeignKeysPostInsert, toString, unwrapElement, unwrapIteratorResult, updateChangeRecordForSelfMerge, updateJoinedMappingIndexesForMapKey, valueFromPKList, vectorFor
-
-
-
-
Field Detail
-
resultSetType
protected int resultSetType
-
resultSetConcurrency
protected int resultSetConcurrency
-
FETCH_FORWARD
public static final int FETCH_FORWARD
JDBC 2.0 The rows in a result set will be processed in a forward direction; first-to-last.- See Also:
- Constant Field Values
-
FETCH_REVERSE
public static final int FETCH_REVERSE
JDBC 2.0 The rows in a result set will be processed in a reverse direction; last-to-first.- See Also:
- Constant Field Values
-
FETCH_UNKNOWN
public static final int FETCH_UNKNOWN
JDBC 2.0 The order in which rows in a result set will be processed is unknown.- See Also:
- Constant Field Values
-
TYPE_FORWARD_ONLY
public static final int TYPE_FORWARD_ONLY
JDBC 2.0 The type for a ResultSet object whose cursor may move only forward.- See Also:
- Constant Field Values
-
TYPE_SCROLL_INSENSITIVE
public static final int TYPE_SCROLL_INSENSITIVE
JDBC 2.0 The type for a ResultSet object that is scrollable but generally not sensitive to changes made by others.- See Also:
- Constant Field Values
-
TYPE_SCROLL_SENSITIVE
public static final int TYPE_SCROLL_SENSITIVE
JDBC 2.0 The type for a ResultSet object that is scrollable and generally sensitive to changes made by others.- See Also:
- Constant Field Values
-
CONCUR_READ_ONLY
public static final int CONCUR_READ_ONLY
JDBC 2.0 The concurrency mode for a ResultSet object that may NOT be updated.- See Also:
- Constant Field Values
-
CONCUR_UPDATABLE
public static final int CONCUR_UPDATABLE
JDBC 2.0 The concurrency mode for a ResultSet object that may be updated.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ScrollableCursorPolicy
public ScrollableCursorPolicy()
PUBLIC: Create a new scrollable cursor policy.
-
ScrollableCursorPolicy
public ScrollableCursorPolicy(ReadQuery query, int pageSize)
INTERNAL: Create a cursor policy with the pagesize.
-
-
Method Detail
-
execute
public java.lang.Object execute()
INTERNAL: Execute the cursored select and build the stream.- Specified by:
execute
in classCursorPolicy
-
getResultSetConcurrency
public int getResultSetConcurrency()
PUBLIC: The ResultSetConcurrency specifies if the resultset is updatable. It is one of, CONCUR_READ_ONLY, CONCUR_UPDATABLE
-
getResultSetType
public int getResultSetType()
PUBLIC: The ResultSetType specifies if the resultset is sensitive to changes made by others. It is one of, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE
-
isScrollableCursorPolicy
public boolean isScrollableCursorPolicy()
- Overrides:
isScrollableCursorPolicy
in classorg.eclipse.persistence.internal.queries.ContainerPolicy
-
remoteExecute
public java.lang.Object remoteExecute()
INTERNAL: Execute the cursored select and build the stream.- Specified by:
remoteExecute
in classCursorPolicy
-
setResultSetConcurrency
public void setResultSetConcurrency(int resultSetConcurrency)
PUBLIC: The ResultSetConcurrency specifies if the resultset is updatable. It is one of, CONCUR_READ_ONLY, CONCUR_UPDATABLE
-
setResultSetType
public void setResultSetType(int resultSetType)
PUBLIC: The ResultSetType specifies if the resultset is sensitive to changes made by others. It is one of, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE
-
-