public class BoundParameters extends PersistableDefObject
PersistableDefObject.CustomizationType, PersistableDefObject.PersonalizationType
JIT_PACKAGE_NAME, mDebugToSkipEmptyDocForBug24949961, 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
mFullName, mObjName, mParent, mProperties, RES_ID_SUFFIX, RESID_SUFFIX
FLAG_DIRTY, FLAG_EDITABLE, FLAG_FROM_TIP, FLAG_LOAD_BASE, FLAG_LOAD_HL_DEFS, FLAG_MAJOR_VERSION_CHANGED, FLAG_MINOR_VERSION_CHANGED, FLAG_NEW, FLAG_NEW_RECURSE, FLAG_SKIP_WRITE, XML_STATEMENT
Modifier | Constructor and Description |
---|---|
protected |
BoundParameters(DefinitionManager defMgr,
int defScope) |
|
BoundParameters(int defScope) |
Modifier and Type | Method and Description |
---|---|
void |
addBoundParameter(BoundParameter param)
Add a BoundParameter to the parameter list.
|
BoundParameter |
addBoundParameter(DefElement elem) |
void |
addBoundParameter(java.lang.String name,
ExpressionDef exprDef) |
void |
addBoundParameter(java.lang.String name,
java.lang.String expr) |
void |
addBoundParameter(VariableImpl param)
Deprecated.
- use addBoundParameter(BoundParameter) instead.
|
BoundParameter |
addBoundParameterWithExpression(java.lang.String name,
java.lang.String expr) |
void |
applyDiffChildren(DifferDetails dif,
DiffResolver resolver)
Applies changes to children defs.
|
protected BoundParameter |
createBoundParameter() |
DifferDetails |
diffChildren(DiffMergeable docDef,
DiffMergeable orgDef,
DifferDetails difDetails)
Performs diff of children defs.
|
protected BoundParameter |
getBoundParameter(java.lang.String name) |
java.util.ArrayList |
getBoundParameterList() |
java.util.List<BoundParameter> |
getBoundParameters() |
java.lang.String |
getDefXMLElementTag() |
java.lang.String |
getDefXMLNameSpace() |
java.lang.String |
getFullName()
Gets this object's fully-qualified name.
|
java.lang.String |
getMergeableFullName()
Returns the fully qualified name of the diff-mergeable definition object.
|
java.lang.String |
getName()
Get the name of this object.
|
protected java.lang.String |
getVarMapXMLElementTag() |
boolean |
isDirty()
This method returns if an Object is modified from last save/load
|
void |
loadXMLContents(DefElement xmlElement,
java.lang.String fullName) |
boolean |
removeBoundParameter(java.lang.String name) |
void |
setDirty(boolean dirty)
This method marks the Object dirty
|
int |
size() |
void |
writeChildren(DefWriter jos)
Writes the Object's children to the Persistent storage
|
addChildren, addDefImport, addExtendedDefObject, addSavedDocName, adjustPropertyMapForWrite, allocatePDef, allocatePropertyMap, allocatePropertyMapForEdits, applyDiffContents, baseIsWriteObject, beginDiffObjects, buildChildName, buildFileName, callFinishedLoading, checkEditable, checkEditableWithDefWriter, checkStructWithOld, close, createEditPDef, createFromXML, deregisterDefObject, deregisterHLDef, deregisterSessionObject, diffChildrenHLDefs, diffChildrenProperties, diffContents, diffObjects, ensureDifferDetails, ensureDifferSkip, extractCustIntoPDef, findDefImport, finishedLoading, forgetChanges, getBaseDir, getBasePackage, getChildren, getDefImports, getDefManager, getDefTypeName, getDefWriter, getDifferSkip, getEditedPropertiesMap, getEditedPropertyExpressionsMap, getEditedPropertyMap, getEditObject, getEditVersionsAsString, getExtendedDefObjectsInternal, getFileName, getFullDirName, getFullFileName, getHLDefMap, getIdentificationAttributeName, getMajorVersion, getMergeableName, getMinorVersion, getOrigObject, getPropertyMap, getPropertyNamesSet, getSavedDocNames, getSessionSyncLock, getSubstitutedNames, getSyncLock, getXMLElementTag, guaranteePath, hasExtendedDefObjects, includeCustomizationLayerInfo, isAutoMerged, isCreateEditPDef, isCustomizationEnabled, isCustomizationEnabled, isEditable, isFromTip, isInheritPolicyStrict, isLoadBase, isLoadHLDefs, isMajorVersionChanged, isMinorVersionChanged, isNew, isNewRecurse, isPersonalizationEnabled, isPersonalizationEnabled, isPropertyExpression, isSaveToJSON, isSkipWrite, isWriteObject, loadDefImports, loadDefObject, loadXMLContentsNoResolve, lockDefinitionContext, lookupHLDef, makeNew, mergeChanges, mergeEditedPropertiesForJSON, mergePropertyMap, objectRemoved, postSaveContents, readJSONObject, reapplyChanges, registerClass, registerDefObject, registerHLDef, registerSessionDefObject, registerSiteDefObject, reloadFromXMLContents, remove, removeAndDelete, removeDefImport, removeExtendedDefObject, removeProperty, saveJSONContents, saveXMLContents, setCustomizationEnabled, setCustomizationEnabled, setDefaultBaseDir, setDefMgr, setEditable, setEditableFlag, setEditableObject, setForRuntime, setFullName, setFullNameInternal, setLoadBase, setLoadHLDefs, setMajorVersionChanged, setNew, setNewRecurse, setOrigObject, setPersonalizationEnabled, setPersonalizationEnabled, setProperty, setPropertyExpression, setPropertyMap, setSkipWrite, setupDefWriterFromMO, setWholeDefDirty, setWholeDefNew, staticUpdateChildrenList, transferDefChangesInto, unlockDefinitionContext, updateChildObject, updateChildrenList, updateMdsKeyFromTip, verifyVersion, verifyVersionNullCheck, writeContents, writeHeaderForNew, writeJSONContents, writeObject, writeVersion, writeXMLContents
addPropertySetName, enableUpdateCheck, getAllExtendedDefObjects, getBaseDefObject, getContainerDef, getContainerName, getDefinitionState, getDefScope, getExtendedDefObjects, getMdsKey, getMdsReference, getMdsReferenceName, getPropertySetName, getPropertySetNames, getRootBaseDefObject, isBaseDefFor, isComponentDefinition, isDeprecated, isDynamicDefinitionObject, isObjectResolved, isSubtypeOf, isSuppressUpdateCheck, loadCustomProperties, loadProperties, loadPropertiesInMap, loadPropertySetNames, loadSchemaProperties, objectFound, objectInserted, resolveReferences, setBaseDefObject, setBaseDefObject, setDefScope, setMdsKey, setMdsReference, setName, setObjectResolved, setParent, setPropertySetName, staticLoadCustomProperties, staticLoadSchemaProperties, suppressUpdateCheck
getAllProperties, getParent, getProperties, getPropertiesAsStrings, getPropertiesMap, getProperty, getProperty, getPropertyExpressionDef, getPropertyExpressionsMap, getPropertyExprEval, getRawPropertyValue, getResourcesFromBundle, getStringFromMessageBundle, hasProperty, refreshProperty, removeProperty, requiresNamePrefixedResId, resolveObjectProperty, resolvePropertyRaw, setPropertiesMap, setPropertiesMap2, setProperty, setPropertyExpressionMap, setRawPropertyValue
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getProperty, removeProperty, setProperty
protected BoundParameters(DefinitionManager defMgr, int defScope)
public BoundParameters(int defScope)
public boolean isDirty()
DefPersistable
isDirty
in interface DefPersistable
isDirty
in class PersistableDefObject
public void setDirty(boolean dirty)
DefPersistable
setDirty
in interface DefPersistable
setDirty
in class PersistableDefObject
dirty
- If true the Object is marked Dirty.public java.lang.String getName()
NamedObjectImpl
getName
in class NamedObjectImpl
public java.lang.String getFullName()
NamedObjectImpl
getFullName
in interface DefPersistable
getFullName
in class NamedObjectImpl
public java.lang.String getMergeableFullName()
DiffMergeable
getMergeableFullName
in interface DiffMergeable
getMergeableFullName
in class PersistableDefObject
public int size()
public java.util.ArrayList getBoundParameterList()
public java.util.List<BoundParameter> getBoundParameters()
protected BoundParameter createBoundParameter()
protected BoundParameter getBoundParameter(java.lang.String name)
@Concealed public BoundParameter addBoundParameter(DefElement elem)
@Restricted public void addBoundParameter(java.lang.String name, java.lang.String expr)
@Concealed public BoundParameter addBoundParameterWithExpression(java.lang.String name, java.lang.String expr)
@Restricted public void addBoundParameter(VariableImpl param)
@Concealed public void addBoundParameter(java.lang.String name, ExpressionDef exprDef)
public void addBoundParameter(BoundParameter param)
param
- parameter to be added.public boolean removeBoundParameter(java.lang.String name)
public void loadXMLContents(DefElement xmlElement, java.lang.String fullName)
loadXMLContents
in class PersistableDefObject
public void writeChildren(DefWriter jos)
PersistentDefinition
writeChildren
in interface PersistentDefinition
writeChildren
in class PersistableDefObject
jos
- the Output storage for persistenceprotected java.lang.String getVarMapXMLElementTag()
public java.lang.String getDefXMLElementTag()
getDefXMLElementTag
in interface PersistentDefinition
getDefXMLElementTag
in class PersistableDefObject
public java.lang.String getDefXMLNameSpace()
getDefXMLNameSpace
in interface PersistentDefinition
getDefXMLNameSpace
in class PersistableDefObject
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(<XML-tag-for-Child1>);
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 PersistableDefObject