|
Oracle ADF Model and Business Components API Reference 10.1.2 B14022-01 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object oracle.jbo.common.PropertiesHelper oracle.jbo.common.RowSetHelper oracle.jbo.common.RowSetIteratorHelper oracle.jbo.server.ViewRowSetIteratorImpl
The middle-tier class that enables the user to iterate through row sets.
A view row set iterator blongs to a view row set. In the view row
set a row's position is identified by its row index.
A range is a window through which a portion of the view row set is visible.
A row has an absolute index, relative to the first row in the entire view row set,
and rows within the range have a range index, relative to the first row in the range.
One of the rows, in the range or not, may be designated as the current row.
Other objects that have interest in changes to a view row set's data, current
row designation, and range may be registered as listeners by calling
addListener()
. Listeners must implement the
RowSetListener
interface. When a view row
set iterator is created, it registers with its containing
view row set. Later, when an entity row is updated, the View
Object propagates it to its view row sets, which propagate the event to its listeners,
including its iterator, which converts it to a view row event, and sends it
to its own listeners.
ViewObject
,
RowSet
,
RowSetIterator
,
RowSetListener
,
ViewRowSetIteratorImpl
Field Summary | |
protected ViewRowSetImpl |
mViewRowSet
|
protected int |
mViewSize
|
Fields inherited from class oracle.jbo.common.RowSetIteratorHelper |
mCurrentRow |
Fields inherited from class oracle.jbo.common.RowSetHelper |
listeners, mMgmtListeners, mName |
Fields inherited from class oracle.jbo.common.PropertiesHelper |
mProperties |
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 |
Constructor Summary | |
ViewRowSetIteratorImpl(ViewRowSetImpl rowset)
Constructs a new secondary (non-default) view row set iterator. |
|
ViewRowSetIteratorImpl(ViewRowSetImpl rowset,
java.lang.String name,
boolean isDefaultRSI)
Constructs a new view row set iterator. |
Method Summary | |
void |
activateIteratorState(Element node,
boolean clearIteratorState)
|
protected void |
addDetailViewRowSet(RowSet detailRowSet)
##INTERNAL## |
void |
addListener(java.lang.Object listener)
Adds an event listener to this object. |
void |
closeRowSetIterator()
Closes this row set iterator. |
Row |
createAndInitRow(AttributeList initVals)
Creates and initializes a new Row object, but does not insert it into the Row Set. |
RowSet |
createDetailRowSet(java.lang.String rsName,
java.lang.String linkDefName)
Creates a detail Row Set. |
Key |
createKey(AttributeList nvp)
Given a list of name-value pairs, creates a Key object that matches the key structure for the ViewObject for this RowItertor. |
Row |
createRow()
Creates a new view row. |
void |
doInsertRow(Row row,
boolean navigateToRow)
INTERNAL: Applications should not use this method. |
java.util.Enumeration |
enumerateRowsInRange()
Creates and returns an enumerator of the rows in the range. |
void |
findAndSetCurrentRowByKey(Key key,
int rangeIndex)
|
Row[] |
findByEntity(int eRowHandle,
int maxNumOfRows)
Finds and returns View rows that use the Entity row, identified by the Entity row handle, eRowHandle . |
Row[] |
findByKey(Key key,
int maxNumOfRows)
Finds and returns view rows that match the specified key. |
Row[] |
findByKey(Key key,
int maxNumOfRows,
boolean skipWhere)
|
static RowSetIterator |
findRSIForEntity(RowSetIterator[] rsis,
Row eRow)
|
void |
fireRowUpdated(int rowIndex,
Row row,
int[] attrIndices)
Fires the row updated event to its listeners. |
Row |
first()
Navigates to the first row in the row set. |
Row[] |
getAllRowsInRange()
Returns an array of all rows in the iterator's range. |
Row[] |
getAllRowsInRangeInternal(boolean shouldEnsureRefreshed)
|
SvcMsgIteratorState |
getCliIteratorState()
|
Row |
getCurrentRow()
Returns the current row of the iterator. |
int |
getCurrentRowIndex()
Returns the absolute row index of the current row in the row set. |
int |
getCurrentRowSlot()
Returns the current row slot status. |
RowSet[] |
getDetailRowSets()
Gets an array of detail Row Sets for which this Iterator is the master. |
int |
getEstimatedRangePageCount()
Returns getEstimatedRowCount()/rangePageSize, if rangeSize > 0. |
int |
getFetchedRowCount()
Returns the number of rows fetched from the JDBC RestultSet . |
Row[] |
getFilteredRows(RowQualifier qualifier)
|
Row[] |
getFilteredRows(java.lang.String attrName,
java.lang.Object attrValue)
Returns all rows in this collection whose attribute value matches the value being passed in attrValue . |
Row[] |
getFilteredRowsInRange(RowQualifier qualifier)
|
Row[] |
getFilteredRowsInRange(java.lang.String attrName,
java.lang.Object attrValue)
Returns all rows in this range whose attribute value matches the value being passed in attrValue . |
int |
getIterMode()
Gets the current iteration mode. |
Row[] |
getNextRangeSet()
Gets the next set of rows in the range. |
Row[] |
getNextRangeSetWithAdjustment(int rangeAdjust)
|
Row[] |
getPreviousRangeSet()
Gets the previous set of rows in the range. |
java.util.Hashtable |
getProperties()
Retrieves all properties. |
int |
getRangeIndexOf(Row row)
Returns the range index of the row specified by row . |
int |
getRangeSize()
Returns the range size of the iterator. |
int |
getRangeStart()
Returns the absolute row index of the first row in the range. |
Row |
getRow(Key key)
Returns the first row whose key matches key . |
Row |
getRowAtRangeIndex(int index)
Returns the row at range index index . |
Row |
getRowAtRangeIndexInternal(int index)
Internal: Applications should not use this method. |
int |
getRowCount()
Returns the total number of rows in this row set. |
int |
getRowCountInRange()
Returns the actual number of rows in the range. |
java.lang.Object[] |
getRowFilterValues()
|
Row |
getRowFromHandle(java.lang.Object rowHandle)
Internal: Applications should not use this method. |
RowSet |
getRowSet()
Returns this row set iterator's row set (interface). |
ViewRowSetImpl |
getRowSetImpl()
Returns this row set iterator's row set (implementation class). |
RowSetIterator |
getRowSetIterator()
Returns the row set iterator interface of this object. |
java.lang.Object |
getSyncLock()
Gets the locking object for this Row Set Iterator. |
ViewObject |
getViewObject()
Returns this row set iterator's view object. |
boolean |
hasNext()
Indicates whether the iterator has a next row or not. |
boolean |
hasPrevious()
Indicates whether the iterator has a previous row or not. |
void |
insertRow(Row row)
Inserts the row into the row set. |
void |
insertRowAtRangeIndex(int index,
Row row)
Inserts the row into the row set at the specified range index. |
boolean |
isDefaultRSI()
Internal: Applications should not use this method. |
boolean |
isNameGenerated()
Tests if the Iterator's name was generated by the system. |
boolean |
isRangeAtBottom()
Indicates whether the iterator range contains the last row of the row set. |
boolean |
isRangeAtTop()
Indicates whether the iterator range contains the first row of the row set. |
boolean |
isRefreshed()
INTERNAL: Applications should not use this method. |
boolean |
isRowValidation()
Gets the validation flag on this iterator. |
Row |
last()
Navigates to the last row in the row set. |
Row |
next()
Navigates to the next row in the row set. |
int |
nextIndex()
Returns the absolute row index of the next row. |
void |
prepareForBatchMode(SvcMsgIteratorState iteratorState,
boolean setCurrentRow)
Internal: Applications should not use this method. |
void |
prepareRangeForBatchMode(boolean isExecuted,
int currentRowIndex,
int rangeStart,
int rangeSize,
boolean setCurrentRow)
|
Row |
previous()
Navigates to the previous row in the row set. |
int |
previousIndex()
Returns the absolute row index of the previous row. |
protected void |
refresh(boolean resetIter,
boolean fillUpRange)
|
void |
removeCurrentRow()
Removes the current row. |
Row |
removeCurrentRowAndRetain()
Removes the current Row object from the collection and retain it for insertion into another location. |
void |
removeCurrentRowFromCollection()
Removes the current Row object from the collection. |
protected void |
removeDetailViewRowSet(RowSet detailRowSet)
##INTERNAL## |
void |
removeRowAtRangeIndex(int index)
Removes a view row at range index index . |
void |
removeRowHandle(java.lang.Object rowHandle)
Internal: Applications should not use this method. |
void |
reset()
Resets the iterator. |
int |
scrollRange(int rows)
Scrolls the range by amount . |
int |
scrollRangeTo(Row row,
int index)
Scrolls the range to a specific row. |
int |
scrollToRangePage(int pageIndex)
Moves the row set range start to the given page index where every page consists of RangeSize number of rows. |
boolean |
setCurrentRow(Row row)
Indicates whether the cursor has been successfully moved to the row specified by row . |
boolean |
setCurrentRowAtRangeIndex(int index)
Moves the iterator to the row whose range index is index . |
void |
setIterMode(int mode)
Sets the iteration mode for this Row Iterator. |
int |
setRangeSize(int newSize)
Sets the range size for the iterator. |
int |
setRangeStart(int start)
Sets the range position by the absolute row index specified in start . |
void |
setRowFilterValues(java.lang.Object[] rowFilterValues)
Internal: Applications should not use this method. |
void |
setRowValidation(boolean flag)
Sets the validation flag on this iterator. |
Methods inherited from class oracle.jbo.common.RowSetIteratorHelper |
createKey, getFilteredRows, getFilteredRowsInRange |
Methods inherited from class oracle.jbo.common.RowSetHelper |
addManagementListener, fireMgmtIteratorClosed, fireMgmtIteratorReset, fireNavigationEvent, fireRangeRefreshed, fireRangeScrolled, fireRowDeleted, fireRowInserted, fireRowUpdated, getListeners, getListenersList, getManagementListenersList, getName, hasListeners, hasManagementListeners, removeListener, removeManagementListener, setName |
Methods inherited from class oracle.jbo.common.PropertiesHelper |
getProperty, refreshProperty, setProperty |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface oracle.jbo.RowSetIterator |
addManagementListener, getName, removeManagementListener |
Methods inherited from interface oracle.jbo.NavigatableRowIterator |
removeListener |
Field Detail |
protected ViewRowSetImpl mViewRowSet
protected int mViewSize
Constructor Detail |
public ViewRowSetIteratorImpl(ViewRowSetImpl rowset)
rowset
- the row set to which this iterator belongs.public ViewRowSetIteratorImpl(ViewRowSetImpl rowset, java.lang.String name, boolean isDefaultRSI)
name
- the view row set iterator name.isDefaultRSI
- flag indicating whether this row set iterator
is the default RSI for result
.Method Detail |
public final java.lang.Object getSyncLock()
RowSetIterator
ApplicationModule.getSyncLock()
for details.
getSyncLock
in interface RowSetIterator
public final boolean isNameGenerated()
RowSetIterator
isNameGenerated
in interface RowSetIterator
true
if the name was generated by the system.
false
if the name was given by the user and
not generated by the system.public ViewObject getViewObject()
ViewObject
this row set iterator belongs to.public ViewRowSetImpl getRowSetImpl()
This method differs from getRowSet
in that the
latter returns the RowSet
interface, while this
method returns the implementation class (ViewRowSetImpl
).
ViewRowSetImpl
this row set iterator
belongs to.public RowSet getRowSet()
This method differs from getRowSetImpl
in that the
latter returns the implementation class (ViewRowSetImpl
),
while this method returns the RowSet
interface.
getRowSet
in interface RowSetIterator
RowSet
this row set iterator
belongs to.public boolean isDefaultRSI()
Indicates whether this row set iterator is the default RSI for the row set.
public RowSetIterator getRowSetIterator()
public void closeRowSetIterator()
RowSetIterator
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.
closeRowSetIterator
in interface RowSetIterator
public SvcMsgIteratorState getCliIteratorState()
getCliIteratorState
in interface WSRowSetIteratorMarshaller
public java.lang.Object[] getRowFilterValues()
getRowFilterValues
in interface WSRowSetIteratorMarshaller
public void prepareForBatchMode(SvcMsgIteratorState iteratorState, boolean setCurrentRow)
prepareForBatchMode
in interface WSRowSetIteratorMarshaller
public void prepareRangeForBatchMode(boolean isExecuted, int currentRowIndex, int rangeStart, int rangeSize, boolean setCurrentRow)
public void setRowFilterValues(java.lang.Object[] rowFilterValues)
setRowFilterValues
in interface WSRowSetIteratorMarshaller
public int setRangeSize(int newSize)
See ViewObjectImpl.setRangeSize
for details.
setRangeSize
in interface RowIterator
newSize
- the new range size.
ViewObjectImpl.setRangeSize(int)
public int getRangeSize()
See ViewObjectImpl.getRangeSize
for details.
getRangeSize
in interface RowIterator
ViewObjectImpl.getRangeSize()
public int getFetchedRowCount()
RestultSet
.
getFetchedRowCount
in interface RowIterator
public int getRowCount()
See ViewObjectImpl.getRowCount
for details.
getRowCount
in interface RowIterator
ViewObjectImpl.getRowCount()
public int getRowCountInRange()
See ViewObjectImpl.getRowCountInRange
for details.
getRowCountInRange
in interface RowIterator
ViewObjectImpl.getRowCountInRange()
public Row getRowAtRangeIndex(int index)
index
.
Range index is a 0 based index within the range.
getRowAtRangeIndex
in interface RowIterator
index
- range index of the row.
null
if the index is outside the range, or if there is no
row at the specified index.public Row getRowAtRangeIndexInternal(int index)
Returns the row at range index index
.
index
- range index of the row.
null
if the index is outside the range, or if there is no
row at the specified index.public Row getRow(Key key)
key
.
See ViewObjectImpl.getRow
for details.
getRow
in interface RowIterator
key
- key to match.
null
if no match.ViewObjectImpl.getRow(Key)
public Row getRowFromHandle(java.lang.Object rowHandle)
Returns the row with a handle specified by hdl
.
See ViewObjectImpl.getRowFromHandle
for details.
rowHandle
- the row handle.
ViewObjectImpl.getRowFromHandle(Object)
public void removeRowHandle(java.lang.Object rowHandle)
Removes the row handle from the row handle hash table.
See ViewObjectImpl.removeRowHandle
for details.
rowHandle
- the row handle to remove.ViewObjectImpl.removeRowHandle(Object)
public Key createKey(AttributeList nvp)
RowIterator
createKey
in interface RowIterator
public Row[] findByKey(Key key, int maxNumOfRows)
See ViewObjectImpl.findByKey
for details.
findByKey
in interface RowIterator
key
- the key to match.maxNumOfRows
- the maximum size of the array to return,
or -1 to return all rows.
ViewObjectImpl.findByKey(Key, int)
public void findAndSetCurrentRowByKey(Key key, int rangeIndex)
findAndSetCurrentRowByKey
in interface WSRowSetIteratorMarshaller
public Row[] findByKey(Key key, int maxNumOfRows, boolean skipWhere)
public Row getCurrentRow()
See ViewObjectImpl.getCurrentRow
for details.
getCurrentRow
in interface RowIterator
null
if no current row.ViewObjectImpl.getCurrentRow()
public int getCurrentRowSlot()
See ViewObjectImpl.getCurrentRowSlot
for details.
getCurrentRowSlot
in interface RowIterator
ViewObjectImpl.getCurrentRowSlot()
public int getIterMode()
RowIterator
getIterMode
in interface RowIterator
public void setIterMode(int mode)
RowIterator
setIterMode
in interface RowIterator
mode
- should be ITER_MODE_LAST_PAGE_PARTIAL if the iteration mode is
to be "partial-last-page", ITER_MODE_LAST_PAGE_FULL if it
is to be "full-last-page".public void setRowValidation(boolean flag)
RowIterator
setRowValidation
in interface RowIterator
flag
- Whether to turn row validation off or not.public boolean isRowValidation()
RowIterator
isRowValidation
in interface RowIterator
public boolean setCurrentRow(Row row)
row
.
See ViewObjectImpl.setCurrentRow
for details.
setCurrentRow
in interface RowIterator
row
- the row to which the cursor should be moved.
ViewObjectImpl.setCurrentRow(Row)
public boolean setCurrentRowAtRangeIndex(int index)
index
.
See ViewObjectImpl.setCurrentRowAtRangeIndex
for details.
setCurrentRowAtRangeIndex
in interface RowIterator
index
- range index to which to move the current row.
ViewObjectImpl.setCurrentRowAtRangeIndex(int)
public int getCurrentRowIndex()
See ViewObjectImpl.getCurrentRowIndex
for details.
getCurrentRowIndex
in interface RowIterator
reset
.ViewObjectImpl.getCurrentRowIndex()
public int getRangeIndexOf(Row row)
row
.
See ViewObjectImpl.getRangeIndexOf
for details.
getRangeIndexOf
in interface RowIterator
row
- the row in question.
ViewObjectImpl.getRangeIndexOf(Row)
public int getEstimatedRangePageCount()
RowSetIterator
This number may fluxuate when the View Object is syncronized with its Entity Object.
getEstimatedRangePageCount
in interface RowSetIterator
public int scrollToRangePage(int pageIndex)
RowSetIterator
(rangeSize * (pageSize-1)) - getRangeStart();
scrollToRangePage
in interface RowSetIterator
pageIndex
- the page number to go to in the result set.
public int scrollRange(int rows)
amount
.
See ViewObjectImpl.scrollRange
for details.
scrollRange
in interface RowIterator
rows
- the number of rows to scroll.
ViewObjectImpl.scrollRange(int)
public int scrollRangeTo(Row row, int index)
See ViewObjectImpl.scrollRangeTo
for details.
scrollRangeTo
in interface RowIterator
row
- the row to scroll the range to.index
- the range index to position the row at.
ViewObjectImpl.scrollRangeTo(Row, int)
public void reset()
See ViewObjectImpl.reset
for details.
reset
in interface RowIterator
ViewObjectImpl.reset()
public Row first()
See ViewObjectImpl.first
for details.
first
in interface RowIterator
null
if the row set has no rows.ViewObjectImpl.first()
public Row last()
See ViewObjectImpl.last
for details.
last
in interface RowIterator
null
if the row set has no rows.ViewObjectImpl.last()
public Row next()
See ViewObjectImpl.next
for details.
next
in interface RowIterator
null
if no next row. If
no next row, the current row is not moved.ViewObjectImpl.next()
public Row previous()
See ViewObjectImpl.previous
for details.
previous
in interface RowIterator
null
if no previous row. If
no previous row, the current row is not moved.ViewObjectImpl.previous()
public boolean hasNext()
See ViewObjectImpl.hasNext
for details.
hasNext
in interface RowIterator
true
if there is a next row,
false
if not.ViewObjectImpl.hasNext()
public boolean hasPrevious()
See ViewObjectImpl.hasPrevious
for details.
hasPrevious
in interface RowIterator
true
if there is a previous row,
false
if not.ViewObjectImpl.hasPrevious()
public boolean isRangeAtBottom()
See ViewObjectImpl.isRangeAtBottom
for details.
isRangeAtBottom
in interface RowIterator
true
if the range contains the last row,
false
if not.ViewObjectImpl.isRangeAtBottom()
public boolean isRangeAtTop()
See ViewObjectImpl.isRangeAtTop
for details.
isRangeAtTop
in interface RowIterator
true
if the range contains the first row,
false
if not.ViewObjectImpl.isRangeAtTop()
public int nextIndex()
public int previousIndex()
public Row[] getAllRowsInRangeInternal(boolean shouldEnsureRefreshed)
public Row[] getAllRowsInRange()
See ViewObjectImpl.getAllRowsInRange
for details.
getAllRowsInRange
in interface RowIterator
ViewObjectImpl.getAllRowsInRange()
public Row[] getNextRangeSet()
RowSetIterator
getNextRangeSet()
will return rows 10 through 19.
If the next range set does not have enough rows to fill up the range,
getNextRangeSet()
returns a partially filled range.
That is, this method operates as if the iteration mode is
.
RowIterator.ITER_MODE_LAST_PAGE_PARTIAL
If there is no more rows, this method returns an empty array (an array of length 0).
While obtaining the next range set, the range will be scrolled.
This causes a
to be sent to #oracle.jbo.ScrollEvent
.
To pick up such an event, the listener object must implement the
#oracle.jbo.RowSetListener.rangeScrolled(oracle.jbo.ScrollEvent)
interface. Further, this listener
must be registered through a call to
#oracle.jbo.RowSetListener
(the listener object passed in as the parameter to
#oracle.jbo.NavigatableRowIterator.addListener(Object)
addListener
).
After the next range set is obtained, the method sets the first
Row of the range as the current row. This may fire a
and sends it to
#oracle.jbo.NavigationEvent
.
#oracle.jbo.RowSetListener.navigated(oracle.jbo.NavigationEvent)
getNextRangeSet
in interface RowSetIterator
public Row[] getNextRangeSetWithAdjustment(int rangeAdjust)
public Row[] getPreviousRangeSet()
RowSetIterator
getPreviousRangeSet()
will return rows 0 through 9.
If there is no more rows, this method returns an empty array (an array of length 0).
While obtaining the previous range set, the range will be scrolled.
This causes a
to be sent to #oracle.jbo.ScrollEvent
.
To pick up such an event, the listener object must implement the
#oracle.jbo.RowSetListener.rangeScrolled(oracle.jbo.ScrollEvent)
interface. Further, this listener
must be registered through a call to
#oracle.jbo.RowSetListener
(the listener object passed in as the parameter to
#oracle.jbo.NavigatableRowIterator.addListener(Object)
addListener
).
After the previous range set is obtained, the method sets the first
Row of the range as the current row. This may fire a
and sends it to
#oracle.jbo.NavigationEvent
.
#oracle.jbo.RowSetListener.navigated(oracle.jbo.NavigationEvent)
getPreviousRangeSet
in interface RowSetIterator
public java.util.Enumeration enumerateRowsInRange()
enumerateRowsInRange
in interface RowIterator
public Row createAndInitRow(AttributeList initVals)
RowIterator
createRow()
mainly
in that this method allows the user to pass in a list of name-value
pairs with which row attributes are initialized.
nvp
is a named value pair. When building an nvp from
scratch, use NameValuePairs
to build a new nvp.
Here is an example:
NameValuePairs nvp = new NameValuePairs(); nvp.setAttribute("EmpTyp", "C"); Row row = voEmp.createAndInitRow(nvp);This method is particularly useful when creating a subclass View Row or Entity Row. You can include polymorphic discriminator attribute values in
nvp
and correct subclass row
object will be created.
When this method is called, underlying entities are created.
After the new entities are created, a new view row is created.
After that ViewRowImpl.create(oracle.jbo.AttributeList)
is called with this nvp
. ViewRowImpl.create(AttributeList)
walks thru the list of entities and calls
EntityImpl.create(AttributeList)
with the same
nvp
for each entity in the view row.
createAndInitRow
in interface RowIterator
initVals
- a list of name-value pairs.
public Row createRow()
See ViewObjectImpl.createRow
for details.
createRow
in interface RowIterator
ViewObjectImpl.createRow()
public void insertRow(Row row)
See ViewObjectImpl.insertRow
for details.
insertRow
in interface RowIterator
row
- the view row to insert.ViewObjectImpl.insertRow(Row)
public void doInsertRow(Row row, boolean navigateToRow)
public void insertRowAtRangeIndex(int index, Row row)
See ViewObjectImpl.insertRowAtRangeIndex
for details.
insertRowAtRangeIndex
in interface RowIterator
index
- the range index into which the row is to be inserted.row
- the view row to insert.ViewObjectImpl.insertRowAtRangeIndex(int, Row)
public void removeCurrentRow()
See ViewObjectImpl.removeCurrentRow
for details.
removeCurrentRow
in interface RowIterator
ViewObjectImpl.removeCurrentRow()
public void removeCurrentRowFromCollection()
RowIterator
It does not cause the row to be deleted from the database table.
It just removes the row from the row collection. However, once the
row is removed, it cannot be used any more. If you want to
remove the current row from collection and insert it elsewhere,
call
, change currency
to the desired location, and then call #removeAndRetain()
with that row.
RowIterator.insertRow(oracle.jbo.Row)
removeCurrentRowFromCollection
in interface RowIterator
public Row removeCurrentRowAndRetain()
RowIterator
It does not cause the row to be deleted from the database table. It just removes the row from the row collection.
This method differs from
in that after the current row is removed from the collection, it can be
inserted back into the collection at another location.
RowIterator.removeCurrentRowFromCollection()
To do so, call
,
and get the returning row. Then, change currency to the desired location,
and call RowIterator.removeCurrentRowAndRetain()
with
that row.
RowIterator.insertRow(oracle.jbo.Row)
removeCurrentRowAndRetain
in interface RowIterator
public void removeRowAtRangeIndex(int index)
index
.
index
- range index of the row to remove.public RowSet createDetailRowSet(java.lang.String rsName, java.lang.String linkDefName)
getDetailRowSets()
for explanation of detail Row Sets.
This method creates a new detail Row Set for this Iterator.
createDetailRowSet
in interface RowSetIterator
rsName
- the name of the new detail Row Set.linkDefName
- the name of a View Link definition.
This View Link chooses the relationship in which
this Iterator is the master and the new Row Set
is the detail. It must be a fully qualified
name (including the package name).
protected void addDetailViewRowSet(RowSet detailRowSet)
Adds the detail row set to the list of detail row sets.
This row set iterator is the master and detailRowSet
is a detail.
detailRowSet
- the detail row set to add.protected void removeDetailViewRowSet(RowSet detailRowSet)
Removes the detail row set from the list of detail row sets.
This row set iterator is the master and detailRowSet
is a detail.
detailRowSet
- the detail row set to remove.public RowSet[] getDetailRowSets()
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.
getDetailRowSets
in interface RowSetIterator
RowSet
.public int getRangeStart()
See ViewObjectImpl.getRangeStart
for details.
getRangeStart
in interface RowIterator
ViewObjectImpl.getRangeStart()
public int setRangeStart(int start)
start
.
See ViewObjectImpl.setRangeStart
for details.
setRangeStart
in interface RowIterator
start
- absolute row index of the row that should
be positioned as the first row of the range.
An absolute row index is a row index in the
entire row set. It starts at 0.
ViewObjectImpl.setRangeStart(int)
public boolean isRefreshed()
protected void refresh(boolean resetIter, boolean fillUpRange)
public java.util.Hashtable getProperties()
getProperties
in interface Properties
getProperties
in class PropertiesHelper
public void addListener(java.lang.Object listener)
listener
should implement the RowSetListener
interface.
addListener
in interface NavigatableRowIterator
addListener
in class RowSetHelper
listener
- the RowSetListener
registering
interest in this object's events.public void fireRowUpdated(int rowIndex, Row row, int[] attrIndices)
public static RowSetIterator findRSIForEntity(RowSetIterator[] rsis, Row eRow)
public Row[] findByEntity(int eRowHandle, int maxNumOfRows)
RowIterator
eRowHandle
.
findByEntity
in interface RowIterator
eRowHandle
- the Entity row handle.maxNumOfRows
- the maximum size of the row array to return,
or -1 to return all rows.
public final void activateIteratorState(Element node, boolean clearIteratorState)
public Row[] getFilteredRows(RowQualifier qualifier)
public Row[] getFilteredRowsInRange(RowQualifier qualifier)
public Row[] getFilteredRows(java.lang.String attrName, java.lang.Object attrValue)
RowSetIterator
attrValue
.
Note that this method does not affect the current RowSetIterator
.
getFilteredRows
in interface RowSetIterator
attrName
- name of the attribute to be used for filtering.attrValue
- attribute value for filtering.
public Row[] getFilteredRowsInRange(java.lang.String attrName, java.lang.Object attrValue)
RowSetIterator
attrValue
.
This method uses getAllRowsInRange()
to retrieve
all rows and then match the rows.
getFilteredRowsInRange
in interface RowSetIterator
attrName
- name of the attribute to be used for filtering.attrValue
- attribute value for filtering.
|
Oracle ADF Model and Business Components API Reference 10.1.2 B14022-01 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright © 1997, 2004, Oracle. All rights reserved.