Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Oracle Application Development Framework Model Java API Reference 10g Release 3 (10.1.3) B25778-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.adf.model.bc4j
Class DCJboDataControl

`java.lang.Object
java.util.AbstractMap
oracle.jbo.common.JboAbstractMap
oracle.adf.model.binding.DCDataControl
oracle.adf.model.bc4j.DCJboDataControl`

All Implemented Interfaces:
  DataControl, oracle.adf.model.DataControl, DCDataControlManagement, java.util.EventListener, java.util.Map, oracle.jbo.TransactionStateListener

Direct Known Subclasses:
  JUApplication

public class DCJboDataControl
extends DCDataControl
implements oracle.jbo.TransactionStateListener

The application class that manages connection to a BC4J Application Module. The DCDataControl class provides:

- Methods to connect to a BC4J Application Module, if this application is the root DCDataControl object. DCDataControls could be nested in other DCDataControl objects to mirror BC4J Nested Application Modules.
- Handles exceptions raised by the framework and passes it on to registered Error handler. The error handler is same as registered with the BC4J application module (if any).
- Manages form bindings that contain iterator-bindings that bind iterators of the ViewObjects in the associated Application Module.
- If this DCDataControl is the root, manages TransactionStateListeners so that the BC4J Transaction's state events are passed on to the listeners.
- Routes all status bar messages to all status bars registered with this application. Framework uses this class to route all status bar messages.

Version:
  PUBLIC
See Also:
  `ApplicationModule`, `Transaction`, `DCTransactionStateListener`, `DCErrorHandler`

Nested Class Summary

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

Field Summary
`static int` | `EXC_MODE_DEFAULT`
`static int` | `EXC_MODE_DEFERRED`
`static int` | `EXC_MODE_IMMEDIATE`
`static int` | `VAL_MODE_ALWAYS`
`static int` | `VAL_MODE_NEVER`
`static int` | `VAL_MODE_REMOTE`
`static int` | `VAL_MODE_UNINIT`

Fields inherited from class oracle.adf.model.binding.DCDataControl
`ABSTRACT, GET_ApplicationModule, GET_dataProvider, GET_DataProvider, GET_MethodResults, GET_Name, JCLIENT, mBindingContainerList, mDataProvider, mErrorHandler, mErrorHandlerActive, mErrorHandlerThrow, mIsRoot, mLocaleCtx, mName, mParent, mRootApplication, mStatusBarList, mTxnListeners, mUserData, OPER_CTRL_BINDING_VALIDATION, OPER_DATA_ROW_CREATE, OPER_DATA_ROW_REMOVE, OPER_DATA_ROW_UPDATE, OPER_EXECUTE, OPER_FIND_MODE, OPER_SORT_COLLECTION, PNAME_Type, REL_ALL_REFS, REL_DATA_REFS, REL_VIEW_REFS, REL_WEAK_DATA_REFS`

Constructor Summary
`protected` | `DCJboDataControl()` *** For internal framework use only ***
`` | `DCJboDataControl(oracle.jbo.ApplicationModule am)` Constructor used internally by the framework to associate an application module with a JClient application object.
`` | `DCJboDataControl(DCDataControl parent, oracle.jbo.ApplicationModule am, java.lang.Object userData)` Constructor to be used to create a nested DCDataControl inside another DCDataControl object.
`` | `DCJboDataControl(java.util.Hashtable context, java.lang.String rootAMDefName, java.lang.Object userData)` Constructs a root DCDataControl object that connects to a BC4J Application Module of the given name.
`` | `DCJboDataControl(oracle.jbo.common.ampool.SessionCookie sessionCookie)`

Method Summary
`protected void` | `applySortCriteria(DCIteratorBinding iter, oracle.jbo.SortCriteria[] sortBy)` Sets the sort critiera that will be applied next time when the source for this iteratorBinding is executed.
`void` | `applyViewCriteria(ViewCriteria vc, DCIteratorBinding iter, RowSetIterator rsi)` Internal: Applications should not use this method.
`void` | `beginRequest(java.util.HashMap requestCtx)` Invoked in some contexts to signal the beginning of a model request.
`void` | `commitTransaction()` Invokes the BC4J transaction's commit() method to save all changes to the database.
`protected void` | `connect()` *** For internal framework use only *** If this application is root, this method invokes the corresponding BC4J Transaction's connect() method to create a database connection.
`RowSetIterator` | `createAccessorRowSetIterator(RowSetIterator masterRSI, DCIteratorBinding iter, java.lang.String accName, java.lang.String beanClass)` creates a accessor RSI using the current or the first row of the masterRSI and calling the get<accName> method on it to get the RSI dataprovider.
`protected RowSetIterator` | `createAccessorRowSetIterator(RowSetIterator masterRSI, Row row, DCIteratorBinding iter, java.lang.String accName, java.lang.String beanClass, boolean trackMaster)`
`void` | `createRootApplicationModule()` *** Advanced method *** *** For internal framework use only ***
`java.lang.Object` | `createRowData(DCRowContext ctx)` Create a new row for the iterator associated with the given iterator-binding at the given index and return the new row.
`protected RowSetIterator` | `createRowSetIteratorImpl(java.lang.String defName, java.lang.Object sourceObj, RowSetIterator master)` Create a DCRowSetIteratorImpl or a subclass thereof for the give defName element types, using the given source collection/object and optionally the master RSI if there is a dependency defined on the master.
`ViewCriteria` | `createViewCriteria(DCIteratorBinding iter)` Internal: Applications should not use this method. Create a new viewCriteria associated with the given iterator binding's collection.
`void` | `endRequest(java.util.HashMap requestCtx)` Invoked in some contexts to signal the end of a model request.
`protected void` | `executeIteratorBinding(DCIteratorBinding iterBinding)` Implies forced execute of the collection that this iterator binding is bound to.
`protected void` | `executeIteratorBindingIfNeeded(DCIteratorBinding iterBinding)` This method is invoked when a bindingcontainer is 'refreshing' itself before it's data is displayed.
`void` | `executeIteratorBindingWithParams(DCIteratorBinding iter, oracle.adf.model.OperationParameter[] params, java.lang.Object[] paramVals)`
`oracle.jbo.ViewObject` | `findCustomViewObject(java.lang.String name, java.lang.String interfaceName)`
`protected oracle.jbo.Variable` | `findVariable(java.lang.String path)`
`protected java.lang.Object` | `getAccessorValue(RowSetIterator masterRSI, Row row, DCIteratorBinding iter, java.lang.String accName)`
`oracle.jbo.ApplicationModule` | `getApplicationModule()` Returns the associated oracle.jbo.ApplicationModule object
`AttributeDef[]` | `getAttributeDefs(DCIteratorBinding iterBinding, java.lang.String[] attrNames)` Return attribute definition for the given iterator binding and for the given set of attributes from the elements-definition of the mapped collection.
`java.util.Hashtable` | `getContext()` Returns the context object with which the root DCApplication was created.
`java.util.Properties` | `getDBConnectionProps()` *** For internal framework use only ***
`java.lang.String` | `getDBConnectionURL()` *** For internal framework use only ***
`protected long` | `getEstimatedRowCount(DCIteratorBinding iter)` Implement estimated row count logic in this method and return the row count for a collection bound to this iterator.
`LocaleContext` | `getLocaleContext()` Returns the locale for this Application
`java.lang.String` | `getPackageName()` *** For internal framework use only ***
`int` | `getReleaseLevel()`
`java.lang.String` | `getRootAMDefName()` Returns root DCDataControl's ApplicationModule definition name.
`protected RowSetIterator` | `getRowSetIterator(java.lang.String masterName)` Given the name of an RSI, find if it's already created and cached on the datacontrol
`protected oracle.jbo.SortCriteria[]` | `getSortCriteria(DCIteratorBinding iter)` Returns an ordered array of SortCriteria that will be applied when the source for this iteratorBinding is executed.
`int` | `getValidationInBinding()` *** For internal framework use only ***
`ViewCriteria` | `getViewCriteria(DCIteratorBinding iter)` Internal: Applications should not use this method. Return viewCriteria associated with the given iterator binding's collection.
`void` | `initialize()` *** Advanced method *** *** For internal framework use only ***
`protected java.lang.Object` | `internalGet(java.lang.String key)` For EL evaluation.
`protected void` | `internalSetTransactionStateChanged(boolean state)`
`protected java.lang.Object` | `invokeMethod(DCInvokeMethod method, oracle.adf.model.OperationBinding action, java.util.Map paramsMap)` Override this method if a datacontrol wants to implement custom invocation of a method and avoid introspection and invoke method call using reflection.
`protected boolean` | `isBoundRowIteratorEvent(DCIteratorBinding iter, oracle.jbo.JboEvent ev)`
`boolean` | `isClientTier()` Returns true if this data-control's Application module is deployed in three-tier mode
`boolean` | `isOperationSupported(DCIteratorBinding iterBinding, byte oper)` Returns true for find, create, remove operations.
`boolean` | `isTransactionDirty()` Returns true if this transaction has been dirtied by this application.
`void` | `prepareSession()`
`void` | `release(int flags)` Use this method to release connection to an Application Module
`boolean` | `removeRowData(DCRowContext ctx)` This method is to remove the row object (the `obj` parameter) from the underlying data source.
`protected void` | `resetAttributeExceptionInRow(DCIteratorBinding iter, Row row, AttributeDef def, oracle.jbo.AttrValException ave)` Reset any deferred exception in the row for the given attribute, for which the AttrValException was raised.
`boolean` | `resetState()` Resets the DataControl.
`void` | `rollbackTransaction()` Helper method that invokes rollback on the current Transaction.
`void` | `setAttributeInRow(DCIteratorBinding iterBind, Row row, AttributeDef ad, java.lang.Object value)`
`void` | `setBundledExceptionMode(int mode)`
`void` | `setClientApp(byte clientType)` Incase of non-JClient, set the transaction to deferred exception mode by default
`void` | `setConnectionInfo(java.lang.String dbConnectionURL, java.util.Properties dbConnectionProps)` *** For internal framework use only ***
`void` | `setCurrentRowWithKey(DCIteratorBinding iter, Key keyObj)` Use the given key to set the current row in the RowSetIterator for the given iteratorbinding.
`void` | `setCurrentRowWithKey(DCIteratorBinding iter, java.lang.String stringKey)` Converts the serialized stringKey into a Row key object (using collection's key metadata) and then calls findByKey on the RowSetIterator to find the row matching this key.
`void` | `setCurrentRowWithKeyValue(DCIteratorBinding iter, java.lang.String stringValue)` This method works for Collections with only one Key attribute and not for multi-part attribute keys.
`protected void` | `setDataProvider(java.lang.Object provider)`
`void` | `setLocaleContext(LocaleContext locale)` Helper method that sets the locale in the current Application Module's session.
`void` | `setPackageName(java.lang.String packageName)` *** For internal framework use only ***
`void` | `setReleaseLevel(int releaseLevel)`
`void` | `setSessionCookie(oracle.jbo.common.ampool.SessionCookie sessionCookie)`
`void` | `setValidationInBinding(int flag)` *** For internal framework use only ***
`void` | `sync(java.lang.String syncFromDiagnostic)` Incase syncNeeded, then use this event to synchronize data from remote tier in batch.
`void` | `syncIfNeeded(java.lang.String syncFromDiagnostic)` Incase syncNeeded, then use this event to synchronize data from remote tier in batch.
`boolean` | `syncNeeded()` Primarily used in ADFBC which returns true, if it is deployed in batchmode.
`void` | `validate()` Called when datacontrol changes needs to be validated after updates have been processed for a page.

Methods inherited from class oracle.adf.model.binding.DCDataControl
`addBindingContainer, addBindingContainer, addBindingContainer, addBindingContainerRef, addBindingWithExc, addOrCreateBindingContainer, addStatusBarInterface, addTransactionStateListener, cacheMethodResult, callCommitTransaction, cleanup, createAccessorRowSetIterator, createBindingContainer, createBindingContainerInstance, createRowSetIteratorImpl, displayStatus, displayStatus, doneCommit, doneRollback, findBindingContainer, findOrCreateAccessorRowSetIterator, findOrCreateAccessorRowSetIterator, findOrCreateMethodRowSetIterator, findOrCreateRowSetIteratorImpl, focusGained, get, getBindingContext, getCurrentErrorHandler, getDataProvider, getDef, getDefinition, getErrorHandlerActive, getMethodResults, getMethodResultUseCount, getName, getParent, getRootDataControl, getSecurityContext, getSessionContext, getSessionContextManager, getUserData, hasBindingsWithExc, hashCode, hasOperationParamsChanged, hasPermission, hasPermission, hasPermission, initializeBindingContainer, initializeContainerFromDef, initializeFromMetadata, internalGetCurrentRow, internalPut, invokeMethod, invokeOperation, isAttributeSortable, isJClientApp, isRoot, isTransactionModified, rebuildIteratorIfNeeded, registerDataProvider, release, removeBindingContainer, removeBindingWithExc, removeRowDataFromCollection, removeStatusBarInterface, removeTransactionStateListener, reportException, resolveAttributeDefs, setBindingContext, setDef, setErrorHandler, setErrorHandlerActive, setName, setSessionContext, setTransactionModified, toString, transactionStateChanged`

Methods inherited from class oracle.jbo.common.JboAbstractMap
`entrySet, equals, put`

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

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

Methods inherited from interface oracle.jbo.TransactionStateListener
`doneCommit, doneRollback`

Methods inherited from interface java.util.Map
`clear, containsKey, containsValue, entrySet, equals, isEmpty, keySet, put, putAll, remove, size, values`

Field Detail

### VAL_MODE_REMOTE

    public static final int VAL_MODE_REMOTE

  See Also:
    Constant Field Values

### VAL_MODE_ALWAYS

    public static final int VAL_MODE_ALWAYS

  See Also:
    Constant Field Values

### VAL_MODE_NEVER

    public static final int VAL_MODE_NEVER

  See Also:
    Constant Field Values

### VAL_MODE_UNINIT

    public static final int VAL_MODE_UNINIT

  See Also:
    Constant Field Values

### EXC_MODE_DEFAULT

    public static final int EXC_MODE_DEFAULT

  See Also:
    Constant Field Values

### EXC_MODE_DEFERRED

    public static final int EXC_MODE_DEFERRED

  See Also:
    Constant Field Values

### EXC_MODE_IMMEDIATE

    public static final int EXC_MODE_IMMEDIATE

  See Also:
    Constant Field Values

Constructor Detail

### DCJboDataControl

    protected DCJboDataControl()

  *** For internal framework use only ***

### DCJboDataControl

    public DCJboDataControl(java.util.Hashtable context,
                            java.lang.String rootAMDefName,
                            java.lang.Object userData)

  Constructs a root DCDataControl object that connects to a BC4J Application Module of the given name.
Parameters:
  `context` - Context to pass on to the BC4J Application Module on creation.
  `rootAMDefName` - Name that identifies the root BC4J Application Module.
  `userData` - Data to store with the DCDataControl object.

### DCJboDataControl

    public DCJboDataControl(oracle.jbo.ApplicationModule am)

  Constructor used internally by the framework to associate an application module with a JClient application object.

### DCJboDataControl

    public DCJboDataControl(DCDataControl parent,
                            oracle.jbo.ApplicationModule am,
                            java.lang.Object userData)

  Constructor to be used to create a nested DCDataControl inside another DCDataControl object.

### DCJboDataControl

    public DCJboDataControl(oracle.jbo.common.ampool.SessionCookie sessionCookie)

Method Detail

### initialize

    public void initialize()

  *** Advanced method *** *** For internal framework use only ***

  Creates a connection to the BC4J application module.

  Overrides:
    `initialize` in class `DCDataControl`

### createRootApplicationModule

    public final void createRootApplicationModule()

  *** Advanced method *** *** For internal framework use only ***

  If this DCAppication is root, and the root's application module is not created, this method creates a root BC4J Application Module using the root application module def name and the context information (both passed to the constructor of the root DCDataControl).

  Throws:
    `oracle.jbo.ApplicationModuleCreateException` - if the application module is not created, perhaps due to an improper root application module name.
  See Also:
    `ApplicationModule`, `ApplicationModuleHome.create()`

### getContext

    public final java.util.Hashtable getContext()

  Returns the context object with which the root DCApplication was created.

### connect

    protected void connect()

  *** For internal framework use only *** If this application is root, this method invokes the corresponding BC4J Transaction's connect() method to create a database connection. Also this method is used to register the application as a TransactionStateListener on the BC4J Transaction object.
  Overrides:
    `connect` in class `DCDataControl`

### getRootAMDefName

    public final java.lang.String getRootAMDefName()

  Returns root DCDataControl's ApplicationModule definition name.

### getDBConnectionURL

    public final java.lang.String getDBConnectionURL()

  *** For internal framework use only ***

### getDBConnectionProps

    public final java.util.Properties getDBConnectionProps()

  *** For internal framework use only ***

### setConnectionInfo

    public final void setConnectionInfo(java.lang.String dbConnectionURL,
                                        java.util.Properties dbConnectionProps)

  *** For internal framework use only ***

### getPackageName

    public final java.lang.String getPackageName()

  *** For internal framework use only ***

### setPackageName

    public final void setPackageName(java.lang.String packageName)

  *** For internal framework use only ***

### getLocaleContext

    public final LocaleContext getLocaleContext()

  Returns the locale for this Application
  Overrides:
    `getLocaleContext` in class `DCDataControl`

### setLocaleContext

    public final void setLocaleContext(LocaleContext locale)

  Helper method that sets the locale in the current Application Module's session.
  Overrides:
    `setLocaleContext` in class `DCDataControl`

### internalGet

    protected java.lang.Object internalGet(java.lang.String key)

  For EL evaluation. Properties returned vis getter on this control bindings are:
  - `transactionDirty` - returns getApplicationModule().isTransactionDirty()
  -   Overrides:
        `internalGet` in class `DCDataControl`

### getApplicationModule

    public final oracle.jbo.ApplicationModule getApplicationModule()

  Returns the associated oracle.jbo.ApplicationModule object
  Overrides:
    `getApplicationModule` in class `DCDataControl`

### release

    public void release(int flags)

  Use this method to release connection to an Application Module
  Specified by:
    `release` in interface `oracle.adf.model.DataControl`
  Overrides:
    `release` in class `DCDataControl`

### getRowSetIterator

    protected RowSetIterator getRowSetIterator(java.lang.String masterName)

  Description copied from class: `DCDataControl`
  Given the name of an RSI, find if it's already created and cached on the datacontrol
  Specified by:
    `getRowSetIterator` in class `DCDataControl`

### getAccessorValue

    protected java.lang.Object getAccessorValue(RowSetIterator masterRSI,
                                                Row row,
                                                DCIteratorBinding iter,
                                                java.lang.String accName)

  Specified by:
    `getAccessorValue` in class `DCDataControl`

### createAccessorRowSetIterator

    protected RowSetIterator createAccessorRowSetIterator(RowSetIterator masterRSI,
                                                          Row row,
                                                          DCIteratorBinding iter,
                                                          java.lang.String accName,
                                                          java.lang.String beanClass,
                                                          boolean trackMaster)

  Overrides:
    `createAccessorRowSetIterator` in class `DCDataControl`

### createAccessorRowSetIterator

    public RowSetIterator createAccessorRowSetIterator(RowSetIterator masterRSI,
                                                       DCIteratorBinding iter,
                                                       java.lang.String accName,
                                                       java.lang.String beanClass)

  Description copied from class: `DCDataControl`
  creates a accessor RSI using the current or the first row of the masterRSI and calling the get<accName> method on it to get the RSI dataprovider.
  Overrides:
    `createAccessorRowSetIterator` in class `DCDataControl`

### createRowSetIteratorImpl

    protected RowSetIterator createRowSetIteratorImpl(java.lang.String defName,
                                                      java.lang.Object sourceObj,
                                                      RowSetIterator master)

  Description copied from class: `DCDataControl`
  Create a DCRowSetIteratorImpl or a subclass thereof for the give defName element types, using the given source collection/object and optionally the master RSI if there is a dependency defined on the master.
  Specified by:
    `createRowSetIteratorImpl` in class `DCDataControl`

### executeIteratorBinding

    protected void executeIteratorBinding(DCIteratorBinding iterBinding)

  Description copied from class: `DCDataControl`
  Implies forced execute of the collection that this iterator binding is bound to. Incase of database based collections, ideally, this should 're-execute' the database query. This method is invoked via the Execute control binding action.
  Specified by:
    `executeIteratorBinding` in class `DCDataControl`

### executeIteratorBindingIfNeeded

    protected void executeIteratorBindingIfNeeded(DCIteratorBinding iterBinding)

  Description copied from class: `DCDataControl`
  This method is invoked when a bindingcontainer is 'refreshing' itself before it's data is displayed. Only execute the collections bound to this iterator if they're not executed yet. Incase of method-result bound collections, this method may refresh the collection references in the associated RSIs.
  Specified by:
    `executeIteratorBindingIfNeeded` in class `DCDataControl`

### setCurrentRowWithKeyValue

    public void setCurrentRowWithKeyValue(DCIteratorBinding iter,
                                          java.lang.String stringValue)

  Description copied from class: `DCDataControl`
  This method works for Collections with only one Key attribute and not for multi-part attribute keys.

  Converts the stringValue into a Row key (using collection's key metadata) and then calls findByKey on the RowSetIterator to find the row matching this key. If a row is found, that row is set as current.

  Specified by:
    `setCurrentRowWithKeyValue` in class `DCDataControl`

### setCurrentRowWithKey

    public void setCurrentRowWithKey(DCIteratorBinding iter,
                                     java.lang.String stringKey)

  Description copied from class: `DCDataControl`
  Converts the serialized stringKey into a Row key object (using collection's key metadata) and then calls findByKey on the RowSetIterator to find the row matching this key. If a row is found, that row is set as current.
  Specified by:
    `setCurrentRowWithKey` in class `DCDataControl`

### setCurrentRowWithKey

    public void setCurrentRowWithKey(DCIteratorBinding iter,
                                     Key keyObj)

  Description copied from class: `DCDataControl`
  Use the given key to set the current row in the RowSetIterator for the given iteratorbinding.
  Specified by:
    `setCurrentRowWithKey` in class `DCDataControl`

### getEstimatedRowCount

    protected long getEstimatedRowCount(DCIteratorBinding iter)

  Description copied from class: `DCDataControl`
  Implement estimated row count logic in this method and return the row count for a collection bound to this iterator.
  Specified by:
    `getEstimatedRowCount` in class `DCDataControl`

### isTransactionDirty

    public boolean isTransactionDirty()

  Description copied from class: `DCDataControl`
  Returns true if this transaction has been dirtied by this application.
  Specified by:
    `isTransactionDirty` in class `DCDataControl`

### commitTransaction

    public void commitTransaction()

  Description copied from class: `DCDataControl`
  Invokes the BC4J transaction's commit() method to save all changes to the database.
  Overrides:
    `commitTransaction` in class `DCDataControl`

### validate

    public void validate()

  Description copied from class: `DCDataControl`
  Called when datacontrol changes needs to be validated after updates have been processed for a page.
  Overrides:
    `validate` in class `DCDataControl`

### rollbackTransaction

    public void rollbackTransaction()

  Description copied from class: `DCDataControl`
  Helper method that invokes rollback on the current Transaction.
  Overrides:
    `rollbackTransaction` in class `DCDataControl`

### isOperationSupported

    public boolean isOperationSupported(DCIteratorBinding iterBinding,
                                        byte oper)

  Returns true for find, create, remove operations. Returns false for CTRL_BINDING_VALIDATION if BC4J is deployed in local mode as that'd avoid dupliate validation in setters.
  Overrides:
    `isOperationSupported` in class `DCDataControl`

### isClientTier

    public boolean isClientTier()

  Returns true if this data-control's Application module is deployed in three-tier mode
  Overrides:
    `isClientTier` in class `DCDataControl`

### syncNeeded

    public boolean syncNeeded()

  Description copied from class: `DCDataControl`
  Primarily used in ADFBC which returns true, if it is deployed in batchmode.
  Overrides:
    `syncNeeded` in class `DCDataControl`

### syncIfNeeded

    public void syncIfNeeded(java.lang.String syncFromDiagnostic)

  Description copied from class: `DCDataControl`
  Incase syncNeeded, then use this event to synchronize data from remote tier in batch. This event differs from sync() in that this event synchronizes only if some client operation has marked that a visit to middle tier is necessary. sync() will visit middle tier regardless.
  Overrides:
    `syncIfNeeded` in class `DCDataControl`

### sync

    public void sync(java.lang.String syncFromDiagnostic)

  Description copied from class: `DCDataControl`
  Incase syncNeeded, then use this event to synchronize data from remote tier in batch.
  Overrides:
    `sync` in class `DCDataControl`

### setClientApp

    public void setClientApp(byte clientType)

  Incase of non-JClient, set the transaction to deferred exception mode by default
  Overrides:
    `setClientApp` in class `DCDataControl`

### setBundledExceptionMode

    public void setBundledExceptionMode(int mode)

### setValidationInBinding

    public void setValidationInBinding(int flag)

  *** For internal framework use only ***

### getValidationInBinding

    public int getValidationInBinding()

  *** For internal framework use only ***

### prepareSession

    public void prepareSession()

### beginRequest

    public void beginRequest(java.util.HashMap requestCtx)

  Description copied from class: `DCDataControl`
  Invoked in some contexts to signal the beginning of a model request. For example, if the `DataControl` is referenced in a web application then this method will be invoked by the ADF framework before control is forwarded to the first `Servlet` defined by the request.

  Subclassing datacontrols may extend this method to perform request level initialization of the `DataControl`.

  This method is guaranteed to be called only once per browser request. Page forwards should not result in multiple invocations.

  Specified by:
    `beginRequest` in interface `DCDataControlManagement`
  Overrides:
    `beginRequest` in class `DCDataControl`
  Parameters:
    `requestCtx` - a HashMap representing request context. Web applications which require request context may use the `BindingContext.HTTP_REQUEST` and `BindingContext.HTTP_RESPONSE` keys to acquire a reference from from the BindingContext.

### endRequest

    public void endRequest(java.util.HashMap requestCtx)

  Description copied from class: `DCDataControl`
  Invoked in some contexts to signal the end of a model request. For example, if the `DataControl` is referenced in a web application then this method will be invoked by the ADF framework after control is returned from the last `Servlet` defined by the request page flow.

  Subclassing datacontrols may extend this method to perform request level cleanup of the `DataControl`.

  This method is guaranteed to be called only once per browser request. Page forwards should not result in multiple invocations.

  Specified by:
    `endRequest` in interface `DCDataControlManagement`
  Overrides:
    `endRequest` in class `DCDataControl`
  Parameters:
    `requestCtx` - a HashMap representing request context. Web applications which require request context may use the `BindingContext.HTTP_REQUEST` and `BindingContext.HTTP_RESPONSE` keys to acquire a reference from from the BindingContext.

### resetState

    public boolean resetState()

  Description copied from class: `DCDataControl`
  Resets the DataControl. DataControl providers should extend this method to reset any model session state that may have been managed by this DataControl. For example:

  The ADF/BC DataControl has extended resetState to release the DataControl ApplicationModule to the ApplicationPool in unmanaged release mode.

  An EJB DataControl provider may extend resetState to close the DataControl EJB SessionBean

  The Toplink DataControl provider extends resetState to reset the DataControl's UnitOfWork and associated RowSetIterators.

  Please note that resetState may not occur immediately. If beginRequest has been invoked on the DataControl then resetState processing will be deferred until endRequest processing.

  Extending DataControl providers may optionally invoke release(REL_DATA_REFS) after performing and DataControl specific resetState handling.

  Specified by:
    `resetState` in interface `DCDataControlManagement`
  Overrides:
    `resetState` in class `DCDataControl`
  Returns:
    true if resetState was processed immediately. false if resetState was deferred to endRequest processing.

### findCustomViewObject

    public oracle.jbo.ViewObject findCustomViewObject(java.lang.String name,
                                                      java.lang.String interfaceName)

### setDataProvider

    protected void setDataProvider(java.lang.Object provider)

  Overrides:
    `setDataProvider` in class `DCDataControl`

### getAttributeDefs

    public AttributeDef[] getAttributeDefs(DCIteratorBinding iterBinding,
                                           java.lang.String[] attrNames)

  Description copied from class: `DCDataControl`
  Return attribute definition for the given iterator binding and for the given set of attributes from the elements-definition of the mapped collection.
  Overrides:
    `getAttributeDefs` in class `DCDataControl`

### setSessionCookie

    public void setSessionCookie(oracle.jbo.common.ampool.SessionCookie sessionCookie)

### applySortCriteria

    protected void applySortCriteria(DCIteratorBinding iter,
                                     oracle.jbo.SortCriteria[] sortBy)

  Sets the sort critiera that will be applied next time when the source for this iteratorBinding is executed.
  Specified by:
    `applySortCriteria` in class `DCDataControl`

### getSortCriteria

    protected oracle.jbo.SortCriteria[] getSortCriteria(DCIteratorBinding iter)

  Returns an ordered array of SortCriteria that will be applied when the source for this iteratorBinding is executed.
  Specified by:
    `getSortCriteria` in class `DCDataControl`

### createRowData

    public java.lang.Object createRowData(DCRowContext ctx)

  Description copied from class: `DCDataControl`
  Create a new row for the iterator associated with the given iterator-binding at the given index and return the new row.
  Overrides:
    `createRowData` in class `DCDataControl`

### removeRowData

    public boolean removeRowData(DCRowContext ctx)

  Description copied from class: `DCDataControl`
  This method is to remove the row object (the `obj` parameter) from the underlying data source.
  Overrides:
    `removeRowData` in class `DCDataControl`
  Parameters:
    `ctx` - the row context to be removed.
  Returns:
    `true` if the operation was successful. `false` otherwise.

### setAttributeInRow

    public void setAttributeInRow(DCIteratorBinding iterBind,
                                  Row row,
                                  AttributeDef ad,
                                  java.lang.Object value)

  Overrides:
    `setAttributeInRow` in class `DCDataControl`

### createViewCriteria

    public ViewCriteria createViewCriteria(DCIteratorBinding iter)

  Description copied from class: `DCDataControl`
  Internal: Applications should not use this method. Create a new viewCriteria associated with the given iterator binding's collection.
  Overrides:
    `createViewCriteria` in class `DCDataControl`

### getViewCriteria

    public ViewCriteria getViewCriteria(DCIteratorBinding iter)

  Description copied from class: `DCDataControl`
  Internal: Applications should not use this method. Return viewCriteria associated with the given iterator binding's collection.
  Overrides:
    `getViewCriteria` in class `DCDataControl`

### applyViewCriteria

    public void applyViewCriteria(ViewCriteria vc,
                                  DCIteratorBinding iter,
                                  RowSetIterator rsi)

  Description copied from class: `DCDataControl`
  Internal: Applications should not use this method.
  Specified by:
    `applyViewCriteria` in class `DCDataControl`

### internalSetTransactionStateChanged

    protected void internalSetTransactionStateChanged(boolean state)

  Overrides:
    `internalSetTransactionStateChanged` in class `DCDataControl`

### isBoundRowIteratorEvent

    protected boolean isBoundRowIteratorEvent(DCIteratorBinding iter,
                                              oracle.jbo.JboEvent ev)

  Overrides:
    `isBoundRowIteratorEvent` in class `DCDataControl`

### getReleaseLevel

    public int getReleaseLevel()

  See Also:
    `ApplicationModule.getReleaseLevel()`

### setReleaseLevel

    public void setReleaseLevel(int releaseLevel)

  See Also:
    `ApplicationModule.setReleaseLevel(int)`

### executeIteratorBindingWithParams

    public void executeIteratorBindingWithParams(DCIteratorBinding iter,
                                                 oracle.adf.model.OperationParameter[] params,
                                                 java.lang.Object[] paramVals)

  Overrides:
    `executeIteratorBindingWithParams` in class `DCDataControl`

### invokeMethod

    protected java.lang.Object invokeMethod(DCInvokeMethod method,
                                            oracle.adf.model.OperationBinding action,
                                            java.util.Map paramsMap)

  Description copied from class: `DCDataControl`
  Override this method if a datacontrol wants to implement custom invocation of a method and avoid introspection and invoke method call using reflection. ADF calls this method to invoke a methods bound via custom method-action binding.
  Overrides:
    `invokeMethod` in class `DCDataControl`

### findVariable

    protected oracle.jbo.Variable findVariable(java.lang.String path)

  Overrides:
    `findVariable` in class `DCDataControl`

### resetAttributeExceptionInRow

    protected void resetAttributeExceptionInRow(DCIteratorBinding iter,
                                                Row row,
                                                AttributeDef def,
                                                oracle.jbo.AttrValException ave)

  Reset any deferred exception in the row for the given attribute, for which the AttrValException was raised. This method should be called after the attribute exception has been cached on the binding or handled by the user/view.
  Overrides:
    `resetAttributeExceptionInRow` in class `DCDataControl`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Oracle Application Development Framework Model Java API Reference 10g Release 3 (10.1.3) B25778-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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