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

oracle.jbo.uicli.binding
Class JUIteratorBinding

java.lang.Object
  extended byoracle.adf.model.binding.DCIteratorBinding
      extended byoracle.jbo.uicli.binding.JUIteratorBinding
All Implemented Interfaces:
java.util.EventListener, RowNavigationListener, RowSetListener, RowSetManagementListener

public class JUIteratorBinding
extends DCIteratorBinding

JUIteratorBinding is the binding class that interacts with BC4J RowIterator objects to iterate over rows and provide the current row(s) to display to various control bindings. JUIteratorBinding objects are named and uniquely identified by name in a JUFormBinding which acts as a container of iterator bindings. This class handles the events generated from the associated BC4J RowIterator and sends the current Row (rows in range) over to individual control bindings to display current data. This class also manages the findMode data for the associated BC4J iterator and ViewObject.

At runtime, an application can bind an instance of oracle.jbo.NavigatableRowIterator to a JUIteratorBinding object using the bindRowSetIterator method.


Field Summary
 
Fields inherited from class oracle.adf.model.binding.DCIteratorBinding
inExecute, mAM, mCreatedRowRef, mDC, mRangeSize, RANGESIZE_DO_NOT_OVERRIDE, RANGESIZE_UNLIMITED
 
Constructor Summary
protected JUIteratorBinding()
           
  JUIteratorBinding(ApplicationModule am, java.lang.String voName, java.lang.String rsiName)
          When the usage only needs one row at a time, use this constructor to create an iterator binding.
  JUIteratorBinding(ApplicationModule am, java.lang.String voName, java.lang.String rsiName, int rangeSize)
          Use this constructor if a usage needs a specific range size on the associated iterator.
  JUIteratorBinding(BindingContext ctx, java.lang.String dcName, java.lang.String sourceName, java.lang.String rsiName, int rangeSize)
           
  JUIteratorBinding(DCDataControl dataControl, RowSetIterator rsi)
          When an application has a BC4J RowSet it should use this constructor.
protected JUIteratorBinding(JUIteratorBinding iterBinding)
           
  JUIteratorBinding(RowSetIterator rsi)
          Deprecated. since 9.0.5.1 use constructor with DCDataControl instead.
 
Method Summary
protected  void cacheCreatedRow(RowSetIterator rsi, Row row)
          *** For internal framework use only ***
 DCDataControl getApplication()
           
 ApplicationModule getApplicationModule()
          Returns the instance of ApplicationModule in which this iterator binding has an associated iterator.
 JUFormBinding getFormBinding()
           
 void navigated(NavigationEvent event)
          *** For internal framework use only ***
protected  void notifyUpdateEvent(UpdateEvent event)
          called when rowUpdated event is received from the model.
 void rangeScrolled(ScrollEvent event)
          *** For internal framework use only ***
 void rowDeleted(DeleteEvent event)
          *** For internal framework use only ***
 void rowInserted(InsertEvent event)
          *** For internal framework use only ***
 void setFormBinding(JUFormBinding formBnd)
          *** For internal framework use only ***
 void setIteratorBindingDef(DCIteratorBindingDef iterDef)
          Internal: Applications should not use this method. Used in LovButtonBinding to set the def for the Lov Panel's iteratorBinding.
protected  void updateValuesFromRow(Row row)
          Calls updateValueFromRow() on each instance of JUCtrlValueBinding objects associated with this iterator binding object.
protected  void updateValuesFromRows(Row[] rows, Row row, boolean clear)
          Calls updateValuesFromRows() on each instance of JUCtrlRangeBinding object associated with this iterator binding object.
 
Methods inherited from class oracle.adf.model.binding.DCIteratorBinding
addActionBinding, addValueBinding, allowsRefreshControl, applySortCriteria, bindRowSetIterator, createKey, executeQuery, executeQueryIfNeeded, fetchAttributeProperties, getActionBindingList, getAllRowsInRange, getAttributeDefs, getAttributeDefs, getBindingContainer, getCurrentRow, getCurrentRowIndexInRange, getCurrentRowKeyString, getDataControl, getDef, getDisplayName, getError, getEstimatedRowCount, getIteratorDefName, getLovRowSetIterator, getName, getNavigatableRowIterator, getRangeSize, getRangeStart, getRowAtRangeIndex, getRowSetIterator, getSortCriteria, getSourceName, getSyncLock, getValueBindingList, getViewCriteria, getViewDefName, getViewObject, getVOName, hasRSI, initDataControl, initSourceRSI, internalGetNextRangeSet, internalGetPreviousRangeSet, isAccessorIterator, isBound, isFindMode, isFindModeAllowed, isIteratorMadeVisible, isRowSetEventsEnabled, isSortable, isSuspendRowSetEventsHandling, iteratorClosed, iteratorReset, needsEstimatedRowCount, prepareCurrentRow, prepareForInput, processInputException, processInputException, rangeRefreshed, release, release, removeActionBinding, removeCurrentRow, removeValueBinding, reportException, resolveRangeSize, rowUpdated, setAlive, setAllowFindMode, setBindingContainer, setCurrentRowIndexInRange, setCurrentRowWithKey, setCurrentRowWithKeyValue, setDef, setFindMode, setFindMode, setIteratorMadeVisible, setName, setRangeSize, setRangeStart, setRowSetEventsEnabled, suspendRowSetEventsHandling
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JUIteratorBinding

