Oracle Application Development Framework Model and Business Components Java API Reference 10.1.3.1.0
B28969-01


oracle.adf.model.binding
Class DCBindingContainer

java.lang.Object
  extended byjava.util.AbstractMap
      extended byoracle.jbo.common.JboAbstractMap
          extended byoracle.adf.model.binding.DCExecutableBinding
              extended byoracle.adf.model.binding.DCBindingContainer

All Implemented Interfaces:
BindingContainer, DCIExecutable, oracle.jbo.JboExceptionHandler, java.util.Map, oracle.adf.model.RegionBinding, oracle.jbo.VariableManagerOwner
Direct Known Subclasses:
JUFormBinding

public class DCBindingContainer
extends DCExecutableBinding
implements oracle.adf.model.RegionBinding, oracle.jbo.JboExceptionHandler, oracle.jbo.VariableManagerOwner

Corresponds to a Swing JFrame or a JSP Page instance and manages bindings used in a frame. The DCBindingContainer class provides:


Expression language usage

The binding container properties are accessed via SPEL. Any of the getter methods can be invoked via expressions. The expression language can also traverse any of the collection exposed by this object.

The binding container provides access to all the contained bindings. It implements the map interface which makes it convenient for using SPEL to locate the children of the binding container. A common usage in JSP pages is to access the binding container within the page's context via the bindings variable. Somce sample expressions using JSTL are as follows:


//output the binding container's name
<c:out value="${bindings.name" />
// print out the editing mode string
<c:out value="${bindings.editingMode" />
// print out the input value of a control binding called 'deptno'
<c:out value="${bindings.deptno.inputValue" />


See Also:
JUPanelBinding

Nested Class Summary

 

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

 

Field Summary
protected  java.util.ArrayList mControlList
           
protected  DCDataControl mDataControl
           
protected  oracle.jbo.ApplicationModule mDataProvider
           
protected  java.util.ArrayList mIterBindingList
           
protected  java.util.ArrayList mParamsList
           

 

Fields inherited from class oracle.adf.model.binding.DCExecutableBinding
mInternalGet_KeyResolved

 

Fields inherited from interface oracle.adf.model.RegionBinding
EXECUTE_MODEL, PREPARE_MODEL, REFRESH_UNKNOWN, RENDER_MODEL, TYPE_EXECUTABLE_REGION

 

Fields inherited from interface oracle.adf.model.binding.DCIExecutable
EXECUTABLE_ACTION, EXECUTABLE_ITERATORBINDING, EXECUTABLE_REGION

 

Constructor Summary
  DCBindingContainer()
          Default constructor.
protected DCBindingContainer(java.lang.Object panel)
          Constructor used by DCPanelBinding, which passes in a reference to the JPanel object.

 

Method Summary
 void addControlBinding(DCControlBinding control)
          *** For internal framework use only *** Adds a controlbinding object to this container.
 void addControlBinding(java.lang.String name, DCControlBinding control)
          *** For internal framework use only ***
 void addExecutableBinding(java.lang.Object ctr)
          Adds the given Nested BindingContainer usage into this bindingContainer.
 void addExecutableBinding(java.lang.String name, java.lang.Object execObj)
          Adds this ExecutableBinding into this container with the given name.
 void addIteratorBinding(DCIteratorBinding iterBinding)
          Adds the given iterator binding name with a framework generated name.
 void addIteratorBinding(java.lang.String name, DCIteratorBinding iterBinding)
          Adds this iterator binding with this form with the given name.
 void addRegionListener(oracle.adf.model.RegionListener l)
          Adds the given listener to this binding container's validation listeners list.
 void addStatusBarInterface(DCStatusBarInterface statusBar)
          Helper method to add the given object to the JUApplication's StatusBars.
 void addValidationListener(DCBindingContainerValidationListener l)
          Adds the given listener to this binding container's validation listeners list.
 boolean aliasExists(java.lang.String key)
          *** For internal framework use only *** Returns true if this nested bindingContainer usage has an alias defined for paramter with the given key as it's id/name.
 void beforeCurrencyChange(DCBindingContainerValidationEvent ev)
          Notifies all JUPanelValidationListeners with the beforeCurrencyChange event.
 void beforeSaveTransaction(DCBindingContainerValidationEvent ev)
          Notifies all JUPanelValidationListeners with the beforeSaveTransaction event.
 void beforeSetAttribute(DCBindingContainerValidationEvent ev)
          Notifies all DCBindingContainerValidationListeners with the beforeSetAttribute event.
 void cacheException(JboException ex)
           
 void callBeforeRowNavigated(DCIteratorBinding iter)
          Forces the current control to stop its editing mode (if used, like in JTable).
 void callBeforeSaveTransaction(DCDataControl dc)
          Forces the current control to stop its editing mode (if used, like in JTable).
 java.lang.Object callBeforeSetAttribute(DCControlBinding ctrl, Row row, AttributeDef ad, java.lang.Object value)
          Invoked before any control binding performs a setAttribute call on a BC4J row.
protected  void clearExecutableBindings()
          *** For internal framework use only *** Clean all nested ExecutableBindings registered with this container.
protected  void clearIteratorBindings()
          *** For internal framework use only *** Clean all iterator bindings registered with this form.
