public class DCBindingContainerDef extends DCExecutableBindingDef implements VariableManagerOwner
PersistableDefObject.CustomizationType, PersistableDefObject.PersonalizationType
Modifier and Type | Field and Description |
---|---|
protected static java.lang.String |
INTERNAL_REGION_PARAM_ALIASES |
protected java.lang.String |
mActionProcessorClassName |
protected java.lang.String |
mBindingContainerClassName |
protected java.lang.String |
mControllerClassName |
protected java.util.ArrayList |
mControls
Deprecated.
since 11.1.2.0.0. Use
getControlDefs() instead. |
protected boolean |
mEnableTokenValidation |
protected java.util.ArrayList |
mExecutables |
protected boolean |
mFindMode |
protected java.lang.String |
mFormClassName |
protected java.util.ArrayList |
mIterators |
protected DCLayoutDef |
mLayoutDef |
protected DefPersistable |
mOuter |
protected java.lang.String |
mPackage |
protected DCBindingContainerDef |
mParentDef |
protected java.lang.String |
msgBundleClassName |
protected DCBindingContainer.ValidationLevel |
mSkipValidation |
protected java.lang.String |
mValidationExpr |
protected java.util.ArrayList |
mValidators |
static java.lang.String |
PNAME_AllowsDynamicEventSubscriber |
static java.lang.String |
PNAME_BindingContainerClass |
static java.lang.String |
PNAME_ContainerActive |
static java.lang.String |
PNAME_Customizer |
static java.lang.String |
PNAME_CustomValidator |
static java.lang.String |
PNAME_DefaultEval |
static java.lang.String |
PNAME_EnableTokenValidation |
static java.lang.String |
PNAME_FindMode |
static java.lang.String |
PNAME_FormClass |
static java.lang.String |
PNAME_MsgBundleClass |
static java.lang.String |
PNAME_Package |
static java.lang.String |
PNAME_SkipValidation |
static java.lang.String |
PNAME_TYPE |
static java.lang.String |
PNAME_Viewable |
PNAME_attrHintsSuffix, PNAME_option, PNAME_option_ALWAYS, PNAME_option_DEFAULT, PNAME_option_DEFER, PNAME_option_IF_NEEDED, PNAME_option_NEVER, PNAME_option_PREPARE, PNAME_option_PREPARE_OPT, PNAME_option_REFRESH, PNAME_option_REFRESH_OPT, PNAME_option_RENDER, PNAME_option_RENDER_OPT, PNAME_optionExpr, PNAME_refreshAfter, RC_ALWAYS, RC_DEFAULT, RC_DEFER, RC_NEVER, RC_PREPARE, RC_PREPARE_OPT, RC_REFRESH, RC_REFRESH_OPT, RC_RENDER, RC_RENDER_OPT, RC_UNINIT
DEF_XMLNS, DEF_XMLNS_BASE, EMPTY_STR, PNAME_AccessorIterator, PNAME_Action, PNAME_Boolean, PNAME_Button, PNAME_ButtonGroup, PNAME_Calendar, PNAME_ComboBox, PNAME_ComboBoxLovEdit, PNAME_DataControlAction, PNAME_DefaultControl, PNAME_DynamicTable, PNAME_EnumList, PNAME_EventBinding, PNAME_EventEnabled, PNAME_EventEnabled_NONE, PNAME_EventEnabled_PPR, PNAME_EventEnabled_PUSH, PNAME_FormattedTextField, PNAME_Graph, PNAME_HGrid, PNAME_Iterator, PNAME_Label, PNAME_ListSingleSel, PNAME_LovButton, PNAME_LOVList, PNAME_MethodAction, PNAME_MethodIterator, PNAME_NavigationBar, PNAME_NavigationList, PNAME_Panel, PNAME_Parameter, PNAME_Permission, PNAME_ProgressBar, PNAME_ProgressBarAttr, PNAME_Query, PNAME_Range, PNAME_ScrollBar, PNAME_ScrollBarAttr, PNAME_Search, PNAME_Shuttle, PNAME_Slider, PNAME_SliderAttr, PNAME_Spinner, PNAME_Table, PNAME_TextField, PNAME_ToplinkIterator, PNAME_Tree, PNAME_TreeTable
mEditedProperties, mEditedPropertyExprs
DEF_MDS_CLIENT_KEY, DEF_SCOPE_ALL, DEF_SCOPE_PERS, DEF_SCOPE_SESSION, DEF_SCOPE_SHARED, DEF_SCOPE_SITE, DEF_SCOPE_USER, mBaseDefObject, mExtendedDefObjects, mObjectResolved, PERSDEF_MDS_CLIENT_KEY, PROPERTY_EXPRMAP
mObjName, mParent, mProperties, RES_ID_SUFFIX, RESID_SUFFIX
EXECUTABLE_ACTION, EXECUTABLE_ITERATORBINDING, EXECUTABLE_REGION
XML_STATEMENT
Modifier | Constructor and Description |
---|---|
|
DCBindingContainerDef() |
protected |
DCBindingContainerDef(DCLayoutDef layoutDef,
java.lang.String formClassName,
java.lang.String formBindingClassName) |
protected |
DCBindingContainerDef(DefPersistable outer) |
Modifier and Type | Method and Description |
---|---|
protected static java.lang.Class |
_findPersonalizerClass() |
void |
addControlDef(DCControlBindingDef control)
Internal: Applications should not use this method.
|
void |
addControlDef(DCControlBindingDef control,
DCLayoutConsDef layoutCons)
Internal: Applications should not use this method.
|
void |
addControlDefInContainer(DCControlBindingDef control,
boolean container)
Internal: Applications should not use this method.
|
void |
addIterator(DCIteratorBindingDef iter)
Internal: Applications should not use this method.
|
protected void |
addParameterDef(DCParameterDef def) |
boolean |
allowsDynamicEventSuscriber() |
void |
applyDiffChildren(DifferDetails dif,
DiffResolver resolver)
Applies changes to children defs.
|
DCBindingContainer |
createBindingContainer(ApplicationModule anchorAM)
Internal: Applications should not use this method.
|
DCBindingContainer |
createBindingContainer(BindingContext ctx)
Deprecated.
since 10.1.3. Use createBindingContainer(BindingContext ctx, DCBindingContainer parent, String name)
instead.
|
DCBindingContainer |
createBindingContainer(BindingContext ctx,
DCBindingContainer parent,
java.lang.String name)
Internal: Applications should not use this method.
|
DCControlBindingDef |
createControlDef(java.util.HashMap initValues)
Internal: Applications should not use this method.
|
java.util.ArrayList |
createControls(DCBindingContainer formBnd)
Internal: Applications should not use this method.
|
java.lang.Object |
createExecutableBinding(BindingContext ctx,
DCBindingContainer formBnd)
Internal: Applications should not use this method.
|
protected void |
createParameters(DCBindingContainer formBnd,
BindingContext ctx) |
DifferDetails |
diffChildren(DiffMergeable docDef,
DiffMergeable orgDef,
DifferDetails difDetails)
Performs diff of children defs.
|
VariableValueManager |
ensureVariableManager()
Internal: Applications should not use this method.
|
static DCBindingContainerDef |
findDefObject(java.lang.String name) |
static DCBindingContainerDef |
findDefObjectNoSub(java.lang.String name) |
static DCBindingContainerDef |
findSessionDefObject(java.lang.String name) |
java.lang.String |
getActionProcessorClassName()
Internal: Applications should not use this method.
|
java.lang.String |
getBindingContainerClassName()
Internal: Applications should not use this method.
|
DCControlBindingDef |
getControlDef(java.lang.String name)
Internal: Applications should not use this method.
|
java.util.ArrayList |
getControlDefs()
Returns copied list of control definitions.
|
java.util.List |
getControlDefsInternal() |
java.lang.String |
getControllerClassName()
Internal: Applications should not use this method.
|
java.lang.Object |
getCustomizerInternal() |
java.lang.String |
getCustomValidatorExpression() |
int |
getDefTypeId() |
int |
getExecutableType()
Return EXECUTABLE_REGION, EXECUTABLE_ITERATORBINDING or EXECUTABLE_ACTION
based on what kind of binding this definition creates.
|
boolean |
getFindMode()
Return true if the bindingContainer instances should start in findMode.
|
java.lang.String |
getFormClassName()
Internal: Applications should not use this method.
|
java.lang.String |
getFullName()
Gets this object's fully-qualified name.
|
java.util.ArrayList |
getIterators()
Internal: Applications should not use this method.
|
DCLayoutDef |
getLayoutDef()
Internal: Applications should not use this method.
|
java.lang.Class |
getMessageBundleClass()
Internal: Applications should not use this method.
|
java.lang.String |
getMessageBundleClassName()
Internal: Applications should not use this method.
|
java.lang.String |
getPackage()
Internal: Applications should not use this method.
|
DCControlBindingDef |
getParameterDef(java.lang.String name) |
java.util.ArrayList |
getParameterDefs()
Returns the parameterSet of all parameters to the page/regionController
|
protected java.lang.Class |
getPersonalizerClass() |
ResourceBundleDef |
getResourceBundleDef()
getResourceBundleDef gets the mResourceBundleDef value
|
DCBindingContainer.ValidationLevel |
getValidationLevel()
Internal: Applications should not use this method.
|
VariableValueManager |
getVariableManager()
Internal: Applications should not use this method.
|
protected VariableManagerOwner |
getVariableManagerOwner()
Internal: Applications should not use this method.
|
java.lang.String |
getViewableString()
Internal: Applications should not use this method.
|
java.lang.String |
getXMLElementTag()
Internal: Applications should not use this method.
|
boolean |
hasDefinitionBeenUpdated(DCBindingContainer container)
This method will return true if the definition object has been personalized
or removed.
|
boolean |
hasEventMapWithDynamicEventSubscriber() |
boolean |
hasVariables()
Internal: Applications should not use this method.
|
void |
init(java.util.HashMap initValues)
Internal: Applications should not use this method.
|
void |
initializeBindingContainer(BindingContext ctx,
DCBindingContainer formBnd)
This method will be used to initialize a newly created binding container or to fixup
and existing binding container with personalization metadata.
|
void |
initializeBindingContainer(DCBindingContainer formBnd,
ApplicationModule anchorAM)
Internal: Applications should not use this method.
|
void |
initializeBindingContainer(DCDataControl dc,
DCBindingContainer formBnd,
boolean initialize)
Internal: Applications should not use this method.
|
void |
initializeExecutableBinding(BindingContext ctx,
DCBindingContainer bindingContainer,
java.lang.Object binding)
Called to initialize the binding container when it's used as an executable within a parent binding container.
|
boolean |
is1012Expr()
Internal: Applications should not use this method.
#deprecated since 10.1.3.1 please use is1012StyleXML
|
boolean |
is1012StyleXML()
Internal: Applications should not use this method.
|
boolean |
isSkipValidation()
Internal: Applications should not use this method.
|
boolean |
isTokenValidationEnabled()
Internal: Applications should not use this method.
|
boolean |
isViewable() |
boolean |
isViewAuthorized(BindingContext ctx) |
protected void |
loadChildrenFromXML(DefElement xmlElement)
Internal: Applications should not use this method.
|
protected void |
loadVariables(DefElement xmlElement)
Internal: Applications should not use this method.
|
DCIteratorBindingDef |
lookupIterator(java.lang.String name) |
static void |
removeAppDefNameTL() |
void |
removeControlDef(DCControlBindingDef control)
Internal: Applications should not use this method.
|
DCBindingCustomizerInterface |
resolveCustomizer() |
protected void |
retrieveFromXML(DefElement xmlElement,
java.util.HashMap valueTab)
Internal: Applications should not use this method.
|
protected void |
setAppDefName(java.lang.String appDefName)
Internal: Applications should not use this method.
|
static void |
setAppDefNameTL(java.lang.String appDefName) |
void |
setBindingContainerDef(DCBindingContainerDef def)
Internal: Applications should not use this method.
|
void |
setEventMapDef(EventMapDef eventMap) |
void |
setFormClassName(java.lang.String formClassName)
Internal: Applications should not use this method.
|
void |
setLayoutDef(DCLayoutDef layoutDef)
Internal: Applications should not use this method.
|
void |
setPackage(java.lang.String sValue)
Internal: Applications should not use this method.
|
void |
setResourceBundleDef(ResourceBundleDef resourceBundleDef)
setResourceBundleDef sets the mResourceBundleDef value
|
void |
setValidationLevel(DCBindingContainer.ValidationLevel valLevel)
Internal: Applications should not use this method.
|
applyDiffContents, diffContents, getDependencyNames, getHintsSuffix, getPermissionClassName, getPermissionTargetName, getRefreshExpression, getRefreshOption, getRefreshOptionValue, internalGetRefreshOptionFromString, internalHasPermission, isRefreshable, isRefreshable
convertToBoolean, convertToDataChangePolicy, convertToInt, convertToIntArray, convertToLong, createAndLoadFromXML, getDefClassName, getDefXMLNameSpace, getOrigObject, getPermissionDef, getPersonalizer, getSubType, initSubType, isDirty, isNew, loadFromXML, loadPermissionDef, loadXMLContents, readXMLBoolean, readXMLInt, readXMLLong, readXMLString, readXMLStringArray, readXMLStringArrayList, readXMLStringArrayList, saveXMLContents, setDefClassName, setDirty, setNew, setOrigObject, setPermissionDef, setSubType, setupDefWriterFromMO, writeXMLContents
addDefImport, addExtendedDefObject, addSavedDocName, adjustPropertyMapForWrite, allocatePropertyMap, allocatePropertyMapForEdits, beginDiffObjects, checkEditable, checkStructWithOld, close, createFromXML, deregisterDefObject, deregisterSessionObject, diffObjects, ensureDifferDetails, findDefImport, finishedLoading, getBaseDir, getBasePackage, getDefImports, getDefManager, getDefTypeName, getDefWriter, getDefXMLElementTag, getEditedPropertiesMap, getEditedPropertyExpressionsMap, getEditedPropertyMap, getEditObject, getEditVersionsAsString, getExtendedDefObjectsInternal, getFileName, getFullDirName, getFullFileName, getMajorVersion, getMergeableFullName, getMergeableName, getMinorVersion, getPropertyMap, getSavedDocNames, getSessionSyncLock, getSubstitutedNames, getSyncLock, guaranteePath, hasExtendedDefObjects, includeCustomizationLayerInfo, isCustomizationEnabled, isCustomizationEnabled, isEditable, isFromTip, isLoadBase, isMajorVersionChanged, isMinorVersionChanged, isPersonalizationEnabled, isPersonalizationEnabled, isPropertyExpression, loadDefImports, loadDefObject, loadXMLContentsNoResolve, lockDefinitionContext, mergeChanges, mergePropertyMap, objectRemoved, reapplyChanges, registerClass, registerDefObject, registerSessionDefObject, registerSiteDefObject, remove, removeAndDelete, removeDefImport, removeExtendedDefObject, removeProperty, setCustomizationEnabled, setCustomizationEnabled, setDefaultBaseDir, setDefMgr, setEditable, setEditableFlag, setEditableObject, setFullName, setFullNameInternal, setLoadBase, setMajorVersionChanged, setPersonalizationEnabled, setPersonalizationEnabled, setProperty, setPropertyExpression, setPropertyMap, staticUpdateChildrenList, unlockDefinitionContext, updateChildrenList, updateMdsKeyFromTip, verifyVersion, verifyVersionNullCheck, writeChildren, writeContents, writeHeaderForNew, writeObject, writeVersion
addPropertySetName, enableUpdateCheck, getAllExtendedDefObjects, getBaseDefObject, getContainerDef, getContainerName, getDefinitionState, getDefScope, getExtendedDefObjects, getMdsKey, getMdsReference, getPropertySetName, getPropertySetNames, getRootBaseDefObject, isBaseDefFor, isComponentDefinition, isDeprecated, isDynamicDefinitionObject, isObjectResolved, isSubtypeOf, isSuppressUpdateCheck, loadCustomProperties, loadProperties, loadPropertiesInMap, loadPropertySetNames, loadSchemaProperties, resolveReferences, setBaseDefObject, setBaseDefObject, setDefScope, setMdsKey, setMdsReference, setName, setObjectResolved, setParent, setPropertySetName, staticLoadCustomProperties, staticLoadSchemaProperties, suppressUpdateCheck
getAllProperties, getName, getParent, getProperties, getPropertiesAsStrings, getPropertiesMap, getProperty, getProperty, getPropertyExpressionDef, getPropertyExpressionsMap, getPropertyNamesSet, getRawPropertyValue, getResourcesFromBundle, getStringFromMessageBundle, refreshProperty, removeProperty, requiresNamePrefixedResId, resolveObjectProperty, resolvePropertyRaw, setPropertiesMap, setPropertiesMap2, setProperty
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getName
getName
public static final java.lang.String PNAME_TYPE
public static final java.lang.String PNAME_FormClass
public static final java.lang.String PNAME_BindingContainerClass
public static final java.lang.String PNAME_Package
public static final java.lang.String PNAME_FindMode
public static final java.lang.String PNAME_Viewable
public static final java.lang.String PNAME_SkipValidation
public static final java.lang.String PNAME_CustomValidator
public static final java.lang.String PNAME_ContainerActive
public static final java.lang.String PNAME_DefaultEval
public static final java.lang.String PNAME_EnableTokenValidation
public static final java.lang.String PNAME_MsgBundleClass
public static final java.lang.String PNAME_Customizer
protected static final java.lang.String INTERNAL_REGION_PARAM_ALIASES
public static final java.lang.String PNAME_AllowsDynamicEventSubscriber
protected DCLayoutDef mLayoutDef
protected java.lang.String mFormClassName
protected java.lang.String mBindingContainerClassName
protected DefPersistable mOuter
protected java.lang.String mPackage
protected DCBindingContainerDef mParentDef
protected java.util.ArrayList mExecutables
protected java.util.ArrayList mIterators
protected java.util.ArrayList mControls
getControlDefs()
instead.protected boolean mFindMode
protected DCBindingContainer.ValidationLevel mSkipValidation
protected boolean mEnableTokenValidation
protected java.lang.String msgBundleClassName
protected java.lang.String mControllerClassName
protected java.lang.String mValidationExpr
protected java.lang.String mActionProcessorClassName
protected java.util.ArrayList mValidators
public DCBindingContainerDef()
protected DCBindingContainerDef(DefPersistable outer)
protected DCBindingContainerDef(DCLayoutDef layoutDef, java.lang.String formClassName, java.lang.String formBindingClassName)
protected static java.lang.Class _findPersonalizerClass()
public static void setAppDefNameTL(java.lang.String appDefName)
public static void removeAppDefNameTL()
public void init(java.util.HashMap initValues)
init
in class DCExecutableBindingDef
public static DCBindingContainerDef findDefObjectNoSub(java.lang.String name)
public static DCBindingContainerDef findDefObject(java.lang.String name)
public boolean hasDefinitionBeenUpdated(DCBindingContainer container)
container
- public static DCBindingContainerDef findSessionDefObject(java.lang.String name)
public java.lang.String getFullName()
NamedObjectImpl
getFullName
in interface DefPersistable
getFullName
in class NamedObjectImpl
public void setBindingContainerDef(DCBindingContainerDef def)
public boolean getFindMode()
@Concealed public boolean isSkipValidation()
@Concealed public DCBindingContainer.ValidationLevel getValidationLevel()
@Concealed public void setValidationLevel(DCBindingContainer.ValidationLevel valLevel)
@Concealed public java.lang.String getCustomValidatorExpression()
@Concealed public boolean isTokenValidationEnabled()
public java.lang.String getFormClassName()
public void setFormClassName(java.lang.String formClassName)
public final java.lang.String getMessageBundleClassName()
public final java.lang.String getControllerClassName()
public final java.lang.String getActionProcessorClassName()
public java.lang.String getBindingContainerClassName()
public java.lang.String getViewableString()
public boolean isViewable()
public boolean allowsDynamicEventSuscriber()
public java.lang.String getPackage()
public void setPackage(java.lang.String sValue)
public java.lang.String getXMLElementTag()
getXMLElementTag
in interface PersistentDefinition
getXMLElementTag
in class DCExecutableBindingDef
public DCLayoutDef getLayoutDef()
public void setLayoutDef(DCLayoutDef layoutDef)
public void setEventMapDef(EventMapDef eventMap)
public ResourceBundleDef getResourceBundleDef()
getResourceBundleDef
in interface VariableManagerOwnerBase
public void setResourceBundleDef(ResourceBundleDef resourceBundleDef)
resourceBundleDef
- ResourceBundleDefprotected void createParameters(DCBindingContainer formBnd, BindingContext ctx)
public java.util.ArrayList createControls(DCBindingContainer formBnd)
public DCBindingContainer createBindingContainer(BindingContext ctx)
public void initializeBindingContainer(BindingContext ctx, DCBindingContainer formBnd)
ctx
- formBnd
- protected void setAppDefName(java.lang.String appDefName)
public DCBindingContainer createBindingContainer(BindingContext ctx, DCBindingContainer parent, java.lang.String name)
public DCBindingContainer createBindingContainer(ApplicationModule anchorAM)
public java.lang.Object createExecutableBinding(BindingContext ctx, DCBindingContainer formBnd)
createExecutableBinding
in interface DCIExecutableDef
createExecutableBinding
in class DCExecutableBindingDef
public void initializeExecutableBinding(BindingContext ctx, DCBindingContainer bindingContainer, java.lang.Object binding)
initializeExecutableBinding
in interface DCIExecutableDef
initializeExecutableBinding
in class DCExecutableBindingDef
ctx
- bindingContainer
- binding
- public void initializeBindingContainer(DCBindingContainer formBnd, ApplicationModule anchorAM)
public void initializeBindingContainer(DCDataControl dc, DCBindingContainer formBnd, boolean initialize)
public java.util.ArrayList getIterators()
public DCIteratorBindingDef lookupIterator(java.lang.String name)
public void addIterator(DCIteratorBindingDef iter)
public java.util.ArrayList getControlDefs()
@Concealed public java.util.List getControlDefsInternal()
public DCControlBindingDef getControlDef(java.lang.String name)
public void addControlDef(DCControlBindingDef control)
public void addControlDefInContainer(DCControlBindingDef control, boolean container)
public void addControlDef(DCControlBindingDef control, DCLayoutConsDef layoutCons)
public void removeControlDef(DCControlBindingDef control)
public boolean is1012StyleXML()
public boolean is1012Expr()
protected void retrieveFromXML(DefElement xmlElement, java.util.HashMap valueTab)
retrieveFromXML
in class DCExecutableBindingDef
protected void loadChildrenFromXML(DefElement xmlElement)
loadChildrenFromXML
in class DCDefBase
public DCBindingCustomizerInterface resolveCustomizer()
public java.lang.Object getCustomizerInternal()
protected void addParameterDef(DCParameterDef def)
public java.util.ArrayList getParameterDefs()
public DCControlBindingDef getParameterDef(java.lang.String name)
public DCControlBindingDef createControlDef(java.util.HashMap initValues)
public int getExecutableType()
DCIExecutableDef
getExecutableType
in interface DCIExecutableDef
getExecutableType
in class DCExecutableBindingDef
public final java.lang.Class getMessageBundleClass()
Returns the class of the reference object.
getMessageBundleClass
in interface VariableManagerOwnerBase
protected void loadVariables(DefElement xmlElement)
protected VariableManagerOwner getVariableManagerOwner()
public final VariableValueManager getVariableManager()
getVariableManager
in interface VariableManagerOwnerBase
null
if one was not yet initialized.public final boolean hasVariables()
hasVariables
in interface VariableManagerOwnerBase
public VariableValueManager ensureVariableManager()
ensureVariableManager
in interface VariableManagerOwnerBase
public int getDefTypeId()
getDefTypeId
in class DCDefBase
protected java.lang.Class getPersonalizerClass()
getPersonalizerClass
in class DCDefBase
public boolean isViewAuthorized(BindingContext ctx)
public boolean hasEventMapWithDynamicEventSubscriber()
public DifferDetails diffChildren(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails)
DiffMergeable
difDetails
and
return it at the end.
For example, if this def has Child1 and Child2, its implementation should look something like:
public DifferDetails diffChildren(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails) { difDetails = diffChildrenChild1(docDef, orgDef, difDetails); difDetails = diffChildrenChild1(docDef, orgDef, difDetails); return difDetails; }
where diffChildrenChild1()
uses DifferChildren
's
helper method diffChildrenList
to diff the child defs.
diffChildren
in interface DiffMergeable
diffChildren
in class PersistableDefObject
docDef
- the document-level definitionorgDef
- the original definition. It could be
null
if the definition did not exist originallydifDetails
- the DifferDetails
that accumulate
the details of diff from the document-level (top-level) defDifferDetails
that has all the details
of diffpublic void applyDiffChildren(DifferDetails dif, DiffResolver resolver)
DiffMergeable
dif
contains the
changes to be applied to the children. For each child def, this method
should first retrieve the diff details for the child, which is of type
DifferChildren
. Then, it should call
DifferChildren.applyDiffChanges(oracle.jbo.mom.DiffChildrenMerge, oracle.jbo.mom.DiffResolver)
to perform
the change operation.
applyChanges()
requires a
DiffChildrenMerge
object, which has the insert,
update, and remove methods. 'this'
def object must
provide implmementation of these operations.
Here is a sample:
public void applyDiffChildren(DifferDetails dif, DiffResolver resolver) { DifferChangeMap detailMap = dif.getDetailMap(); if (detailMap != null) { DifferChildren difChild1 = (DifferChildren) detailMap.getValue(); if (difVCs != null) { DiffChildrenMerge dm = new DiffChildrenMerge() { public void insertChild(Object id, Object value) { .. perform insert op for Child1 .. } public void updateChild(Object id, Object value, Object oldValue) { .. perform update op for Child1 .. } public void removeChild(Object id) { .. perform remove op for Child1 .. } }; difChild1.applyDiffChanges(dm, resolver); } // Similarly for Child2 } }
applyDiffChildren
in interface DiffMergeable
applyDiffChildren
in class DCExecutableBindingDef