protected JUIteratorBinding()

JUIteratorBinding

protected JUIteratorBinding(JUIteratorBinding iterBinding)

JUIteratorBinding

public JUIteratorBinding(BindingContext ctx,
                         java.lang.String dcName,
                         java.lang.String sourceName,
                         java.lang.String rsiName,
                         int rangeSize)

JUIteratorBinding

public JUIteratorBinding(ApplicationModule am,
                         java.lang.String voName,
                         java.lang.String rsiName,
                         int rangeSize)
Use this constructor if a usage needs a specific range size on the associated iterator. Objects of type JUCtrlRangeBinding may use this constructor to specify a default range size for the iterator.


JUIteratorBinding

public JUIteratorBinding(ApplicationModule am,
                         java.lang.String voName,
                         java.lang.String rsiName)
When the usage only needs one row at a time, use this constructor to create an iterator binding.


JUIteratorBinding

public JUIteratorBinding(RowSetIterator rsi)
Deprecated. since 9.0.5.1 use constructor with DCDataControl instead.

When an application has a BC4J RowSet it should use this constructor.


JUIteratorBinding

public JUIteratorBinding(DCDataControl dataControl,
                         RowSetIterator rsi)
When an application has a BC4J RowSet it should use this constructor.

Method Detail

getApplication

public DCDataControl getApplication()

setFormBinding

public void setFormBinding(JUFormBinding formBnd)
*** For internal framework use only ***


getFormBinding

public JUFormBinding getFormBinding()

rangeScrolled

public void rangeScrolled(ScrollEvent event)
*** For internal framework use only ***

This method invokes updateRangeScrolled method on all instances of JUCtrlRangeBinding objects associated with this iterator binding, to notify them of the change in current range of rows.

Specified by:
rangeScrolled in interface RowSetListener
Overrides:
rangeScrolled in class DCIteratorBinding

rowInserted

public void rowInserted(InsertEvent event)
*** For internal framework use only ***

If range size of this iterator binding is not 1, this method invokes updateRowInserted method on all instances of JUCtrlValueBinding objects associated with this iterator binding, to notify them of the newly inserted row.

Specified by:
rowInserted in interface RowSetListener
Overrides:
rowInserted in class DCIteratorBinding

rowDeleted

public void rowDeleted(DeleteEvent event)
*** For internal framework use only ***

If range size of this iterator binding is not 1, this method invokes updateRowDeleted method on all instances of JUCtrlValueBinding objects associated with this iterator binding, to notify them of the newly inserted row.

This method also sets the currency on the RowIterator to the next row (if available) or previous row (if available) or simply a NO row by calling navigated() with no current row.

Specified by:
rowDeleted in interface RowSetListener
Overrides:
rowDeleted in class DCIteratorBinding

navigated

public void navigated(NavigationEvent event)
*** For internal framework use only ***

Calls updateNavigated() for all JUCtrlRangeBinding instances associated with this iterator binding object, or calls updateValuesFromRow() on all other control binding instances, passing in the current row instance from the RowIterator.

Specified by:
navigated in interface RowSetListener
Overrides:
navigated in class DCIteratorBinding

updateValuesFromRows

protected void updateValuesFromRows(Row[] rows,
                                    Row row,
                                    boolean clear)
Calls updateValuesFromRows() on each instance of JUCtrlRangeBinding object associated with this iterator binding object. These objects are then responsible for updating their display with the latest set of rows.

Specified by:
updateValuesFromRows in class DCIteratorBinding

notifyUpdateEvent

protected void notifyUpdateEvent(UpdateEvent event)
Description copied from class: DCIteratorBinding
called when rowUpdated event is received from the model.

Specified by:
notifyUpdateEvent in class DCIteratorBinding

updateValuesFromRow

protected void updateValuesFromRow(Row row)
Calls updateValueFromRow() on each instance of JUCtrlValueBinding objects associated with this iterator binding object. These control binding objects are responsible for updating their display with values from the given Row.

Specified by:
updateValuesFromRow in class DCIteratorBinding

getApplicationModule

public ApplicationModule getApplicationModule()
Returns the instance of ApplicationModule in which this iterator binding has an associated iterator. Returns null for non-bc4j bound DataControls


setIteratorBindingDef

public void setIteratorBindingDef(DCIteratorBindingDef iterDef)
Internal: Applications should not use this method. Used in LovButtonBinding to set the def for the Lov Panel's iteratorBinding.


cacheCreatedRow

protected void cacheCreatedRow(RowSetIterator rsi,
                               Row row)
*** For internal framework use only ***

Overrides:
cacheCreatedRow in class DCIteratorBinding

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

 

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