protected  DCIteratorBinding createIteratorBinding(java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, int rangeSize)
           
 void displayStatus(DCIteratorBinding iterBinding, java.lang.String msgId, java.lang.Object[] params)
          Helper method to display the given message and params via the JUApplication's displayStatus method.
 void displayStatus(java.lang.String msg)
          Helper method to display the given message string via the JUApplication's displayStatus method.
 oracle.jbo.VariableValueManager ensureVariableManager()
           
 java.lang.Object evaluateParameter(java.lang.String expr, boolean bCtx)
          *** For internal framework use only *** Return the Expression String that will be used to evaluate the value of a parameter.
 void execute()
          Execute the query behind each iterator binding that is contained in this form binding.
 void executeIfNeeded()
          Excecute the query for each iterator binding, if not already executed.
 DCControlBinding findCtrlBinding(java.lang.String name)
          Returns a control binding with the given name.
 DCDataControl findDataControl(java.lang.String alias)
           
 java.lang.Object findExecutableBinding(java.lang.String name)
          Returns the nested BindingContainer usage/instance of the given name.
 DCIteratorBinding findIteratorBinding(java.lang.String name)
          Returns the iterator binding object of the given name.
 java.lang.Object findNamedObject(java.lang.String expr)
          *** For internal framework use only ***
 DCParameter findParameter(java.lang.String name)
          Given the name, find a parameter (DCParameter) type object in this binding container of the same name.
 oracle.adf.model.RegionBinding findRegionBinding(java.lang.String name)
           
 void finishedProcessingPiggyback(java.lang.Exception[] exArr)
           
protected  void focusGained(DCIteratorBinding iterBinding, DCControlBinding binding, int attrIndex)
          Invoked by the framework to notify various status bars of which control has gained the focus.
 java.lang.Object getActionProcessor()
          Returns an instance of java bean that may implement event-handling for actions defined on this RegionBinding.
 java.util.ArrayList getAllIterBindingList()
           
 oracle.jbo.ApplicationModule getApplicationModule()
          Deprecated. since 10.1.2. Use IteratorBinding.getDataControl() to get to the ApplicationModule in case of BC4J datacontrols.
 java.util.List getAttributeBindings()
          Return a list of all Attribute bindings in this RegionBinding.
 oracle.adf.model.BindingContext getBindingContext()
          Returns the bindingContext to which this bindingContainer belongs.
 ControlBinding getControlBinding(java.lang.String name)
          Returns a control binding with the given name.
 java.util.List getControlBindings()
          Returns a list containing all control-bindings in this container
 DCControlBinding getCtrlBinding(int index)
          *** For internal framework use only ***
 DCControlBinding getCtrlBinding(java.lang.Object control)
          Matches the control with the View-component(getControl) for each of the control bindings in this container.
 java.util.ArrayList getCtrlBindingList()
          Returns an array containing all control-bindings in this container.
 DCDataControl getDataControl()
          *** For internal framework use only *** Returns the DCApplciation object to which this form binding belongs.
 DCBindingContainerDef getDef()
          *** For internal framework use only ***
 java.lang.String getEditingMode()
          Deprecated. since 10.1.3 use isFindMode to determine the find or data modes for this bindingContainer.
 java.util.ArrayList getExceptionsList()
          Returns a list of exceptions that has been cached on this bindingContainer.
 java.util.List getExecutableBindings()
          Return an ordered set of executableBindings.
 oracle.adf.model.binding.DCIExecutableDef getExecutableDef()
          *** For internal framework use only ***
 int getExecutableType()
          Returns one of an enumeration of Executable binding types in the framework.
 java.lang.String getFullName()
           
 DCIteratorBinding getIteratorBinding(java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName)
          Return an Iterator Binding of the given "voIterBindingName" if one already exists by that name.
 DCIteratorBinding getIteratorBinding(java.lang.String voInstanceName, java.lang.String voIterName, java.lang.String voIterBindingName, int rangeSize)
          Return an Iterator Binding of the given "voIterBindingName", if one already exists by that name, after setting up the iterator binding's range Size to the greater of existing range size and the given range size.
 java.util.ArrayList getIterBindingList()
          Return an ordered set of iterator bindings.
 java.util.HashMap getIterBindings()
          Return the hashmap containing iterator bindings
 LocaleContext getLocaleContext()
          Returns the locale context set into the BC4J application module if this binding-container's datacontrol is a Bc4J data control.
 java.lang.Class getMessageBundleClass()
           
 OperationBinding getOperationBinding(java.lang.String name)
          Returns an operation binding with the given name.
 java.util.List getOperationBindings()
          Return a list of all Action bindings in this RegionBinding.
protected  oracle.jbo.ViewObject[] getOrderedVOUsageList(DCDataControl dc)
          Returns an ordered list of ViewObject usages in this panel so that a JboException parameters can be transformed from Entity-layer names and exception parameters to ViewObject names and parameters.
 java.lang.String getParameterAlias(java.lang.String key)
          *** For internal framework use only *** Return any alias String value if set for a given bindingContainer parameter.
 java.util.List getParametersList()
          Return a list of parameter (DCParameter type) objects that make up the parameters for this bindingContainer.
 java.util.Map getParametersMap()
          Return Parameters map.
 java.util.List getRegionBindings()
          Return an ordered set of executableBindings.
 DCBindingContainer getRegionContainer()
          Returns the parent BindingContainer that includes this instance of BindingContainer as a nested BindingContainer.
 oracle.adf.model.RegionController getRegionController()
          Returns an instance of RegionController that should handle the lifecycle for this RegionBinding.
 java.util.List getRegionListeners()
          Returns a list of RegionListeners (returns an empty list if no such listener was registered).
 java.lang.String getStateToken()
          Returns the container state.
 java.lang.String getStateTokenId()
          Returns the container state token.
 int getTransientRefreshFlag()
           
 java.util.ArrayList getValidationListeners()
          Returns a list of ValidationListeners (returns an empty list if no such listener was registered).
 oracle.jbo.VariableValueManager getVariableManager()
           
protected  oracle.jbo.VariableManagerOwner getVariableManagerOwner()
           
 java.lang.Object getViewComponent()
          *** For internal framework use only *** Returns the associated JPanel object.
 void handleException(java.lang.Exception ex, boolean lastEntryInPiggyback)
           
 void handleWarning(oracle.jbo.JboWarning warn)
           
 int hashCode()
           
 boolean hasRefreshParametersChanged()
          *** For internal framework use only ***
 boolean hasVariables()
           
protected  void initializeApplicationModule()
          *** For internal framework use only *** Used to setup reference to DCDataControl and oracle.jbo.Application objects.
 void initializeFromDef(oracle.adf.model.BindingContext ctx, oracle.jbo.ApplicationModule am)
          *** For internal framework use only ***
protected  void initializeViewComponent(java.util.ArrayList controls)
          *** For internal framework use only ***
protected  java.lang.Object internalGet(java.lang.String key)
          This method may be overridden by subclasses to implement public spel lookup strings.
protected  DCDataControl internalGetDataControl()
          *** For internal framework use only ***
protected  void internalRefreshControl(int refreshFlag, boolean executeIfNeeded)
          *** For internal framework use only ***
protected  boolean isEditingStopped()
          Jclient uses this to indicate if stopEdit completed before datacontrol can proceed with update cycle (commit etc).
 boolean isErrorHandlerActive()
           
 boolean isExecuteOnRollback()
          Returns true if this form binding executes all the ViewObjects it's associated with after rollback is called on the application via DCCtrlActionBinding's rollback action.
 boolean isFindMode()
          Returns true if this form is in find mode.
 boolean isTokenValidationEnabled()
          Returns true if token validation is enabled for this binding container.
 boolean isViewable()
          Consults security to return whether this region binding should be visible in the current context or not.
protected  void navigated(DCIteratorBinding iter, NavigationEvent event)
          Invoked when a DCIteratorBinding receives a navigated Event from BC4J RowSetIterator
protected  void notifyIteratorChanged(DCIteratorBinding iterBnd, boolean refresh)
          Notify each listener of the iteratorChanged event when an iterator changes its data due to execute, re-execute, or change in display mode (find mode or data mode).
 void processException(JboException ex)
          Matches a control-binding with the exception or one of it's detail exceptions if the exception or one of it's detail excpetions is an AttrValException and the control-binding is bound to that attribute.
 void processInputValues(java.util.Map inputValues)
           
protected  void rangeRefreshed(DCIteratorBinding iter, RangeRefreshEvent event)
          Invoked when a DCIteratorBinding receives a rangeRefreshed Event from BC4J RowSetIterator
protected  void rangeScrolled(DCIteratorBinding iter, ScrollEvent event)
          Invoked when a DCIteratorBinding receives a rangeScrolled Event from BC4J RowSetIterator
 void refresh()
          Invokes refreshControl.
 void refresh(int refreshFlag)
          Invokes refreshControl.
 void refreshControl()
          Refresh the binding container with control data.
 void release()
          release all view and datacontrol references from this binding-container and all it's containee iterator bindings and control bindings.
 void release(int flags)
          Applications should release the DataControl which will end up calling this method for all binding containers in the datacontrol.
 boolean removeControlBinding(DCControlBinding control)
          *** For internal framework use only ***
 boolean removeControlBinding(java.lang.String name)
          *** For internal framework use only ***
 boolean removeExecutableBinding(java.lang.String name)
          If a BindingContainer usage exists with the given name, remove it from the internal members.
 boolean removeIteratorBinding(java.lang.String name)
          If an iterator binding exists with the given name, remove it from the internal members.
 boolean removeParameter(DCParameter control)
          *** For internal framework use only *** Remove the parameter object from a binding container
 boolean removeParameter(java.lang.String name)
          *** For internal framework use only ***
 void removeRegionListener(oracle.adf.model.RegionListener l)
          Removes the given listener from this binding container's validation listeners list.
 void removeStatusBarInterface(DCStatusBarInterface statusBar)
          Helper method to remove the given object to the JUApplication's StatusBars.
 void removeValidationListener(DCBindingContainerValidationListener l)
          Removes the given listener from this binding container's validation listeners list.
 void reportException(java.lang.Throwable th)
          If DCDataControl is setup, then invoke DCDataControl.reportException to report any exceptions.
 void resetInputState()
          Resets the error state for all control bindings.
protected  void rowDeleted(DCIteratorBinding iter, DeleteEvent event)
          Invoked when a DCIteratorBinding receives a rowDeleted Event from BC4J RowSetIterator
protected  void rowInserted(DCIteratorBinding iter, InsertEvent event)
          Invoked when a DCIteratorBinding receives a rowInserted Event from BC4J RowSetIterator
protected  void rowUpdated(DCIteratorBinding iter, UpdateEvent event)
          Invoked when a DCIteratorBinding receives a rowUpdated Event from BC4J RowSetIterator
 void setApplicationModule(oracle.jbo.ApplicationModule am)
          *** For internal framework use only *** Sets the ApplicationModule reference
protected  void setBindingContext(oracle.adf.model.BindingContext ctx)
          *** For internal framework use only ***
 void setDataControl(DCDataControl app)
          Sets the DCDataControl instance in this form binding.
protected  void setDef(DCBindingContainerDef formDef)
          *** For internal framework use only ***
 void setEnableTokenValidation(boolean bSet)
          Enables or disables token validation.
 void setErrorHandlerActive(boolean flag)
          Sets the registered handler for exceptions into active/inactive mode.
 void setExecuteOnRollback(boolean flag)
          Set false if this form binding should not execute all the ViewObjects it's associated with after rollback is called on the application via DCCtrlActionBinding's rollback action.
 void setFindMode(boolean mode)
          Calls setFindMode(boolean mode, boolean applyCriteria) with applyCriteria = true;
 void setFindMode(boolean mode, boolean applyCriteria)
          Sets this form into findMode.
 void setParameterExpression(java.lang.String name, java.lang.String elExpr)
          *** For internal framework use only *** Set the expression string for a given parameter name.
 void setParameterValues(java.util.Map paramValueMap)
          *** For internal framework use only *** Allows setting values for this page's parameters.
protected  void setViewComponentInternal(java.lang.Object panel)
          *** For internal framework use only *** Sets internal member variable with the given panel instance.
 java.lang.String toString()
           
 boolean usesDef(DCBindingContainerDef def)
          Internal: Applications should not use this class.
 void validate()
          Calls DataControl validate() for each data control that has a collection to which an iterator binding in this container or it's containeeds are bound to.
 void validateInputValues()
          Calls DataControl.validate() for each data control that has a collection to which an iterator binding in this container is bound to.
 void validateToken(java.lang.String sState)
          validates that this container is in the same state as represented by the given string token

 

Methods inherited from class oracle.adf.model.binding.DCExecutableBinding
addDependentExecutable, get, getBindingContainer, getDependents, getName, getRefreshExpression, getRefreshOption, isRefreshed, refreshIfNeeded, removeDependentExecutable, resetDependentsRefresh, setBindingContainer, setExecutableDef, setName, setRefreshed, setRefreshExpression, setRefreshOption

 

Methods inherited from class oracle.jbo.common.JboAbstractMap
entrySet, equals, internalPut, 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.binding.BindingContainer
getName

 

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

 

Methods inherited from interface oracle.jbo.VariableManagerOwner
getName

 

Field Detail

mDataControl

protected DCDataControl mDataControl

mParamsList

protected java.util.ArrayList mParamsList

mIterBindingList

protected java.util.ArrayList mIterBindingList

mControlList

protected java.util.ArrayList mControlList

mDataProvider

protected oracle.jbo.ApplicationModule mDataProvider

Constructor Detail

DCBindingContainer

public DCBindingContainer()
Default constructor.

DCBindingContainer

protected DCBindingContainer(java.lang.Object panel)
Constructor used by DCPanelBinding, which passes in a reference to the JPanel object. *** For internal framework use only ***

Method Detail

isTokenValidationEnabled

public boolean isTokenValidationEnabled()
Returns true if token validation is enabled for this binding container. This flag is used in ADF web apps to verify the state of a binding container for a the page that is being processed.
Specified by:
isTokenValidationEnabled in interface BindingContainer
Returns:
true if token validation is enabled for this RegionBinding, false otherwise.

setEnableTokenValidation

public void setEnableTokenValidation(boolean bSet)
Enables or disables token validation.

reportException

public void reportException(java.lang.Throwable th)
If DCDataControl is setup, then invoke DCDataControl.reportException to report any exceptions. Otherwise, throw a JboException (wrapping non-JboExceptions if required)

This method converts all exceptions to a JboException.


setBindingContext

protected void setBindingContext(oracle.adf.model.BindingContext ctx)
*** For internal framework use only ***

getBindingContext

public oracle.adf.model.BindingContext getBindingContext()
Returns the bindingContext to which this bindingContainer belongs.

setDataControl

public void setDataControl(DCDataControl app)
Sets the DCDataControl instance in this form binding. If this form binding is already registered with a DCDataControl, then it throws an InvalidOperException.
Throws:
InvalidOperException

getDef

public final DCBindingContainerDef getDef()
*** For internal framework use only ***

setDef

protected void setDef(DCBindingContainerDef formDef)
*** For internal framework use only ***

initializeFromDef

public void initializeFromDef(oracle.adf.model.BindingContext ctx,
                              oracle.jbo.ApplicationModule am)
*** For internal framework use only ***

getViewComponent

public final java.lang.Object getViewComponent()
*** For internal framework use only *** Returns the associated JPanel object.

setViewComponentInternal

protected void setViewComponentInternal(java.lang.Object panel)
*** For internal framework use only *** Sets internal member variable with the given panel instance.

getApplicationModule

public final oracle.jbo.ApplicationModule getApplicationModule()
Deprecated. since 10.1.2. Use IteratorBinding.getDataControl() to get to the ApplicationModule in case of BC4J datacontrols.
Return oracle.jbo.ApplicationModule instance which provides the BC4J context to this form binding object if this BindingContainer is working with only one BC4J DataControl which is for support of classic JClient appliations.

To get a BC4J AM in all cases use the IteratorBinding that iterates over a Bc4J collection and get it's DataControl to get to the corresonding ApplicationModule.


setApplicationModule

public void setApplicationModule(oracle.jbo.ApplicationModule am)
*** For internal framework use only *** Sets the ApplicationModule reference

getRegionContainer

public final DCBindingContainer getRegionContainer()
Returns the parent BindingContainer that includes this instance of BindingContainer as a nested BindingContainer.

getRegionBindings

public final java.util.List getRegionBindings()
Return an ordered set of executableBindings.
Specified by:
getRegionBindings in interface oracle.adf.model.RegionBinding

getExecutableBindings

public final java.util.List getExecutableBindings()
Return an ordered set of executableBindings.

findRegionBinding

public final oracle.adf.model.RegionBinding findRegionBinding(java.lang.String name)

usesDef

public final boolean usesDef(DCBindingContainerDef def)
Internal: Applications should not use this class.

findExecutableBinding

public final java.lang.Object findExecutableBinding(java.lang.String name)
Returns the nested BindingContainer usage/instance of the given name. found in nested in this BindingContainer. This method does not recurse into it's nested containers.

addExecutableBinding

public final void addExecutableBinding(java.lang.Object ctr)
Adds the given Nested BindingContainer usage into this bindingContainer. By default name the nested BindingContainer usage is referred to by the instance name of given BindingContainer.

addExecutableBinding

public final void addExecutableBinding(java.lang.String name,
                                       java.lang.Object execObj)
Adds this ExecutableBinding into this container with the given name. If the name is null, a system-generated name is used. The generated name is set into the nested ExecutableBinding object.
Throws:
InvalidObjNameException - if an invalid name is passed in.
NameClashException - if given a duplicate name.

removeExecutableBinding

public final boolean removeExecutableBinding(java.lang.String name)
If a BindingContainer usage exists with the given name, remove it from the internal members. This method also releases the references to view layer if any that this nested container may have. Cleaning out the references to the data layer is the responsibility of the caller.

clearExecutableBindings

protected final void clearExecutableBindings()
*** For internal framework use only *** Clean all nested ExecutableBindings registered with this container.

getIterBindings

public final java.util.HashMap getIterBindings()
Return the hashmap containing iterator bindings

getIterBindingList

public final java.util.ArrayList getIterBindingList()
Return an ordered set of iterator bindings.

getAllIterBindingList

public final java.util.ArrayList getAllIterBindingList()

findIteratorBinding

public final DCIteratorBinding findIteratorBinding(java.lang.String name)
Returns the iterator binding object of the given name.

addIteratorBinding

public final void addIteratorBinding(DCIteratorBinding iterBinding)
Adds the given iterator binding name with a framework generated name.

addIteratorBinding

public final void addIteratorBinding(java.lang.String name,
                                     DCIteratorBinding iterBinding)
Adds this iterator binding with this form with the given name. If the name is null, a system-generated name is used. The generatd name is set into the iteratorBinding object.
Throws:
InvalidObjNameException - if an invalid name is passed in.
NameClashException - if given a duplicate name.

removeIteratorBinding

public final boolean removeIteratorBinding(java.lang.String name)
If an iterator binding exists with the given name, remove it from the internal members.

clearIteratorBindings

protected final void clearIteratorBindings()
*** For internal framework use only *** Clean all iterator bindings registered with this form.

addControlBinding

public final void addControlBinding(DCControlBinding control)
*** For internal framework use only *** Adds a controlbinding object to this container.
Throws:
InvalidObjNameException - if control's name is of unsupported format
NameClashException - if an object exists with this control-binding's name.

addControlBinding

public final void addControlBinding(java.lang.String name,
                                    DCControlBinding control)
*** For internal framework use only ***

getControlBindings

public final java.util.List getControlBindings()
Returns a list containing all control-bindings in this container
Specified by:
getControlBindings in interface BindingContainer

getCtrlBindingList

public final java.util.ArrayList getCtrlBindingList()
Returns an array containing all control-bindings in this container.

getAttributeBindings

public java.util.List getAttributeBindings()
Return a list of all Attribute bindings in this RegionBinding.
Specified by:
getAttributeBindings in interface BindingContainer

getOperationBindings

public java.util.List getOperationBindings()
Return a list of all Action bindings in this RegionBinding.
Specified by:
getOperationBindings in interface BindingContainer

getParametersList

public final java.util.List getParametersList()
Return a list of parameter (DCParameter type) objects that make up the parameters for this bindingContainer. null is returned if there are no parameters defined for this bindingContainer.

getParametersMap

public final java.util.Map getParametersMap()
Return Parameters map.

findParameter

public final DCParameter findParameter(java.lang.String name)
Given the name, find a parameter (DCParameter) type object in this binding container of the same name. Return null if no such name is found.

getCtrlBinding

public final DCControlBinding getCtrlBinding(int index)
*** For internal framework use only ***

findCtrlBinding

public final DCControlBinding findCtrlBinding(java.lang.String name)
Returns a control binding with the given name. Returns null if name is not found.

getControlBinding

public final ControlBinding getControlBinding(java.lang.String name)
Description copied from interface: BindingContainer
Returns a control binding with the given name. Returns null if name is not found.
Specified by:
getControlBinding in interface BindingContainer
Parameters:
name -
Returns:
ControlBinding that matches the given name

getOperationBinding

public final OperationBinding getOperationBinding(java.lang.String name)
Description copied from interface: BindingContainer
Returns an operation binding with the given name. Returns null if name is not found. This is a typed accessor that can be used instead of getControlBinding() to get to an action binding in this region.
Specified by:
getOperationBinding in interface BindingContainer
Parameters:
name -
Returns:
ControlBinding that matches the given name

evaluateParameter

public final java.lang.Object evaluateParameter(java.lang.String expr,
                                                boolean bCtx)
*** For internal framework use only *** Return the Expression String that will be used to evaluate the value of a parameter.

setParameterExpression

public final void setParameterExpression(java.lang.String name,
                                         java.lang.String elExpr)
*** For internal framework use only *** Set the expression string for a given parameter name. This allows overriding of the parameter expression in a bindingContainer usage.

setParameterValues

public final void setParameterValues(java.util.Map paramValueMap)
*** For internal framework use only *** Allows setting values for this page's parameters. Note that if the usage declaratively defines a parameter 'value' then that takes precedence over the value passed in in this list. So for usages where parameter is passed in from a caller, there should be no 'value' defined in the usage.

This method is primarily called on top-level BindingContainers to pass in the page/bindingContainer level parameters.


findDataControl

public final DCDataControl findDataControl(java.lang.String alias)

getParameterAlias

public java.lang.String getParameterAlias(java.lang.String key)
*** For internal framework use only *** Return any alias String value if set for a given bindingContainer parameter.

aliasExists

public boolean aliasExists(java.lang.String key)
*** For internal framework use only *** Returns true if this nested bindingContainer usage has an alias defined for paramter with the given key as it's id/name.

getCtrlBinding

public final DCControlBinding getCtrlBinding(java.lang.Object control)
Matches the control with the View-component(getControl) for each of the control bindings in this container. Returns the matching control binding if found. Otherwise returns null.

removeParameter

public final boolean removeParameter(DCParameter control)
*** For internal framework use only *** Remove the parameter object from a binding container

removeControlBinding

public final boolean removeControlBinding(DCControlBinding control)
*** For internal framework use only ***

removeControlBinding

public final boolean removeControlBinding(java.lang.String name)
*** For internal framework use only ***

removeParameter

public final boolean removeParameter(java.lang.String name)
*** For internal framework use only ***

execute

public void execute()
Execute the query behind each iterator binding that is contained in this form binding. Applications could invoke this method to re-execute all the ViewObjects associated with this form.

executeIfNeeded

public void executeIfNeeded()
Excecute the query for each iterator binding, if not already executed. Applications should invoke this method to verify and execute all the ViewObjects associated with this form. This method is used by the generated applications by default.

getIteratorBinding

public DCIteratorBinding getIteratorBinding(java.lang.String voInstanceName,
                                            java.lang.String voIterName,
                                            java.lang.String voIterBindingName)
Return an Iterator Binding of the given "voIterBindingName" if one already exists by that name. If not, create an IteratorBinding object that references a default iterator of the ViewObject instance named voInstanceName (and optionally the iterator named voIterName). Return this created iterator binding after adding it to internal lists.

Various control bindings that display just one row's attribute invoke this method to find or create the iterator binding for which they display an attribute data.


getIteratorBinding

public DCIteratorBinding getIteratorBinding(java.lang.String voInstanceName,
                                            java.lang.String voIterName,
                                            java.lang.String voIterBindingName,
                                            int rangeSize)
Return an Iterator Binding of the given "voIterBindingName", if one already exists by that name, after setting up the iterator binding's range Size to the greater of existing range size and the given range size. If range size is -1, that indicates all rows in the range and hence takes precedence in the above comparison.

If not, create an IteratorBinding object that references a default iterator of the ViewObject instance named voInstanceName (and optionally the iterator named voIterName). Return this created iterator binding after adding it to internal lists.

Various control bindings that are capable of displaying more than one row of data invoke this method to create their iterator binding with a preferred range size.


createIteratorBinding

protected DCIteratorBinding createIteratorBinding(java.lang.String voInstanceName,
                                                  java.lang.String voIterName,
                                                  java.lang.String voIterBindingName,
                                                  int rangeSize)

setFindMode

public void setFindMode(boolean mode)
Calls setFindMode(boolean mode, boolean applyCriteria) with applyCriteria = true;

setFindMode

public void setFindMode(boolean mode,
                        boolean applyCriteria)
Sets this form into findMode. All iterator bindings with this form are set to find mode. Passes applyCriteria to IteratorBindings to indicate if they should apply the ViewCritiera stored on the iterator binding onto the model collection.

Also, notify each iteratorChanged listener registered with this form of the change in the iterator (due to change in mode so that they update the displays with the find or data mode's data).


isFindMode

public boolean isFindMode()
Returns true if this form is in find mode.

getEditingMode

public java.lang.String getEditingMode()
Deprecated. since 10.1.3 use isFindMode to determine the find or data modes for this bindingContainer.
Returns "* Find Mode" if this bindingContainer is in find mode.

addStatusBarInterface

public void addStatusBarInterface(DCStatusBarInterface statusBar)
Helper method to add the given object to the JUApplication's StatusBars.

removeStatusBarInterface

public void removeStatusBarInterface(DCStatusBarInterface statusBar)
Helper method to remove the given object to the JUApplication's StatusBars.

displayStatus

public void displayStatus(DCIteratorBinding iterBinding,
                          java.lang.String msgId,
                          java.lang.Object[] params)
Helper method to display the given message and params via the JUApplication's displayStatus method. This method becomes a no-op if this form is not registered with a JUApplication

displayStatus

public void displayStatus(java.lang.String msg)
Helper method to display the given message string via the JUApplication's displayStatus method. This method becomes a no-op if this form is not registered with a JUApplication

getLocaleContext

public LocaleContext getLocaleContext()
Returns the locale context set into the BC4J application module if this binding-container's datacontrol is a Bc4J data control. Otherwise returns null.

isExecuteOnRollback

public boolean isExecuteOnRollback()
Returns true if this form binding executes all the ViewObjects it's associated with after rollback is called on the application via DCCtrlActionBinding's rollback action.

setExecuteOnRollback

public void setExecuteOnRollback(boolean flag)
Set false if this form binding should not execute all the ViewObjects it's associated with after rollback is called on the application via DCCtrlActionBinding's rollback action. The default is to execute all the ViewObjects on rollback.

release

public void release()
release all view and datacontrol references from this binding-container and all it's containee iterator bindings and control bindings.

release

public void release(int flags)
Applications should release the DataControl which will end up calling this method for all binding containers in the datacontrol.
Specified by:
release in interface BindingContainer
Overrides:
release in class DCExecutableBinding
Parameters:
flags - could be one of the enumerations in DCDataControl. See DCDataControl.release()

initializeViewComponent

protected void initializeViewComponent(java.util.ArrayList controls)
*** For internal framework use only ***

initializeApplicationModule

protected void initializeApplicationModule()
*** For internal framework use only *** Used to setup reference to DCDataControl and oracle.jbo.Application objects.

focusGained

protected void focusGained(DCIteratorBinding iterBinding,
                           DCControlBinding binding,
                           int attrIndex)
Invoked by the framework to notify various status bars of which control has gained the focus.

notifyIteratorChanged

protected void notifyIteratorChanged(DCIteratorBinding iterBnd,
                                     boolean refresh)
Notify each listener of the iteratorChanged event when an iterator changes its data due to execute, re-execute, or change in display mode (find mode or data mode).

rangeRefreshed

protected void rangeRefreshed(DCIteratorBinding iter,
                              RangeRefreshEvent event)
Invoked when a DCIteratorBinding receives a rangeRefreshed Event from BC4J RowSetIterator
Parameters:
iter - that received the rangeRefreshed event.
event - a description of the new ranges.

rangeScrolled

protected void rangeScrolled(DCIteratorBinding iter,
                             ScrollEvent event)
Invoked when a DCIteratorBinding receives a rangeScrolled Event from BC4J RowSetIterator
Parameters:
iter - that received the rangeScrolled event.
event - a description of the new range.

rowInserted

protected void rowInserted(DCIteratorBinding iter,
                           InsertEvent event)
Invoked when a DCIteratorBinding receives a rowInserted Event from BC4J RowSetIterator
Parameters:
iter - that received the rowInserted event.
event - a description of the new Row object.

rowDeleted

protected void rowDeleted(DCIteratorBinding iter,
                          DeleteEvent event)
Invoked when a DCIteratorBinding receives a rowDeleted Event from BC4J RowSetIterator
Parameters:
iter - that received the rowDeleted event.
event - a description of the deleted Row object.

rowUpdated

protected void rowUpdated(DCIteratorBinding iter,
                          UpdateEvent event)
Invoked when a DCIteratorBinding receives a rowUpdated Event from BC4J RowSetIterator
Parameters:
iter - that received the rowUpdated event.
event - a description of the modified Row object.

navigated

protected void navigated(DCIteratorBinding iter,
                         NavigationEvent event)
Invoked when a DCIteratorBinding receives a navigated Event from BC4J RowSetIterator
Parameters:
iter - that received the navigated event.
event - a description of the new and previous current rows.

callBeforeSetAttribute

public java.lang.Object callBeforeSetAttribute(DCControlBinding ctrl,
                                               Row row,
                                               AttributeDef ad,
                                               java.lang.Object value)
Invoked before any control binding performs a setAttribute call on a BC4J row. This is used by DCPanelBinding to generate validation events to validate attribute values before they are set.

isEditingStopped

protected boolean isEditingStopped()
Jclient uses this to indicate if stopEdit completed before datacontrol can proceed with update cycle (commit etc).

callBeforeRowNavigated

public void callBeforeRowNavigated(DCIteratorBinding iter)
Forces the current control to stop its editing mode (if used, like in JTable). Calls beforeRowNavigated() method to notify all validation listeners.

callBeforeSaveTransaction

public void callBeforeSaveTransaction(DCDataControl dc)
Forces the current control to stop its editing mode (if used, like in JTable). Calls beforeSaveTransaction() method to notify all validation listeners.

beforeSetAttribute

public void beforeSetAttribute(DCBindingContainerValidationEvent ev)
Notifies all DCBindingContainerValidationListeners with the beforeSetAttribute event. This event is raised before a control binding sets the value from a control into the corresponding BC4J row's attribute.

beforeCurrencyChange

public void beforeCurrencyChange(DCBindingContainerValidationEvent ev)
Notifies all JUPanelValidationListeners with the beforeCurrencyChange event. This event is raised before an iterator-binding object moves the current row to another row.

beforeSaveTransaction

public void beforeSaveTransaction(DCBindingContainerValidationEvent ev)
Notifies all JUPanelValidationListeners with the beforeSaveTransaction event. The JClient framework calls this method before invoking commit() on the BC4J transaction.

internalGet

protected java.lang.Object internalGet(java.lang.String key)
This method may be overridden by subclasses to implement public spel lookup strings.

This method first checks for control binding with the given name and returns a control-binding with the matching name. /EmpEdit.do If not, then iterator binding with a matching key/name is returned. If not, then if the following keys are checked:

Properties returned vis getter on this control bindings are:


hashCode

public int hashCode()
Specified by:
hashCode in interface java.util.Map

refresh

public final void refresh(int refreshFlag)
Invokes refreshControl.
Specified by:
refresh in interface oracle.adf.model.RegionBinding

refresh

public final void refresh()
Invokes refreshControl.
Specified by:
refresh in interface BindingContainer

refreshControl

public void refreshControl()
Refresh the binding container with control data.

This method synhronizes the rangeSizes from iteratorBindings onto the collection that they are bound to and then executes (if not already executed) the collection sources to get the collection data by calling iterator binding's refreshControl method. The order of these calls is implied by the order in which the iterator bindings were added to this bindingContainer (or were represented in xml metadata).

Method bound iterator bindings expect the methods be already executed or atleast their parameters(if any) be accessible to the Method Action associated with the iterator binding so that the method can be executed successfully to bind to a returned collection.


internalRefreshControl

protected void internalRefreshControl(int refreshFlag,
                                      boolean executeIfNeeded)
*** For internal framework use only ***

Subclasses may need to override this as a choke point to ready their component bindings before executing/refreshing the bindingContainer.


resetInputState

public void resetInputState()
Resets the error state for all control bindings.

getRegionListeners

public final java.util.List getRegionListeners()
Returns a list of RegionListeners (returns an empty list if no such listener was registered).

addRegionListener

public final void addRegionListener(oracle.adf.model.RegionListener l)
Adds the given listener to this binding container's validation listeners list.

removeRegionListener

public final void removeRegionListener(oracle.adf.model.RegionListener l)
Removes the given listener from this binding container's validation listeners list.

isViewable

public boolean isViewable()
Description copied from interface: oracle.adf.model.RegionBinding
Consults security to return whether this region binding should be visible in the current context or not. It is expected that view technologies will consult this flag before processing region's model.
Specified by:
isViewable in interface oracle.adf.model.RegionBinding

getValidationListeners

public final java.util.ArrayList getValidationListeners()
Returns a list of ValidationListeners (returns an empty list if no such listener was registered).

addValidationListener

public final void addValidationListener(DCBindingContainerValidationListener l)
Adds the given listener to this binding container's validation listeners list.

removeValidationListener

public final void removeValidationListener(DCBindingContainerValidationListener l)
Removes the given listener from this binding container's validation listeners list.

validate

public final void validate()
Description copied from interface: BindingContainer
Calls DataControl validate() for each data control that has a collection to which an iterator binding in this container or it's containeeds are bound to.
Specified by:
validate in interface BindingContainer

validateInputValues

public void validateInputValues()
Calls DataControl.validate() for each data control that has a collection to which an iterator binding in this container is bound to.

processInputValues

public void processInputValues(java.util.Map inputValues)

toString

public java.lang.String toString()

processException

public void processException(JboException ex)
Matches a control-binding with the exception or one of it's detail exceptions if the exception or one of it's detail excpetions is an AttrValException and the control-binding is bound to that attribute.

If the bindingContext is in JClient mode, then this exception is thrown, otherwise the exception is cached at the panelBinding level for the controller to get/access during the page-rendering phase or before invoking the next action.


getExceptionsList

public java.util.ArrayList getExceptionsList()
Returns a list of exceptions that has been cached on this bindingContainer.

cacheException

public void cacheException(JboException ex)

handleException

public void handleException(java.lang.Exception ex,
                            boolean lastEntryInPiggyback)
Specified by:
handleException in interface oracle.jbo.JboExceptionHandler

handleWarning

public void handleWarning(oracle.jbo.JboWarning warn)
Specified by:
handleWarning in interface oracle.jbo.JboExceptionHandler

finishedProcessingPiggyback

public void finishedProcessingPiggyback(java.lang.Exception[] exArr)
Specified by:
finishedProcessingPiggyback in interface oracle.jbo.JboExceptionHandler

isErrorHandlerActive

public boolean isErrorHandlerActive()

setErrorHandlerActive

public void setErrorHandlerActive(boolean flag)
Sets the registered handler for exceptions into active/inactive mode. During inactive mode the handler is not supposed to 'display' a modal UI for the exceptions but simply report it on console/log and then rethrow the exception.

getOrderedVOUsageList

protected oracle.jbo.ViewObject[] getOrderedVOUsageList(DCDataControl dc)
Returns an ordered list of ViewObject usages in this panel so that a JboException parameters can be transformed from Entity-layer names and exception parameters to ViewObject names and parameters.

getStateTokenId

public java.lang.String getStateTokenId()
Returns the container state token.

getStateToken

public java.lang.String getStateToken()
Returns the container state.
Specified by:
getStateToken in interface BindingContainer
Returns:
String The state token representing the current state of this RegionBinding.

validateToken

public void validateToken(java.lang.String sState)
validates that this container is in the same state as represented by the given string token
Specified by:
validateToken in interface BindingContainer
Parameters:
sState - State that this RegionBinding should be in.

getDataControl

public DCDataControl getDataControl()
*** For internal framework use only *** Returns the DCApplciation object to which this form binding belongs. This method is primarily for use in classic/direct bound JClient apps.

internalGetDataControl

protected DCDataControl internalGetDataControl()
*** For internal framework use only ***

findNamedObject

public java.lang.Object findNamedObject(java.lang.String expr)
*** For internal framework use only ***

getExecutableType

public final int getExecutableType()
Description copied from interface: oracle.adf.model.RegionBinding
Returns one of an enumeration of Executable binding types in the framework.

int value of 0 is reserved for RegionBinding or BindingContainer type.

Specified by:
getExecutableType in interface oracle.adf.model.RegionBinding
Specified by:
getExecutableType in class DCExecutableBinding

getFullName

public final java.lang.String getFullName()

getRegionController

public oracle.adf.model.RegionController getRegionController()
Description copied from interface: oracle.adf.model.RegionBinding
Returns an instance of RegionController that should handle the lifecycle for this RegionBinding.

By default this will return null. For Regions that have an overridden RegionController defined in the Region definition this will return an instance of the RegionController implementation.

This RegionBinding controller is invoked when this RegionBinding needs to refresh or validate it's contained RegionBindings.

Specified by:
getRegionController in interface oracle.adf.model.RegionBinding

getActionProcessor

public java.lang.Object getActionProcessor()
Description copied from interface: oracle.adf.model.RegionBinding
Returns an instance of java bean that may implement event-handling for actions defined on this RegionBinding.

A controller should delegate to this event processor for handling action events for those actions that have a corresponding method. Otherwise controller should invoke the ActionBinding directly.

Specified by:
getActionProcessor in interface oracle.adf.model.RegionBinding

hasRefreshParametersChanged

public final boolean hasRefreshParametersChanged()
Description copied from class: DCExecutableBinding
*** For internal framework use only ***
Specified by:
hasRefreshParametersChanged in interface DCIExecutable
Specified by:
hasRefreshParametersChanged in class DCExecutableBinding

getExecutableDef

public oracle.adf.model.binding.DCIExecutableDef getExecutableDef()
Description copied from class: DCExecutableBinding
*** For internal framework use only ***
Specified by:
getExecutableDef in interface DCIExecutable
Overrides:
getExecutableDef in class DCExecutableBinding

hasVariables

public final boolean hasVariables()
Specified by:
hasVariables in interface oracle.jbo.VariableManagerOwner

getVariableManager

public final oracle.jbo.VariableValueManager getVariableManager()
Specified by:
getVariableManager in interface oracle.jbo.VariableManagerOwner

getVariableManagerOwner

protected oracle.jbo.VariableManagerOwner getVariableManagerOwner()

ensureVariableManager

public oracle.jbo.VariableValueManager ensureVariableManager()
Specified by:
ensureVariableManager in interface oracle.jbo.VariableManagerOwner

getMessageBundleClass

public final java.lang.Class getMessageBundleClass()
Specified by:
getMessageBundleClass in interface oracle.jbo.VariableManagerOwner

getTransientRefreshFlag

public final int getTransientRefreshFlag()

Oracle Application Development Framework Model and Business Components Java API Reference 10.1.3.1.0
B28969-01


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