Oracle ADF Model and Business Components API Reference 10.1.2 B14022-02


oracle.jbo.common.ws
Class WSRowSetIteratorImpl

java.lang.Object
  extended byjava.util.AbstractMap
      extended byoracle.jbo.common.JboAbstractMap
          extended byoracle.jbo.common.ws.WSObject
              extended byoracle.jbo.common.ws.WSAMComponent
                  extended byoracle.jbo.common.ws.WSRowSetIteratorBase
                      extended byoracle.jbo.common.ws.WSRowSetIteratorImpl

All Implemented Interfaces:
java.util.Map, NavigatableRowIterator, RowIterator, RowSetIterator, java.io.Serializable

public class WSRowSetIteratorImpl
extends WSRowSetIteratorBase
implements RowSetIterator, java.io.Serializable
See Also:
Serialized Form

Nested Class Summary

Nested classes inherited from class java.util.Map
java.util.Map.Entry

Field Summary

Fields inherited from class oracle.jbo.common.ws.WSRowSetIteratorBase
mListeners, mMgmtListeners, mName

Fields inherited from interface oracle.jbo.RowIterator
ITER_MODE_LAST_PAGE_FULL, ITER_MODE_LAST_PAGE_PARTIAL, SLOT_BEFORE_FIRST, SLOT_BEYOND_LAST, SLOT_DELETED, SLOT_VALID

Method Summary
void closeRowSetIterator()
Closes this row set iterator.
RowSet createDetailRowSet(java.lang.String rsName, java.lang.String linkDefName)
Creates a detail Row Set.
ApplicationModule getApplicationModule()
RowSet[] getDetailRowSets()
Gets an array of detail Row Sets for which this Iterator is the master.
java.lang.Object getImplObject()
int getIterMode()
Gets the current iteration mode.
WSObject getParent()
int getRangeSize()
Gets the size of the Row Set Iterator range.
int getRangeStart()
Gets the absolute row index of the first row in the Row Set Iterator range.
RowSet getRowSet()
Gets the Row Set that this Iterator belongs to.
RowSetIterator getRowSetIteratorImpl()
java.lang.Object getSyncLock()
Gets the locking object for this Row Set Iterator.
boolean isOnLine()
boolean isRowValidation()
Gets the validation flag on this iterator.
boolean isSyncIteratorState()
void markForError(java.lang.Exception ex, boolean hasImplObject)
int scrollRange(int amount)
Moves the Row Set Iterator range up or down a given number of rows.
int scrollRangeTo(Row row, int index)
Scrolls the range to place a given row at a given range index.
void setImplObject(java.lang.Object o)
void setIterMode(int mode)
Sets the iteration mode for this Row Iterator.
int setRangeSize(int size)
Modifies the size of the Row Set Iterator range.
int setRangeStart(int start)
Moves the Row Set Iterator range.
void setRowValidation(boolean flag)
Sets the validation flag on this iterator.

Methods inherited from class oracle.jbo.common.ws.WSRowSetIteratorBase
addListener, addManagementListener, createAndInitRow, createKey, createRow, enumerateRowsInRange, findAndSetCurrentRowByKey, findByEntity, findByKey, first, getAllRowsInRange, getCurrentRow, getCurrentRowIndex, getCurrentRowSlot, getEstimatedRangePageCount, getFetchedRowCount, getFilteredRows, getFilteredRowsInRange, getName, getNextRangeSet, getPreviousRangeSet, getRangeIndexOf, getRow, getRowAtRangeIndex, getRowCount, getRowCountInRange, hasNext, hasPrevious, insertRow, insertRowAtRangeIndex, isConnected, isNameGenerated, isRangeAtBottom, isRangeAtTop, last, next, previous, registerWSListeners, removeCurrentRow, removeCurrentRowAndRetain, removeCurrentRowFromCollection, removeListener, removeManagementListener, reset, scrollToRangePage, setCurrentRow, setCurrentRowAtRangeIndex

Methods inherited from class oracle.jbo.common.ws.WSObject
get, getFullName, getId

Methods inherited from class oracle.jbo.common.JboAbstractMap
entrySet, equals, hashCode, internalGet

Methods inherited from class java.util.AbstractMap
clear, clone, containsKey, containsValue, isEmpty, keySet, put, putAll, remove, size, toString, values

Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait

Methods inherited from interface oracle.jbo.RowSetIterator
addManagementListener, getEstimatedRangePageCount, getFilteredRows, getFilteredRowsInRange, getName, getNextRangeSet, getPreviousRangeSet, isNameGenerated, removeManagementListener, scrollToRangePage

Methods inherited from interface oracle.jbo.NavigatableRowIterator
addListener, removeListener

Methods inherited from interface oracle.jbo.RowIterator
createAndInitRow, createKey, createRow, enumerateRowsInRange, findByEntity, findByKey, first, getAllRowsInRange, getCurrentRow, getCurrentRowIndex, getCurrentRowSlot, getFetchedRowCount, getRangeIndexOf, getRow, getRowAtRangeIndex, getRowCount, getRowCountInRange, hasNext, hasPrevious, insertRow, insertRowAtRangeIndex, isRangeAtBottom, isRangeAtTop, last, next, previous, removeCurrentRow, removeCurrentRowAndRetain, removeCurrentRowFromCollection, reset, setCurrentRow, setCurrentRowAtRangeIndex

Method Detail

isOnLine

public boolean isOnLine()

getParent

public WSObject getParent()
Specified by:
getParent in class WSObject

getRowSetIteratorImpl

public RowSetIterator getRowSetIteratorImpl()

getImplObject

public java.lang.Object getImplObject()
Specified by:
getImplObject in class WSObject

setImplObject

public void setImplObject(java.lang.Object o)
Specified by:
setImplObject in class WSObject

markForError

public void markForError(java.lang.Exception ex,
                         boolean hasImplObject)
Specified by:
markForError in class WSObject

getApplicationModule

public ApplicationModule getApplicationModule()

isSyncIteratorState

public boolean isSyncIteratorState()

getRowSet

public RowSet getRowSet()
Description copied from interface: RowSetIterator
Gets the Row Set that this Iterator belongs to.
Specified by:
getRowSet in interface RowSetIterator
Specified by:
getRowSet in class WSRowSetIteratorBase

getDetailRowSets

public RowSet[] getDetailRowSets()
Description copied from interface: RowSetIterator
Gets an array of detail Row Sets for which this Iterator is the master.

In a master-detail relationship in an Application Module, the master in reality is a Row Set Iterator. (Though we often speak of master View Object, in reality, it is the Iterator behind the View Object which is playing the role of the master). Whenever the currency of this master Iterator moves, the detail Row Sets are re-executed to show related Rows.

Calling this method returns an array of Row Sets that are related to this Iterator as detail Row Sets.

Specified by:
getDetailRowSets in interface RowSetIterator
Specified by:
getDetailRowSets in class WSRowSetIteratorBase

createDetailRowSet

public RowSet createDetailRowSet(java.lang.String rsName,
                                 java.lang.String linkDefName)
Description copied from interface: RowSetIterator
Creates a detail Row Set. See RowSetIterator.getDetailRowSets() for explanation of detail Row Sets.

This method creates a new detail Row Set for this Iterator.

Specified by:
createDetailRowSet in interface RowSetIterator
Specified by:
createDetailRowSet in class WSRowSetIteratorBase

closeRowSetIterator

public void closeRowSetIterator()
Description copied from interface: RowSetIterator
Closes this row set iterator. If this row set iterator is a master in a master-detail relationship, closeRowSetIterator closes all detail row sets.

After that, it fires a RowSetManagementListener.iteratorClosed() event to its RowSetManagementListener's.

Then, it deregisters this row set iterator from the owning row set, and deregisters all its listeners.

Specified by:
closeRowSetIterator in interface RowSetIterator
Specified by:
closeRowSetIterator in class WSRowSetIteratorBase

getSyncLock

public java.lang.Object getSyncLock()
Description copied from interface: RowSetIterator
Gets the locking object for this Row Set Iterator. Actually, this method locks the Application Module to which this Row Set Iterator belongs. See ApplicationModule.getSyncLock() for details.
Specified by:
getSyncLock in interface RowSetIterator
Specified by:
getSyncLock in class WSRowSetIteratorBase

setRangeSize

public int setRangeSize(int size)
Description copied from interface: RowIterator
Modifies the size of the Row Set Iterator range.

This method takes effect when the next set of data is fetched. For an example usage of setRangeSize, see setRangeStart.

Specified by:
setRangeSize in interface RowIterator
Specified by:
setRangeSize in class WSRowSetIteratorBase

getRangeSize

public int getRangeSize()
Description copied from interface: RowIterator
Gets the size of the Row Set Iterator range.
Specified by:
getRangeSize in interface RowIterator
Specified by:
getRangeSize in class WSRowSetIteratorBase

getRangeStart

public int getRangeStart()
Description copied from interface: RowIterator
Gets the absolute row index of the first row in the Row Set Iterator range.

The absolute index is 0-based, and is the row's index relative to the entire result set.

Specified by:
getRangeStart in interface RowIterator
Specified by:
getRangeStart in class WSRowSetIteratorBase

setRangeStart

public int setRangeStart(int start)
Description copied from interface: RowIterator
Moves the Row Set Iterator range.

Note that the index is 0-based. When you call setRangeStart(1), the range start will be positioned at the second table row.

Another behavior of setRangeStart (and also setRangeSize) is that it tries to position the range, so as to fill up the range as much as possible. For example, assume you have View Object vo focused on a table with four rows (A, B, C, D), and you execute the following code:

     vo.setRangeStart(4);
     vo.setRangeSize(3);
     Row[] rows = vo.getAllRowsInRange();
 

In this case, rows contains the last 3 rows (B, C, D). When you call setRangeStart(4), it will try to position you at row 4. Since the index is 0-based, it finds that there is no row. Since the default range size is 1, it will position you to the last row (row index 3).

Then, when you call getRangeSize(3), it tries to fill up the range from the bottom. This is why you get (B, C, D).

Specified by:
setRangeStart in interface RowIterator
Specified by:
setRangeStart in class WSRowSetIteratorBase

scrollRange

public int scrollRange(int amount)
Description copied from interface: RowIterator
Moves the Row Set Iterator range up or down a given number of rows.
Specified by:
scrollRange in interface RowIterator
Specified by:
scrollRange in class WSRowSetIteratorBase

scrollRangeTo

public int scrollRangeTo(Row row,
                         int index)
Description copied from interface: RowIterator
Scrolls the range to place a given row at a given range index.
Specified by:
scrollRangeTo in interface RowIterator
Specified by:
scrollRangeTo in class WSRowSetIteratorBase

setRowValidation

public void setRowValidation(boolean flag)
Description copied from interface: RowIterator
Sets the validation flag on this iterator. By default a RowIterator validates the current row when navigating to another row. This method can be used to turn this row-validation off by passing 'false' as parameter.
Specified by:
setRowValidation in interface RowIterator
Specified by:
setRowValidation in class WSRowSetIteratorBase

isRowValidation

public boolean isRowValidation()
Description copied from interface: RowIterator
Gets the validation flag on this iterator. By default a RowIterator validates the current row when navigating to another row. This method returns TRUE if this row-validation is turned off.
Specified by:
isRowValidation in interface RowIterator
Specified by:
isRowValidation in class WSRowSetIteratorBase

getIterMode

public int getIterMode()
Description copied from interface: RowIterator
Gets the current iteration mode. See Iteration Modes above for details on iteration mode which controls how the range behaves when it reaches the end of the Row Set.
Specified by:
getIterMode in interface RowIterator
Specified by:
getIterMode in class WSRowSetIteratorBase

setIterMode

public void setIterMode(int mode)
Description copied from interface: RowIterator
Sets the iteration mode for this Row Iterator. See Iteration Modes above for details on iteration mode which controls how the range behaves when it reaches the end of the Row Set.
Specified by:
setIterMode in interface RowIterator
Specified by:
setIterMode in class WSRowSetIteratorBase

Oracle ADF Model and Business Components API Reference 10.1.2 B14022-02


Copyright © 1997, 2005, Oracle. All rights reserved.