Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle ADF Model
11g Release 1 (11.1.1)

E10653-03


oracle.adf.model.binding
Class DCBindingContainer

java.lang.Object
  extended by java.util.AbstractMap
      extended by oracle.jbo.common.JboAbstractMap
          extended by oracle.adf.model.binding.DCExecutableBinding
              extended by oracle.adf.model.binding.DCBindingContainer

All Implemented Interfaces:
java.util.Map, DCIExecutable, MutableRegionBinding, RegionBinding, BindingContainer, JboExceptionHandler, VariableManagerOwner, VariableManagerOwnerBase
Direct Known Subclasses:
JUFormBinding

public class DCBindingContainer
extends DCExecutableBinding
implements MutableRegionBinding, JboExceptionHandler, 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
javabean.class
name=DCBindingContainer

Nested Class Summary
protected static class DCBindingContainer.CalculatedViewable
          *** For internal framework use only ***
static class DCBindingContainer.EnumRefreshType
          Advanced for internal framework use only
static class DCBindingContainer.ValidationLevel
           

 

Nested classes/interfaces inherited from class java.util.AbstractMap
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V>

 

Nested classes/interfaces inherited from interface java.util.Map
java.util.Map.Entry<K,V>

 

Field Summary
static java.lang.String DC_BINDINGCONTAINER_ERROR
           
static java.lang.String DC_IGNORE_ERROR
           
protected  java.util.ArrayList mControlList
           
protected  DCDataControl mDataControl
           
protected  ApplicationModule mDataProvider
           
protected  boolean mIsBeingPersonalized
           
protected  java.util.ArrayList mIterBindingList
           
protected  java.util.ArrayList mParamsList
           

 

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

 

Fields inherited from class oracle.jbo.common.JboAbstractMap
MAP_NULL_VALUE

 

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
protected  java.util.List _internal_dbg_debug_data()
          framework use only
 void addBindingContainerChangeListenerForCtxEvent(DCBindingContainerChangeListener modList)
          Adds the given listener to this binding container's change listeners list id modListenerForEvents is null.
 void addChangeListener(DCBindingContainerChangeListener l)
          Adds the given listener to this binding container's change listeners list.
 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 addNestedBindingContainer(DCBindingContainer ctr)
           
 void addRegionListener(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.
 void afterSetAttribute(DCBindingContainerValueChangeEvent ev)
           
 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.
 BindingContext bindingContext()
           
 void cacheException(JboException ex)
           
 void callAfterRowNavigated(DCControlBinding ctrl, DCIteratorBinding iter)
           
 void callAfterSetAttribute(DCControlBinding ctrl, Row row, AttributeDef attrDef, java.lang.Object value)
           
 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  EventDispatcher createEventDispatcherInstance()
          createEventDispatcherInstance Returns a new EventDispatcher instance if it doesnt exixts
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.
 void endRequest()
          Advanced for internal framework use only public for test purposes only.
 VariableValueManager ensureVariableManager()
          Returns this object's Variable Value Manager.
 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.
 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()
           
 java.lang.String getAppDefName()
          *** For internal framework use only ***
 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.
 BindingContext getBindingContext()
          Returns the bindingContext to which this bindingContainer belongs.
 java.util.List<DCBindingContainerChangeListener> getChangeListeners()
          Returns a list of ChangeListeners (returns an empty list if no such listener was registered).
 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.
 EventDispatcher getEventDispatcher()
          getEventDispatcher Returns the EventDispatcher which this bindingContainer has
 EventMapDef getEventMapDef()
          Internal: Used to get the EventMapDef associated with the pageDef file.
 java.lang.String getExceptionDisplayMessage(JboException ex)
          Return the display message of a JboException usign the current DCErrorMessageHandler to format the error.
 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()
          Advanced for internal framework use only
 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  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.
 DCPermission getPermission()
           
 PermissionInfo getPermissionInfo()
          *** For internal framework use only ***
 java.util.List<RegionBinding> getRegionBindings()
          Return an ordered set of executableBindings.
 DCBindingContainer getRegionContainer()
          Returns the parent BindingContainer that includes this instance of BindingContainer as a nested BindingContainer.
 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).
 ResourceBundleDef getResourceBundleDef()
           
 DCBindingContainer getRootBindingContainer()
          *** For internal framework use only ***
 java.lang.Object getState()
          In the process of re-creating a binding container.
 java.lang.String getStateToken()
          Returns the container state.
 java.lang.String getStateTokenId()
          Returns the container state token.
 int getTransientRefreshFlag()
          Advanced for internal framework use only
 DCBindingContainer.EnumRefreshType getTransientRefreshType()
          Advanced for internal framework use only
 DCBindingContainer.ValidationLevel getValidationLevel()
           
 java.util.ArrayList getValidationListeners()
          Returns a list of ValidationListeners (returns an empty list if no such listener was registered).
 VariableValueManager getVariableManager()
          Returns this object's current Variable Value Manager.
