public class ListBindingDefImpl extends ListBindingDef
PersistableDefObject.CustomizationType, PersistableDefObject.PersonalizationTypeLIST_CRITERIA_DISPLAY_HINT, LIST_CRITERIA_DISPLAY_HINT_EXECUTE, LIST_CRITERIA_DISPLAY_HINT_HIDE, LIST_CRITERIA_NAME, PNAME_AttrExpressions, PNAME_AttrNames, PNAME_ComboAttrCount, PNAME_ComboRowCount, PNAME_DerivedAttrNames, PNAME_LabelList, PNAME_ListAttrNames, PNAME_ListDelimiter, PNAME_ListDisplayAttrNames, PNAME_ListIterName, PNAME_ListNullValueFlag, PNAME_ListNullValueId, PNAME_ListOperMode, PNAME_ListRangeSize, PNAME_ListRSIName, PNAME_ListServerBindingName, PNAME_ListVOName, PNAME_MRUCount, PNAME_MRUId, PNAME_MRUItems, PNAME_RowLevelBinds, PNAME_StaticList, PNAME_StaticListDT, PNAME_ValueList, STR_LIST_ADD_NULL_AT_END, STR_LIST_ADD_NULL_AT_START, STR_LIST_ADD_NULL_NOWHEREmEditedProperties, mEditedPropertyExprsDEF_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_EXPRMAPmFullName, mObjName, mParent, mProperties, RES_ID_SUFFIX, RESID_SUFFIXXML_STATEMENT| Constructor and Description |
|---|
ListBindingDefImpl(DefinitionManager defMgr,
int defScope) |
ListBindingDefImpl(ListBindingDef other) |
| Modifier and Type | Method and Description |
|---|---|
void |
addAppliedViewCriteria(PDefViewCriteria pVC) |
void |
addBoundParameter(java.lang.String name,
java.lang.String expr) |
void |
applyDiffChildren(DifferDetails dif,
DiffResolver resolver)
Applies changes to children defs.
|
void |
copyFrom(ListBindingDef odef)
Internal: Applications should not use this method.
|
DifferDetails |
diffChildren(DiffMergeable docDef,
DiffMergeable orgDef,
DifferDetails difDetails)
Performs diff of children defs.
|
protected ViewAccessorDef |
findOrCreatePreferredAccessorDef(RowDef voDef,
ViewAccessorDef vaDef,
java.lang.String prefCrName) |
java.util.List<PDefViewCriteria> |
getAppliedViewCriterias() |
java.util.ArrayList |
getBoundParameterList() |
BoundParameters |
getBoundParameters() |
java.lang.String |
getPreferredCriteriaName() |
void |
loadFromXML(DefElement xmlElement) |
PDefViewCriteria |
lookupAppliedViewCriteria(java.lang.String name) |
boolean |
removeAppliedViewCriteria(java.lang.String name) |
void |
writeChildren(DefWriter jos)
Writes the Object's children to the Persistent storage
|
void |
writeContents(DefWriter jos)
Objects should write their persistence output in this method
|
applyDiffContents, convertListNullValueFlag, convertListNullValueFlag, convertToBoolean, convertToInt, convertToIntArray, diffContents, filterAndApplyListWithCaseCheck, filterList, getAttrExpressions, getAttrNames, getComboDisplayAttributeCount, getComboDisplayRowCountHint, getDefXMLElementTag, getDelimiter, getDerivedAttrNames, getDisplayCriteriaName, getLabelList, getListAttrNames, getListDisplayAttrNames, getListRangeSize, getListRSIName, getListVOName, getMRUCount, getMRUItems, getNullValueFlag, getNullValueId, getNullValueText, getResourceBundleDef, getResourcePrefix, getRowLevelBinds, getSelectedDisplayValues, getValueList, init, isAutoExecuteCriteria, isCriteriaShown, isMRUCountDefined, isStaticList, readXMLBoolean, readXMLInt, readXMLString, readXMLStringArray, setAttrExpressions, setAttrNames, setAutoExecuteCriteria, setComboDisplayAttributeCount, setComboDisplayRowCountHint, setCriteriaShown, setDelimiter, setDerivedAttrNames, setDisplayCriteriaName, setLabelList, setListAttrNames, setListDisplayAttrNames, setListRangeSize, setListRSIName, setListVOName, setMRUCount, setMRUItems, setNullValueFlag, setNullValueId, setNullValueText, setParent, setPreferredCriteriaName, setResourceBundleDef, setRowLevelBinds, setStaticList, setValueListaddDefImport, addExtendedDefObject, addSavedDocName, adjustPropertyMapForWrite, allocatePropertyMap, allocatePropertyMapForEdits, beginDiffObjects, checkEditable, checkStructWithOld, close, createFromXML, deregisterDefObject, deregisterSessionObject, diffObjects, ensureDifferDetails, findDefImport, finishedLoading, getBaseDir, getBasePackage, getDefImports, getDefManager, getDefTypeName, getDefWriter, getDefXMLNameSpace, getEditedPropertiesMap, getEditedPropertyExpressionsMap, getEditedPropertyMap, getEditObject, getEditVersionsAsString, getExtendedDefObjectsInternal, getFileName, getFullDirName, getFullFileName, getMajorVersion, getMergeableFullName, getMergeableName, getMinorVersion, getOrigObject, getPropertyMap, getSavedDocNames, getSessionSyncLock, getSubstitutedNames, getSyncLock, getXMLElementTag, guaranteePath, hasExtendedDefObjects, includeCustomizationLayerInfo, isCustomizationEnabled, isCustomizationEnabled, isDirty, isEditable, isFromTip, isLoadBase, isMajorVersionChanged, isMinorVersionChanged, isNew, isPersonalizationEnabled, isPersonalizationEnabled, isPropertyExpression, loadDefImports, loadDefObject, loadXMLContents, loadXMLContentsNoResolve, lockDefinitionContext, mergeChanges, mergePropertyMap, objectRemoved, reapplyChanges, registerClass, registerDefObject, registerSessionDefObject, registerSiteDefObject, remove, removeAndDelete, removeDefImport, removeExtendedDefObject, removeProperty, saveXMLContents, setCustomizationEnabled, setCustomizationEnabled, setDefaultBaseDir, setDefMgr, setDirty, setEditable, setEditableFlag, setEditableObject, setFullName, setFullNameInternal, setLoadBase, setMajorVersionChanged, setNew, setOrigObject, setPersonalizationEnabled, setPersonalizationEnabled, setProperty, setPropertyExpression, setPropertyMap, setupDefWriterFromMO, staticUpdateChildrenList, unlockDefinitionContext, updateChildrenList, updateMdsKeyFromTip, verifyVersion, verifyVersionNullCheck, writeHeaderForNew, writeObject, writeVersion, writeXMLContentsaddPropertySetName, 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, setPropertySetName, staticLoadCustomProperties, staticLoadSchemaProperties, suppressUpdateCheckgetAllProperties, getFullName, getName, getParent, getProperties, getPropertiesAsStrings, getPropertiesMap, getProperty, getProperty, getPropertyExpressionDef, getPropertyExpressionsMap, getPropertyNamesSet, getRawPropertyValue, getResourcesFromBundle, getStringFromMessageBundle, refreshProperty, removeProperty, requiresNamePrefixedResId, resolveObjectProperty, resolvePropertyRaw, setPropertiesMap, setPropertiesMap2, setPropertyclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetFullNamepublic ListBindingDefImpl(DefinitionManager defMgr, int defScope)
public ListBindingDefImpl(ListBindingDef other)
protected ViewAccessorDef findOrCreatePreferredAccessorDef(RowDef voDef, ViewAccessorDef vaDef, java.lang.String prefCrName)
public java.util.List<PDefViewCriteria> getAppliedViewCriterias()
public void addAppliedViewCriteria(PDefViewCriteria pVC)
public PDefViewCriteria lookupAppliedViewCriteria(java.lang.String name)
public boolean removeAppliedViewCriteria(java.lang.String name)
public void copyFrom(ListBindingDef odef)
copyFrom in class ListBindingDefpublic BoundParameters getBoundParameters()
public java.util.ArrayList getBoundParameterList()
public java.lang.String getPreferredCriteriaName()
getPreferredCriteriaName in class ListBindingDefpublic void loadFromXML(DefElement xmlElement)
loadFromXML in class ListBindingDefpublic void addBoundParameter(java.lang.String name,
java.lang.String expr)
public void writeChildren(DefWriter jos)
PersistentDefinitionwriteChildren in interface PersistentDefinitionwriteChildren in class ListBindingDefjos - the Output storage for persistencepublic void writeContents(DefWriter jos)
PersistentDefinitionwriteContents in interface PersistentDefinitionwriteContents in class ListBindingDefjos - the Output storage for persistencepublic DifferDetails diffChildren(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails)
DiffMergeabledifDetails 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 DiffMergeablediffChildren in class ListBindingDefdocDef - 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)
DiffMergeabledif 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 DiffMergeableapplyDiffChildren in class ListBindingDef