public final class ActiveModelContext extends Object
STATIC
, the ActiveDataModel should:
ActiveModelContext.getActiveModelContext
addActiveModelInfo
with the current keyPath and model attributeaddActiveModelInfo
might be expensive, isComponentInterestedInActiveData
may be called first to determine whether the call to addActiveModelInfo
will even be necessary.Modifier and Type | Method and Description |
---|---|
void |
addActiveModelInfo(ActiveDataModel activeModel, Object[] keyPath, String modelAttrName)
Registers the model key path and attribute to associate with the current active component attribute, if any.
|
static ActiveModelContext |
getActiveModelContext()
Retrieves the ActiveModelContext instance for this Thread.
|
javax.faces.component.UIComponent |
getCurrentActiveComponent()
Returns the current component that active data and auto-PPR information is being collected for.
|
javax.faces.component.UIComponent |
getEditableValueComponent()
Returns the current editable value component whose value is being retrieved, if any.
|
boolean |
isComponentInterestedInActiveData()
Returns
true if the current component supports active data and thus a call to addActiveModelInfo is worthwhile. |
public static ActiveModelContext getActiveModelContext()
public boolean isComponentInterestedInActiveData()
true
if the current component supports active data and thus a call to addActiveModelInfo
is worthwhile.true
if the current component supports active data.addActiveModelInfo(oracle.adf.view.rich.model.ActiveDataModel, java.lang.Object[], java.lang.String)
public void addActiveModelInfo(ActiveDataModel activeModel, Object[] keyPath, String modelAttrName)
Registers the model key path and attribute to associate with the current active component attribute, if any. If the current component doesn't support active data or the active data policy of the current ActiveDataModel is ActiveDataPolicy.STATIC
, no registration will occur.
addActiveModelInfo
with might be expensive, the ActiveDataModel implementation should first check that it's ActiveDataPolicy isn't ActiveDataPolicy.STATIC
and that isComponentInterestedInActiveData
is true
.activeModel
- The ActiveDataModel instance that will push the data.keyPath
- rowKey path to the model attribute name, if any. Active data on different paths will be ignored.modelAttrName
- Name of model attribute supporting active dataisComponentInterestedInActiveData()
public javax.faces.component.UIComponent getCurrentActiveComponent()
null
if no active data dependencies are currently being collected.ActiveComponentContext.pushActiveComponent(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RequestContext, javax.faces.component.UIComponent)
public javax.faces.component.UIComponent getEditableValueComponent()
ActiveComponentContext.pushEditableValueComponent(javax.faces.component.UIComponent)