protected  VariableManagerOwner getVariableManagerOwner()
           
protected  DCBindingContainer.CalculatedViewable getViewableFlagInternal()
          *** For internal framework use only ***
 java.lang.Object getViewComponent()
          *** For internal framework use only *** Returns the associated JPanel object.
 void handleException(java.lang.Exception ex, boolean lastEntryInPiggyback)
          Catches an exception thrown by the middle tier.
 void handleWarning(JboWarning warn)
          Catches a warning thrown by the middle tier.
 boolean hasDefinitionBeenUpdated()
          Returns true if the region's definition has been updated
 boolean hasExceptions()
           
 int hashCode()
          *** For internal framework use only ***
 boolean hasRefreshParametersChanged()
          *** For internal framework use only ***
 boolean hasVariables()
          Returns a flag indicating whether this object has Variables or not.
 boolean hasVetoWarning()
          Internal: Applications should not use this class.
 void ignoreExceptionForDisplay(JboException ex)
          The method is used to indicate that error message for the JboException should not be displayed.
protected  void initializeApplicationModule()
          *** For internal framework use only *** Used to setup reference to DCDataControl and oracle.jbo.Application objects.
 void initializeFromDef(BindingContext ctx, 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 ***
 void invokeCustomValidation()
           
 boolean isAppInPollingDCEMode()
          Deprecated. since 11.1.1 Polling mode information is moved into ADS.
 boolean isBeingPersonalized()
           
 boolean isDCEventsNotStarted()
          Advanced for internal framework use only public for test purposes only.
protected  boolean isEditingStopped()
          Jclient uses this to indicate if stopEdit completed before datacontrol can proceed with update cycle (commit etc).
 boolean isErrorHandlerActive()
          *** For internal framework use only ***
 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.
static boolean isInRefreshRegion()
           
 boolean isReleased()
          Returns true if this BindingContainer instance has been released.
 boolean isReleaseOnEndRequest()
           
 boolean isSkipValidation()
          Returns true if this bindingContainer is marked to skip datacontrol validation.
 boolean isTokenValidationEnabled()
          Returns true if token validation is enabled for this binding container.
 boolean isViewable()
          *** For internal framework use only ***
 void maybePrintAppDefNameDiagnostic()
           
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 processContextualEvents()
          processContextualEvents used to process queued events
 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.
protected  java.lang.String processFormToken(java.lang.String state)
           
 void processInputValues(java.util.Map inputValues)
          *** For internal framework use only ***
protected  void processRegionBindingException(JboException ex)
          In Swing, suppress multiple error dialogs.
 void putVetoWarning(JboWarning warn)
          Internal: Applications should not use this class.
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
 RegionBinding recreateRegionBinding(java.lang.String name)
           
 void refresh()
          Invokes refreshControl.
 void refresh(int refreshFlag)
          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.
 void refreshControl()
          Refresh the binding container with control data.
 boolean refreshIfNeeded()
          *** For internal framework use only ***
 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.
 void removeChangeListener(DCBindingContainerChangeListener l)
          Removes the given listener from this binding container's modification listeners list.
 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(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.
protected  void removeViewScopeErrorState()
           
 void reportException(java.lang.Throwable th)
          If DCDataControl is setup, then invoke DCDataControl.reportException to report any exceptions.
protected  void resetExceptionState()
          Advanced for internal framework use only
 void resetInputState()
          Resets the error state for all control bindings.
 void restoreFromState(java.lang.Object stateObject)
          Initialize binding instance with value from state object
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
protected  void setAppDefName(java.lang.String appDefName)
          *** For internal framework use only ***
 void setApplicationModule(ApplicationModule am)
          *** For internal framework use only *** Sets the ApplicationModule reference
protected  void setBindingContext(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 setEventDispatcher(EventDispatcher eventDispatcher)
          setEventDispatcher sets the EventDispatcher to this bindingContainer
 void setEventMapDef(EventMapDef eventMap)
           
 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 setIsBeingPersonalized(boolean isBeingPersonalized)
           
 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.
 void setRegionController(RegionController controller)
           
 void setReleaseOnEndRequest(boolean release)
          Advanced for internal framework use only Used by ADS to inform the BindingCOntainer to stay around on release so that events can be channeled through the bindings.
 void setSkipValidation(boolean flag)
          Advanced for internal framework use only Turns off BindingContainer's validation.
 void setValidationLevel(DCBindingContainer.ValidationLevel level)
           
 void setViewable(boolean flag)
          Internal...used by components/subclasses that want to make this bindingContainer not viewable based on their conditions.
protected  void setViewableFlagInternal(DCBindingContainer.CalculatedViewable viewable)
          *** For internal framework use only ***
protected  void setViewComponentInternal(java.lang.Object panel)
          *** For internal framework use only *** Sets internal member variable with the given panel instance.
 int startDCEvents(DCIteratorBinding iter, int from)
          Advanced for internal framework use only public for test purposes only.
 void stopDCEvents(DCIteratorBinding iter)
          Advanced for internal framework use only public for test purposes only.
 java.lang.String toString()
           
protected  void updateName(java.lang.String oldName, java.lang.String newName)
          *** For internal framework use only ***
 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 validateReferredDataControls()
           
 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, getPermissionTargetName, getRefreshExpression, getRefreshOption, isRefreshable, isRefreshed, removeDependentExecutable, resetDependentsRefresh, setBindingContainer, setExecutableDef, setName, setRefreshed, setRefreshExpression, setRefreshOption

 

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

 

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

DC_BINDINGCONTAINER_ERROR

public static final java.lang.String DC_BINDINGCONTAINER_ERROR
See Also:
Constant Field Values

DC_IGNORE_ERROR

public static final java.lang.String DC_IGNORE_ERROR
See Also:
Constant Field Values

mDataControl

protected DCDataControl mDataControl

mParamsList

protected java.util.ArrayList mParamsList

mIterBindingList

protected java.util.ArrayList mIterBindingList

mControlList

protected java.util.ArrayList mControlList

mDataProvider

protected ApplicationModule mDataProvider

mIsBeingPersonalized

protected boolean mIsBeingPersonalized

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

updateName

protected void updateName(java.lang.String oldName,
                          java.lang.String newName)
Description copied from class: DCExecutableBinding
*** For internal framework use only ***
Overrides:
updateName in class DCExecutableBinding

isInRefreshRegion

public static boolean isInRefreshRegion()

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.

getEventMapDef

public EventMapDef getEventMapDef()
Internal: Used to get the EventMapDef associated with the pageDef file.

setEventMapDef

public void setEventMapDef(EventMapDef eventMap)

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(BindingContext ctx)
*** For internal framework use only ***

getAppDefName

public java.lang.String getAppDefName()
*** For internal framework use only ***
Returns:
the full name of the application definition that created this container

setAppDefName

protected void setAppDefName(java.lang.String appDefName)
*** For internal framework use only ***
Parameters:
appDefName - the full name of the application definition that created this container

bindingContext

public final BindingContext bindingContext()
Returns:
binding context
For internal use only. Application developers should not use this

getBindingContext

public 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 ***

addBindingContainerChangeListenerForCtxEvent

public void addBindingContainerChangeListenerForCtxEvent(DCBindingContainerChangeListener modList)
Adds the given listener to this binding container's change listeners list id modListenerForEvents is null.

initializeFromDef

public void initializeFromDef(BindingContext ctx,
                              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 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(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<RegionBinding> getRegionBindings()
Return an ordered set of executableBindings.
Specified by:
getRegionBindings in interface RegionBinding

getExecutableBindings

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

findRegionBinding

public final RegionBinding findRegionBinding(java.lang.String name)

recreateRegionBinding

public final RegionBinding recreateRegionBinding(java.lang.String name)
Parameters:
name -
Returns:
For internal use only. Application developers should not use this
not for public use

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.

addNestedBindingContainer

public void addNestedBindingContainer(DCBindingContainer ctr)
Parameters:
ctr -
For internal use only. Application developers should not use this

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
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 regionController.
Specified by:
getOperationBinding in interface BindingContainer
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.

getRootBindingContainer

public DCBindingContainer getRootBindingContainer()
*** For internal framework use only ***

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 ***

isAppInPollingDCEMode

public final boolean isAppInPollingDCEMode()
Deprecated. since 11.1.1 Polling mode information is moved into ADS.

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 for web clients is to not execute but for ADFSwing 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.
Specified by:
release in interface BindingContainer

removeViewScopeErrorState

protected void removeViewScopeErrorState()

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 DCIExecutable
Specified by:
release in interface RegionBinding
Overrides:
release in class DCExecutableBinding
Parameters:
flags - could be one of the enumerations in DCDataControl. See DCDataControl.release()

isReleased

public boolean isReleased()
Returns true if this BindingContainer instance has been released.

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.

callAfterSetAttribute

public void callAfterSetAttribute(DCControlBinding ctrl,
                                  Row row,
                                  AttributeDef attrDef,
                                  java.lang.Object value)

callAfterRowNavigated

public void callAfterRowNavigated(DCControlBinding ctrl,
                                  DCIteratorBinding iter)

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.

afterSetAttribute

public void afterSetAttribute(DCBindingContainerValueChangeEvent ev)

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: