org.eclipse.persistence.queries
Class ScrollableCursor

java.lang.Object
  extended by org.eclipse.persistence.queries.Cursor
      extended by org.eclipse.persistence.queries.ScrollableCursor
All Implemented Interfaces:
Serializable, Enumeration, Iterator, ListIterator

public class ScrollableCursor
extends Cursor
implements ListIterator

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.eclipse.persistence.queries.Cursor
policy, query
 
Constructor Summary
ScrollableCursor()
          INTERNAL: Default constructor.
ScrollableCursor(org.eclipse.persistence.internal.databaseaccess.DatabaseCall call, ScrollableCursorPolicy policy)
          INTERNAL: constructor.
 
Method Summary
 boolean absolute(int rows)
          PUBLIC: Moves the cursor to the given row number in the result set
 void add(Object object)
          PUBLIC: Add is not support for scrollable cursors.
 void afterLast()
          PUBLIC: Moves the cursor to the end of the result set, just after the last row.
 void beforeFirst()
          PUBLIC: Moves the cursor to the front of the result set, just before the first row
 int currentIndex()
          PUBLIC: Retrieves the current row index number
 boolean first()
          PUBLIC: Moves the cursor to the first row in the result set
 int getPosition()
          PUBLIC: Retrieves the current cursor position (current row).
 boolean hasMoreElements()
          PUBLIC: Indicates whether the cursor can move to the the next row
 boolean hasNext()
          PUBLIC: Indicates whether the cursor can move to the the next row
 boolean hasNextElement()
          PUBLIC: Indicates whether the cursor can move to the the next row
 boolean hasPrevious()
          PUBLIC: Indicates whether the cursor can move to the the previous row
 boolean isAfterLast()
          PUBLIC: Indicates whether the cursor is after the last row in the result set.
 boolean isBeforeFirst()
          PUBLIC: Indicates whether the cursor is before the first row in the result set.
 boolean isFirst()
          PUBLIC: Indicates whether the cursor is on the first row of the result set.
 boolean isLast()
          PUBLIC: Indicates whether the cursor is on the last row of the result set.
 boolean last()
          PUBLIC: Moves the cursor to the last row in the result set
 Object next()
          PUBLIC: This method differs slightly from conventional read() operation on a Java stream.
 List<Object> next(int number)
          PUBLIC: This method differs slightly from conventional read() operation on a Java stream.
 Object nextElement()
          PUBLIC: Return the next object from the collection, if beyond the read limit read from the cursor.
 int nextIndex()
          PUBLIC: Retrieves the next row index (against the current row)
 Object previous()
          PUBLIC: Return the previous object from the collection.
 int previousIndex()
          PUBLIC: Retrieves the previous row index (against the current row)
 boolean relative(int rows)
          PUBLIC: Moves the cursor a relative number of rows, either positive or negative.
 void set(Object object)
          PUBLIC: Set is not supported for scrollable cursors.
 
Methods inherited from class org.eclipse.persistence.queries.Cursor
clear, close, getAccessor, getExecutionSession, getFields, getInitiallyConformingIndex, getObjectCollection, getPageSize, getPolicy, getQuery, getResultSet, getSelectionCriteriaClone, getSession, isClosed, remove, setInitiallyConformingIndex, setObjectCollection, setPolicy, setSelectionCriteriaClone, setSession, setSize, setTranslationRow, size
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.ListIterator
remove
 

Constructor Detail

ScrollableCursor

public ScrollableCursor()
INTERNAL: Default constructor.


ScrollableCursor

public ScrollableCursor(org.eclipse.persistence.internal.databaseaccess.DatabaseCall call,
                        ScrollableCursorPolicy policy)
INTERNAL: constructor.

Method Detail

absolute

public boolean absolute(int rows)
                 throws DatabaseException
PUBLIC: Moves the cursor to the given row number in the result set

Throws:
DatabaseException

add

public void add(Object object)
         throws QueryException
PUBLIC: Add is not support for scrollable cursors.

Specified by:
add in interface ListIterator
Throws:
QueryException

afterLast

public void afterLast()
               throws DatabaseException
PUBLIC: Moves the cursor to the end of the result set, just after the last row.

Throws:
DatabaseException

beforeFirst

public void beforeFirst()
                 throws DatabaseException
PUBLIC: Moves the cursor to the front of the result set, just before the first row

Throws:
DatabaseException

currentIndex

public int currentIndex()
                 throws DatabaseException
PUBLIC: Retrieves the current row index number

Throws:
DatabaseException

first

public boolean first()
              throws DatabaseException
PUBLIC: Moves the cursor to the first row in the result set

Throws:
DatabaseException

getPosition

public int getPosition()
                throws DatabaseException
PUBLIC: Retrieves the current cursor position (current row). The first row is number 1, the second number 2, and so on. Unlike java.sql.ResultSet.getRow(), 0 is not returned if afterLast. Instead size() + 1 is returned.

Specified by:
getPosition in class Cursor
Returns:
the current row number; 0 if there is no current row
Throws:
SQLException - if a database access error occurs
DatabaseException

hasMoreElements

public boolean hasMoreElements()
                        throws DatabaseException
PUBLIC: Indicates whether the cursor can move to the the next row

Specified by:
hasMoreElements in interface Enumeration
Throws:
DatabaseException

hasNext

public boolean hasNext()
                throws DatabaseException
PUBLIC: Indicates whether the cursor can move to the the next row

Specified by:
hasNext in interface Iterator
Specified by:
hasNext in interface ListIterator
Throws:
DatabaseException

hasNextElement

public boolean hasNextElement()
                       throws DatabaseException
PUBLIC: Indicates whether the cursor can move to the the next row

Throws:
DatabaseException

hasPrevious

public boolean hasPrevious()
                    throws DatabaseException
PUBLIC: Indicates whether the cursor can move to the the previous row

Specified by:
hasPrevious in interface ListIterator
Throws:
DatabaseException

isAfterLast

public boolean isAfterLast()
                    throws DatabaseException
PUBLIC: Indicates whether the cursor is after the last row in the result set.

Throws:
DatabaseException

isBeforeFirst

public boolean isBeforeFirst()
                      throws DatabaseException
PUBLIC: Indicates whether the cursor is before the first row in the result set.

Throws:
DatabaseException

isFirst

public boolean isFirst()
                throws DatabaseException
PUBLIC: Indicates whether the cursor is on the first row of the result set.

Throws:
DatabaseException

isLast

public boolean isLast()
               throws DatabaseException
PUBLIC: Indicates whether the cursor is on the last row of the result set.

Throws:
DatabaseException

last

public boolean last()
             throws DatabaseException
PUBLIC: Moves the cursor to the last row in the result set

Throws:
DatabaseException

next

public Object next()
            throws DatabaseException,
                   QueryException
PUBLIC: This method differs slightly from conventional read() operation on a Java stream. This method return the next object in the collection rather than specifying the number of bytes to be read in. Return the next object from the collection, if beyond the read limit read from the cursor

Specified by:
next in interface Iterator
Specified by:
next in interface ListIterator
Returns:
- next object in stream
Throws:
- - throws exception if read pass end of stream
DatabaseException
QueryException

next

public List<Object> next(int number)
                  throws DatabaseException
PUBLIC: This method differs slightly from conventional read() operation on a Java stream. This method returns the next number of objects in the collection in a vector. Return the next specified number of objects from the collection, if beyond the read limit read from the cursor

Parameters:
number - - number of objects to be returned
Returns:
- vector containing next number of objects
Throws:
- - throws exception if read pass end of stream
DatabaseException

nextElement

public Object nextElement()
                   throws DatabaseException,
                          QueryException
PUBLIC: Return the next object from the collection, if beyond the read limit read from the cursor.

Specified by:
nextElement in interface Enumeration
Returns:
next object in stream
Throws:
DatabaseException
QueryException

nextIndex

public int nextIndex()
              throws DatabaseException
PUBLIC: Retrieves the next row index (against the current row)

Specified by:
nextIndex in interface ListIterator
Throws:
DatabaseException

previous

public Object previous()
                throws DatabaseException,
                       QueryException
PUBLIC: Return the previous object from the collection.

Specified by:
previous in interface ListIterator
Returns:
- previous object in stream
Throws:
- - throws exception if read pass first of stream
DatabaseException
QueryException

previousIndex

public int previousIndex()
                  throws DatabaseException
PUBLIC: Retrieves the previous row index (against the current row)

Specified by:
previousIndex in interface ListIterator
Throws:
DatabaseException

relative

public boolean relative(int rows)
                 throws DatabaseException
PUBLIC: Moves the cursor a relative number of rows, either positive or negative. Attempting to move beyond the first/last row in the result set positions the cursor before/after the the first/last row

Throws:
DatabaseException

set

public void set(Object object)
         throws QueryException
PUBLIC: Set is not supported for scrollable cursors.

Specified by:
set in interface ListIterator
Throws:
QueryException