public abstract class RowDef extends MetaObject implements StructureDef, ValidationManager, ExprValueSupplier, ExprValueTypeSupplier, AttributeDependencyManager, GlobalOperationsSupplier
PersistableDefObject.CustomizationType, PersistableDefObject.PersonalizationType
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
mAliasName
Database alias name for this definition object.
|
protected int |
mBindingStyle
The binding style for this object.
|
static int |
SI_AliasName |
static int |
SI_BindingStyle |
static int |
SI_ClientProxyClassName |
static int |
SI_ComponentClass |
static int |
SI_ComponentInterfaceName |
static int |
SI_MsgBundleClass |
static int |
SMAX_RemotableCompDef |
static int |
SMAX_RowDef |
INHERIT_POLICY_DEFAULT, INHERIT_POLICY_LEGACY, INHERIT_POLICY_STRICT, mComponentClass, mDebug_checkDef_throw, PERSMERGED_BASE_PACKAGE, PUBLISH_TO_BUSINESS_EDITOR_DEFAULT, PUBLISH_TO_BUSINESS_EDITOR_FALSE, PUBLISH_TO_BUSINESS_EDITOR_TRUE, SI_CustIntoStaticDef, SI_InheritPersonalization, SI_InheritPolicy, SI_MessageBundleClass, SI_ResourceBundleDef, SMAX_MetaObject
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 and Type | Method and Description |
---|---|
KeyDef |
addAltKey(int indx,
java.lang.String name,
java.lang.String[] components) |
java.util.Map |
addChildren(java.util.Map m,
boolean recurse,
java.lang.Class cls) |
protected void |
addExtendedDefObject(DefinitionObject extendedDefObject) |
void |
addForwardDependency(java.lang.String attrName,
AttributeDependency dep)
Deprecated.
since 11.1.1.5.0j
|
void |
addForwardDependency(java.lang.String attrName,
java.lang.String depName) |
void |
addListBindingDef(ListBindingDef lbDef) |
void |
addListBindingDef(ListBindingDef lbDef,
boolean bReplace) |
void |
addOperation(OperationDefinitionImpl opDef)
For internal framework use only.
|
void |
addRowOperation(OperationDefinitionImpl opDef)
For internal framework use only.
|
OperationDefinitionImpl |
addRowScriptOperation(java.lang.String name,
java.lang.String returnType,
java.util.LinkedHashMap<java.lang.String,java.lang.String> params,
java.lang.String body)
For internal framework use only.
|
OperationDefinitionImpl |
addScriptOperation(java.lang.String name,
java.lang.String returnType,
java.util.LinkedHashMap<java.lang.String,java.lang.String> params,
java.lang.String body)
For internal framework use only.
|
OperationDefinitionImpl |
addScriptRowOperation(java.lang.String name,
java.lang.String returnType,
java.util.LinkedHashMap<java.lang.String,java.lang.String> params,
java.lang.String body)
For internal framework use only.
|
void |
addValidator(JboValidatorInterface listener) |
void |
addViewAccessorDef(ViewAccessorDef va) |
void |
addViewFilterUsage(ViewFilterUsage bindDef) |
protected java.lang.StringBuffer |
appendBindingNameForAttr(java.lang.StringBuffer strBuf,
AttributeDef attrDef) |
protected int |
appendBindingSpec(java.lang.StringBuffer strBuf,
int bindingStyle,
int bindIndex,
AttributeDef attrDef,
AttributeDef theOtherAttrDef) |
protected int |
appendBindingSpec(java.lang.StringBuffer strBuf,
int bindingStyle,
int bindIndex,
AttributeDef attrDef,
AttributeDef theOtherAttrDef,
AssociationEnd assocEnd) |
void |
applyDiffChildren(DifferDetails dif,
DiffResolver resolver)
Applies changes to children defs.
|
void |
cacheJavaMethodDefs(java.util.ArrayList al,
boolean row) |
protected abstract KeyDef |
createAltKey(java.lang.String keyName,
int keyIndex,
java.lang.String[] components) |
protected void |
createDef()
This method should be used to perform custom-metadata initialization
in a subclass of RowDef.
|
DifferDetails |
diffChildren(DiffMergeable docDef,
DiffMergeable orgDef,
DifferDetails difDetails)
Performs diff of children defs.
|
DifferDetails |
diffObjects(DiffMergeable docDef,
DiffMergeable orgDef,
DifferDetails difDetails)
The work-horse method performing diff between two defs of this
def type.
|
protected boolean |
discrValuesQualify(java.lang.Object[] values) |
ExprCodeSource |
editCodeSource(ExprCodeSource codeSource)
Notify that ComponentOperationsManager that the client expects to
edit the CodeSource.
|
ExprCodeSource |
ensureCodeSource(ExprDef exprDef)
Ensure a named code source in the operations manager.
|
ExprCodeSource |
ensureCodeSource(ExprDef exprDef,
java.lang.String codeSourceName) |
KeyDef |
findAltKeyDef(java.lang.String name) |
AttributeDef |
findAttrDefIncludingPDef(java.lang.String attrName) |
abstract AttributeDef |
findAttributeDef(java.lang.String name)
Gets an attribute definition, given its name.
|
protected RowDef |
findDefForDiscrValues(java.lang.Object[] values,
boolean recurse) |
RowDef |
findDefForDiscrValues2(java.lang.Object[] values,
boolean recurse) |
ListBindingDef |
findListBindingDef(java.lang.String name) |
OperationDefinitionImpl |
findOperationDefinition(java.lang.String id)
For internal framework use only.
|
OperationDefinitionImpl |
findRowOperationDefinition(java.lang.String id)
For internal framework use only.
|
ViewAccessorDef |
findViewAccessorDef(java.lang.String name) |
java.lang.String |
getAliasName()
Returns the database alias that was declared for this definition object at Design-Time.
|
java.util.HashMap |
getAllProperties(java.util.HashMap map,
LocaleContext locale) |
AttributeDefImpl[] |
getAltKeyAttrDefs(int keyIndex) |
AttributeDefImpl[] |
getAltKeyAttrDefs(java.lang.String keyName) |
int |
getAltKeyCount() |
KeyDef |
getAltKeyDef(int keyIndex) |
int |
getAltKeyIndex(java.lang.String name) |
java.lang.String[] |
getAltKeyNames() |
protected abstract AttributeDefImpl |
getAttrDefFromVTable(java.lang.String attrName) |
abstract int |
getAttributeCount()
Returns the number of defined attributes.
|
abstract AttributeDef |
getAttributeDef(int index)
Gets an attribute definition, given its index.
|
protected abstract AttributeDefImpl[] |
getAttributeDefImpls() |
abstract AttributeDef[] |
getAttributeDefs()
Gets the defined attributes.
|
int |
getAttributeIndexOf(java.lang.String name)
Finds the index (0-based) of the named attribute.
|
java.util.HashSet<java.lang.String> |
getBackwardDependencies(java.lang.String attrName) |
java.util.List |
getBackwardDependencyAttributes(java.lang.String attrName) |
abstract java.lang.Class |
getBaseComponentClass() |
int |
getBindingStyle()
Returns the Oracle or JDBC binding style defined for this Entity
definition.
|
java.util.List |
getCachedJavaMethodDefs(boolean row) |
java.lang.String |
getClientProxyClassName() |
java.lang.Class |
getComponentClass() |
java.lang.String |
getComponentInterfaceName() |
protected ComponentOperations |
getComponentOperations()
For internal framework use only.
|
DataSourceDef |
getDataSourceDef() |
java.lang.String |
getDefFullName()
Returns the fully qualified name of the structure's base definition.
|
java.lang.String |
getDefName()
Returns the structure's base definition name (short form).
|
protected AttributeDefImpl[] |
getDiscrColumns()
Returns the AttributeDef's of the discriminator columns.
|
protected java.lang.String |
getEffectiveClientProxyClassName() |
protected java.lang.String |
getEffectiveComponentInterfaceName() |
AttributeDefImpl |
getEffectiveDateTransientAttr()
Retuns the Attribute definition that stores the Effective Date
value in a row.
|
java.lang.Object |
getExprVarVal(java.lang.String varName) |
java.lang.Class |
getExprVarValType(java.lang.String varName) |
java.util.HashSet<java.lang.String> |
getForwardDependencies(java.lang.String attrName) |
java.util.List |
getForwardDependencyAttributes(java.lang.String attrName) |
OperationSupplier |
getGlobalOperations() |
java.util.ArrayList |
getListBindingDefs() |
OperationDefinitionsImpl |
getOperationDefinitions() |
java.util.List<PDefAttribute> |
getPersonalizedAttributeList() |
protected abstract AttributeDefImpl[] |
getPrimaryKeys() |
abstract AttributeDef[] |
getRawAttributeDefs(boolean procAccessors) |
ResourceBundleDef |
getResourceBundleDef(java.lang.String resBundleId) |
abstract java.lang.Class |
getRowClass() |
OperationDefinitionsImpl |
getRowOperationDefinitions() |
protected int |
getScalarDirtyCount()
Returns the number of scalar value attributes in this def object.
|
OperationDefinitionsImpl |
getScriptOperationDefinitions() |
OperationDefinitionsImpl |
getScriptRowOperationDefinitions() |
StructureDef |
getStructureDef() |
java.util.ArrayList |
getValidators()
Get the list of JboValidatorInterface objects registered with this entity
|
java.util.ArrayList |
getViewAccessorDefs() |
ViewFilterUsage |
getViewFilterUsage(java.lang.String usageName) |
java.util.ArrayList |
getViewFilterUsages() |
abstract boolean |
hasDataSecurity() |
boolean |
hasExprVarVal(java.lang.String varName) |
boolean |
isAttributeDefInherited(java.lang.String attrName) |
boolean |
isComponentDefinition()
Returns a value indicating whether the
DefinitionObject is
a full component definition or not. |
boolean |
isDynamicCodeSourceEnabled() |
boolean |
isEffectiveDated()
Tests if the row definition corresponds to an Effective Dated
object.
|
protected static void |
loadFromXML(DefElement xmlElement,
oracle.jbo.server.RemotableCompDef defObj) |
protected void |
loadListBindings(DefElement xmlElement) |
protected void |
loadOperationDefinitions(DefElement xmlElement)
For internal framework use only.
|
protected void |
loadPDefAttribute(DefElement elem,
int index) |
protected void |
loadPDefAttributes(DefElement xmlElement) |
protected ViewAccessorDef |
loadViewAccessor(DefElement vaElem) |
protected void |
loadViewAccessors(DefElement xmlElement) |
protected void |
loadViewFilterUsages(DefElement xmlElement) |
void |
loadXMLContentsNoResolve(DefElement xmlElement,
java.lang.String fullName) |
KeyDef |
lookupAltKeyDef(java.lang.String name) |
AttributeDef |
lookupAttrDefIncludingPDef(java.lang.String attrName) |
abstract AttributeDef |
lookupAttributeDef(java.lang.String name)
Gets an attribute definition, given its name.
|
ExprCodeSource |
lookupCodeSource(java.lang.String name)
For internal framework use only.
|
ExprDef |
lookupExprDef(OwnerType type,
java.lang.String path)
Search for an ExprDef in the ComponentOperationsManager's namespace.
|
ListBindingDef |
lookupListBindingDef(java.lang.String name) |
OperationDefinitionImpl |
lookupOperationDefinition(java.lang.String id)
For internal framework use only.
|
PDefAttribute |
lookupPersonalizedAttribute(java.lang.String attrName) |
AttributeDef |
lookupRawAttributeDef(java.lang.String name,
boolean procAccessors) |
OperationDefinitionImpl |
lookupRowOperationDefinition(java.lang.String id)
For internal framework use only.
|
OperationDefinitionImpl |
lookupRowOperationDefinition(java.lang.String name,
java.lang.String returnType,
java.lang.Class[] params) |
JboValidatorInterface |
lookupValidator(java.lang.String name) |
ViewAccessorDef |
lookupViewAccessorDef(java.lang.String name) |
protected abstract RowImpl |
newRowClassInstance() |
PDefAttribute |
personalizeAttribute(java.lang.String attrName) |
protected abstract void |
prepareEditable() |
protected abstract void |
putAttrDefInVTable(AttributeDefImpl attrDef) |
void |
registerDefObject()
Registers this def object with MetaObjectManager.
|
void |
registerSessionDefObject() |
void |
registerSiteDefObject() |
void |
removeAltKey(java.lang.String name) |
void |
removeListBindingDef(ListBindingDef lbDef) |
void |
removeOperation(java.lang.String name)
For internal framework use only.
|
void |
removePersonalizedAttribute(java.lang.String attrName) |
void |
removeRowOperation(java.lang.String name)
For internal framework use only.
|
void |
removeViewAccessorDef(ViewAccessorDef vaDef) |
void |
removeViewFilterUsage(java.lang.String usageName) |
protected void |
resetDefResolved() |
void |
resolveDefObject() |
protected java.lang.Object |
resolvePropertyRaw(java.lang.String property,
LocaleContext locale) |
void |
setAliasName(java.lang.String s) |
void |
setAttributeDefForRuntime(AttributeDefImpl attrDef) |
void |
setBindingStyle(int bindingStyle)
Sets the Oracle or JDBC binding style defined for this Entity
definition.
|
void |
setClientProxyClassName(java.lang.String name) |
void |
setComponentClass(java.lang.Class refClass) |
void |
setComponentInterfaceName(java.lang.String interfaceName) |
protected void |
setDiscrColumns(AttributeDefImpl[] discrCols)
Sets the AttributeDef's of the discriminator columns.
|
void |
setExprVarVal(java.lang.String varName,
java.lang.Object val) |
void |
setThrowOnListBindingMismatch(boolean b) |
void |
skipRowOperationValidation()
For internal framework use only.
|
boolean |
throwOnListBindingMismatch() |
protected void |
verifyExtendedDefObjects() |
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
|
void |
writeXMLContents() |
adjustPropertyMapForWrite, checkEditable, createDefCustomizer, deregisterSessionObject, doneLoadingInternal, extractCustIntoPDef, getDefCustomizerFullFileName, getDefCustomizerFullName, getDefCustomizerName, getEditObject, getEditVersionsAsString, getInheritPersonalizationStrValue, getInheritPersonalizationValue, getInheritPolicyStrValue, getInheritPolicyValue, getMajorVersion, getMessageBundleClass, getMinorVersion, getMsgBundleDef, getPackageDef, getPackageName, getPersDef, getPersDefForEdit, getPersDefNoUpdateCheck, getPersMergedDef, getPublishToBusinessEditorValue, getResourceBundleDef, getResourcePrefix, getStaticBaseDefObject, getStaticDef, isAutoMerged, isConvertPDef, isCreateEditPDef, isCustIntoStaticDef, isDefCustomizer, isDefNewBase, isDynamic, isEditable, isInheritPersonalization, isInheritPolicyLegacy, isInheritPolicyStrict, isPublishToBusinessEditor, isScalarDirty, loadDefVersions, loadResourceBundle, loadXMLContents, lookupDefCustomizer, lookupPublishedDefCustomizer, newComponentClassInstance, objectFound, objectRemoved, saveXMLContents, setCustIntoStaticDef, setDefCustomizer, setDefScope, setDirty, setEditable, setFullName, setInheritPersonalization, setInheritPersonalizationStrValue, setInheritPolicyStrValue, setMessageBundleClass, setPublishToBusinessEditor, setPublishToBusinessEditorValue, setResourceBundleDef, setScalarDirty, setupDefWriterFromMO
callFinishedLoading, ensureVariableManager, finishedLoading, getAdfmConfigStartupProperty, getBaseDefObject, getBooleanAdfmConfigProperty, getDefTypeId, getDefXMLNameSpace, getVariableManager, getVarMgrParents, hasVariables, isDeprecated, isFromCustomization, loadProperties, loadVariables, resolveReferences, setBaseDefObject, setBaseDefObject, setDefForComponent, setName, setParent, unsetDefForComponent
addDefImport, addSavedDocName, allocatePDef, allocatePropertyMap, allocatePropertyMapForEdits, applyDiffContents, baseIsWriteObject, beginDiffObjects, buildChildName, buildFileName, checkEditableWithDefWriter, checkStructWithOld, close, createEditPDef, createFromXML, deregisterDefObject, deregisterHLDef, diffChildrenHLDefs, diffChildrenProperties, diffContents, ensureDifferDetails, ensureDifferSkip, findDefImport, forgetChanges, getBaseDir, getBasePackage, getChildren, getDefImports, getDefManager, getDefTypeName, getDefWriter, getDefXMLElementTag, getDifferSkip, getEditedPropertiesMap, getEditedPropertyExpressionsMap, getEditedPropertyMap, getExtendedDefObjectsInternal, getFileName, getFullDirName, getFullFileName, getHLDefMap, getIdentificationAttributeName, getMergeableFullName, getMergeableName, getOrigObject, getPropertyMap, getPropertyNamesSet, getSavedDocNames, getSessionSyncLock, getSubstitutedNames, getSyncLock, getXMLElementTag, guaranteePath, hasExtendedDefObjects, includeCustomizationLayerInfo, isCustomizationEnabled, isCustomizationEnabled, isDirty, isFromTip, isLoadBase, isLoadHLDefs, isMajorVersionChanged, isMinorVersionChanged, isNew, isNewRecurse, isPersonalizationEnabled, isPersonalizationEnabled, isPropertyExpression, isSaveToJSON, isSkipWrite, isWriteObject, loadDefImports, loadDefObject, lockDefinitionContext, lookupHLDef, makeNew, mergeChanges, mergeEditedPropertiesForJSON, mergePropertyMap, postSaveContents, readJSONObject, reapplyChanges, registerClass, registerHLDef, reloadFromXMLContents, remove, removeAndDelete, removeDefImport, removeExtendedDefObject, removeProperty, saveJSONContents, setCustomizationEnabled, setCustomizationEnabled, setDefaultBaseDir, setDefMgr, setEditableFlag, setEditableObject, setForRuntime, setFullNameInternal, setLoadBase, setLoadHLDefs, setMajorVersionChanged, setNew, setNewRecurse, setOrigObject, setPersonalizationEnabled, setPersonalizationEnabled, setProperty, setPropertyExpression, setPropertyMap, setSkipWrite, setWholeDefDirty, setWholeDefNew, staticUpdateChildrenList, transferDefChangesInto, unlockDefinitionContext, updateChildObject, updateChildrenList, updateMdsKeyFromTip, verifyVersion, verifyVersionNullCheck, writeHeaderForNew, writeJSONContents, writeObject, writeVersion
addPropertySetName, enableUpdateCheck, getAllExtendedDefObjects, getContainerDef, getContainerName, getDefinitionState, getDefScope, getExtendedDefObjects, getMdsKey, getMdsReference, getMdsReferenceName, getPropertySetName, getPropertySetNames, getRootBaseDefObject, isBaseDefFor, isDynamicDefinitionObject, isObjectResolved, isSubtypeOf, isSuppressUpdateCheck, loadCustomProperties, loadPropertiesInMap, loadPropertySetNames, loadSchemaProperties, objectInserted, setMdsKey, setMdsReference, setObjectResolved, setPropertySetName, staticLoadCustomProperties, staticLoadSchemaProperties, suppressUpdateCheck
getFullName, getName, getParent, getProperties, getPropertiesAsStrings, getPropertiesMap, getProperty, getProperty, getPropertyExpressionDef, getPropertyExpressionsMap, getPropertyExprEval, getRawPropertyValue, getResourcesFromBundle, getStringFromMessageBundle, hasProperty, refreshProperty, removeProperty, requiresNamePrefixedResId, resolveObjectProperty, setPropertiesMap, setPropertiesMap2, setProperty, setPropertyExpressionMap, setRawPropertyValue
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getColumnNameForQuery, getFullName, getName
getFullName, getName, getResourceBundleDef
getDefManager, getDefScope, getFullName
getProperty, removeProperty, setProperty
getName
getFullName
public static final int SI_AliasName
public static final int SI_BindingStyle
public static final int SMAX_RowDef
protected int mBindingStyle
protected java.lang.String mAliasName
public static final int SI_MsgBundleClass
public static final int SI_ComponentClass
public static final int SI_ComponentInterfaceName
public static final int SI_ClientProxyClassName
public static final int SMAX_RemotableCompDef
public abstract java.lang.Class getRowClass()
@Concealed protected abstract RowImpl newRowClassInstance() throws java.lang.InstantiationException, java.lang.IllegalAccessException
java.lang.InstantiationException
java.lang.IllegalAccessException
protected abstract AttributeDefImpl[] getAttributeDefImpls()
public java.lang.String getDefName()
StructureDef
getName()
returns the VO's
instance name and getDefName()
returns the
View definition's name.
getDefName
in interface StructureDef
public java.lang.String getDefFullName()
StructureDef
getFullName()
returns the VO's
full instance name and getDefFullName()
returns the
View definition's full name.
getDefFullName
in interface StructureDef
@Concealed public void setAttributeDefForRuntime(AttributeDefImpl attrDef)
@Restricted protected AttributeDefImpl[] getDiscrColumns()
protected void setDiscrColumns(AttributeDefImpl[] discrCols)
discrCols
- an array attribute definitions of the discriminator columns.protected boolean discrValuesQualify(java.lang.Object[] values)
protected void verifyExtendedDefObjects()
protected void addExtendedDefObject(DefinitionObject extendedDefObject)
addExtendedDefObject
in class PersistableDefObject
@Concealed public RowDef findDefForDiscrValues2(java.lang.Object[] values, boolean recurse)
@Restricted protected RowDef findDefForDiscrValues(java.lang.Object[] values, boolean recurse)
public java.util.List<PDefAttribute> getPersonalizedAttributeList()
public PDefAttribute lookupPersonalizedAttribute(java.lang.String attrName)
public PDefAttribute personalizeAttribute(java.lang.String attrName)
public void removePersonalizedAttribute(java.lang.String attrName)
public boolean isAttributeDefInherited(java.lang.String attrName)
public int getBindingStyle()
SQLBuilder
interface.SQLBuilder
public void setBindingStyle(int bindingStyle)
SQLBuilder
interface.bindingStyle
- an integer representing the Oracle or JDBC binding
style for this Entity definition.
The possible values can be:
SQLBuilder
public java.lang.String getAliasName()
public void setAliasName(java.lang.String s)
public abstract AttributeDef[] getAttributeDefs()
getAttributeDefs
in interface StructureDef
public abstract AttributeDef[] getRawAttributeDefs(boolean procAccessors)
public abstract int getAttributeCount()
getAttributeCount
in interface StructureDef
public abstract AttributeDef findAttributeDef(java.lang.String name)
findAttributeDef
in interface StructureDef
name
- the name of an AttributeDef
.NoDefException
- - if the attribute is not found.public abstract AttributeDef lookupAttributeDef(java.lang.String name)
lookupAttributeDef
in interface StructureDef
name
- the name of an AttributeDef
.public abstract AttributeDef getAttributeDef(int index)
getAttributeDef
in interface StructureDef
index
- the index of an AttributeDef
, where the leftmost
attribute has index zero.protected abstract AttributeDefImpl getAttrDefFromVTable(java.lang.String attrName)
protected abstract void putAttrDefInVTable(AttributeDefImpl attrDef)
public abstract boolean hasDataSecurity()
public AttributeDef lookupRawAttributeDef(java.lang.String name, boolean procAccessors)
lookupRawAttributeDef
in interface AttributeDependencyManager
public int getAttributeIndexOf(java.lang.String name)
StructureDef
getAttributeIndexOf
in interface StructureDef
name
- the attribute's name.0
to getAttributeCount() - 1
.
If the named attribute is not found, it returns -1.public java.util.List getBackwardDependencyAttributes(java.lang.String attrName)
getBackwardDependencyAttributes
in interface AttributeDependencyManager
public java.util.List getForwardDependencyAttributes(java.lang.String attrName)
getForwardDependencyAttributes
in interface AttributeDependencyManager
public java.util.HashSet<java.lang.String> getBackwardDependencies(java.lang.String attrName)
getBackwardDependencies
in interface AttributeDependencyManager
public java.util.HashSet<java.lang.String> getForwardDependencies(java.lang.String attrName)
getForwardDependencies
in interface AttributeDependencyManager
public void addForwardDependency(java.lang.String attrName, java.lang.String depName)
addForwardDependency
in interface AttributeDependencyManager
@Concealed public void addForwardDependency(java.lang.String attrName, AttributeDependency dep)
@Restricted protected void createDef()
Override this method to satisfy your application's specific custom properties for the row definition (entity or view). For example, you would override this method if your application builds custom properties programatically based on user preferences.
protected java.lang.StringBuffer appendBindingNameForAttr(java.lang.StringBuffer strBuf, AttributeDef attrDef)
protected int appendBindingSpec(java.lang.StringBuffer strBuf, int bindingStyle, int bindIndex, AttributeDef attrDef, AttributeDef theOtherAttrDef)
protected int appendBindingSpec(java.lang.StringBuffer strBuf, int bindingStyle, int bindIndex, AttributeDef attrDef, AttributeDef theOtherAttrDef, AssociationEnd assocEnd)
public java.util.ArrayList getListBindingDefs()
public ListBindingDef lookupListBindingDef(java.lang.String name)
public ListBindingDef findListBindingDef(java.lang.String name)
public void addListBindingDef(ListBindingDef lbDef, boolean bReplace)
public void removeListBindingDef(ListBindingDef lbDef)
public void addListBindingDef(ListBindingDef lbDef)
public void setThrowOnListBindingMismatch(boolean b)
public boolean throwOnListBindingMismatch()
protected void loadPDefAttribute(DefElement elem, int index)
protected void loadPDefAttributes(DefElement xmlElement)
protected void loadListBindings(DefElement xmlElement)
public java.util.ArrayList getViewAccessorDefs()
public ViewAccessorDef lookupViewAccessorDef(java.lang.String name)
public ViewAccessorDef findViewAccessorDef(java.lang.String name)
public void removeViewAccessorDef(ViewAccessorDef vaDef)
public void addViewAccessorDef(ViewAccessorDef va)
public java.util.ArrayList getViewFilterUsages()
public void addViewFilterUsage(ViewFilterUsage bindDef)
public void removeViewFilterUsage(java.lang.String usageName)
public ViewFilterUsage getViewFilterUsage(java.lang.String usageName)
protected void loadViewFilterUsages(DefElement xmlElement)
protected void loadViewAccessors(DefElement xmlElement)
@Restricted protected ViewAccessorDef loadViewAccessor(DefElement vaElem)
public void writeChildren(DefWriter jos)
PersistentDefinition
writeChildren
in interface PersistentDefinition
jos
- the Output storage for persistencepublic DataSourceDef getDataSourceDef()
protected java.lang.Object resolvePropertyRaw(java.lang.String property, LocaleContext locale)
resolvePropertyRaw
in class DefObject
public java.util.HashMap getAllProperties(java.util.HashMap map, LocaleContext locale)
getAllProperties
in class DefObject
protected abstract KeyDef createAltKey(java.lang.String keyName, int keyIndex, java.lang.String[] components)
public KeyDef addAltKey(int indx, java.lang.String name, java.lang.String[] components)
public void removeAltKey(java.lang.String name)
public java.lang.String[] getAltKeyNames()
public KeyDef lookupAltKeyDef(java.lang.String name)
public KeyDef findAltKeyDef(java.lang.String name)
public KeyDef getAltKeyDef(int keyIndex)
public int getAltKeyIndex(java.lang.String name)
public int getAltKeyCount()
public AttributeDefImpl[] getAltKeyAttrDefs(java.lang.String keyName)
public AttributeDefImpl[] getAltKeyAttrDefs(int keyIndex)
protected abstract AttributeDefImpl[] getPrimaryKeys()
@Concealed public OperationSupplier getGlobalOperations()
getGlobalOperations
in interface GlobalOperationsSupplier
public java.lang.Class getExprVarValType(java.lang.String varName)
getExprVarValType
in interface ExprValueTypeSupplier
public java.lang.Object getExprVarVal(java.lang.String varName)
getExprVarVal
in interface ExprValueSupplier
public void setExprVarVal(java.lang.String varName, java.lang.Object val)
setExprVarVal
in interface ExprValueSupplier
public boolean hasExprVarVal(java.lang.String varName)
public boolean isEffectiveDated()
public AttributeDefImpl getEffectiveDateTransientAttr()
protected void resetDefResolved()
resetDefResolved
in class MetaObject
public void registerDefObject()
MetaObject
This method should be called after the def object is
all set up and after resolveDefObject()
is called.
registerDefObject
in class MetaObject
public void registerSiteDefObject()
registerSiteDefObject
in class PersistableDefObject
public void registerSessionDefObject()
registerSessionDefObject
in class MetaObject
public void writeXMLContents()
writeXMLContents
in class MetaObject
public java.util.Map addChildren(java.util.Map m, boolean recurse, java.lang.Class cls)
addChildren
in class DefObject
protected abstract void prepareEditable()
public DifferDetails diffObjects(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails)
DiffMergeable
diffContents
to diff scalar values and diffChildren
to diff
children objects. The children objects themselves are expected
to be DiffMergeable
. 'this'
object is the
changed definition.
diffObjects
in interface DiffMergeable
diffObjects
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 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 DefObject
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 DefObject
public AttributeDef findAttrDefIncludingPDef(java.lang.String attrName)
public AttributeDef lookupAttrDefIncludingPDef(java.lang.String attrName)
public JboValidatorInterface lookupValidator(java.lang.String name)
public ExprDef lookupExprDef(OwnerType type, java.lang.String path)
ComponentOperationsManager
lookupExprDef
in interface ComponentOperationsManager
type
- the OwnerType
of the expressionpath
- the ExprDef.getPath()
of the expressionpublic boolean isComponentDefinition()
DefinitionObject
DefinitionObject
is
a full component definition or not. If this object is not a full component
definition, it will not be returned by
DefinitionManager.getAllComponentDefNames(Class)
.isComponentDefinition
in class DefinitionObject
true
if the DefinitionObject
is
a full component definition; false
otherwise.public java.util.ArrayList getValidators()
getValidators
in interface ValidationManager
public void addValidator(JboValidatorInterface listener)
addValidator
in interface ValidationManager
public void resolveDefObject()
resolveDefObject
in class MetaObject
public ResourceBundleDef getResourceBundleDef(java.lang.String resBundleId)
getResourceBundleDef
in interface ValidationManager
public StructureDef getStructureDef()
getStructureDef
in interface ValidationManager
protected int getScalarDirtyCount()
MetaObject
getScalarDirtyCount
in class MetaObject
public abstract java.lang.Class getBaseComponentClass()
public java.lang.Class getComponentClass()
public void setComponentClass(java.lang.Class refClass)
public void setComponentInterfaceName(java.lang.String interfaceName)
public java.lang.String getComponentInterfaceName()
public java.lang.String getClientProxyClassName()
public void setClientProxyClassName(java.lang.String name)
protected java.lang.String getEffectiveClientProxyClassName()
protected java.lang.String getEffectiveComponentInterfaceName()
protected static void loadFromXML(DefElement xmlElement, oracle.jbo.server.RemotableCompDef defObj)
@Concealed protected ComponentOperations getComponentOperations()
@Concealed public OperationDefinitionImpl lookupOperationDefinition(java.lang.String id)
@Concealed public ExprCodeSource lookupCodeSource(java.lang.String name)
@Concealed public OperationDefinitionImpl findOperationDefinition(java.lang.String id)
public OperationDefinitionsImpl getOperationDefinitions()
getOperationDefinitions
in interface OperationContainer
public OperationDefinitionsImpl getRowOperationDefinitions()
getRowOperationDefinitions
in interface OperationContainer
public OperationDefinitionsImpl getScriptOperationDefinitions()
getScriptOperationDefinitions
in interface OperationContainer
public OperationDefinitionsImpl getScriptRowOperationDefinitions()
getScriptRowOperationDefinitions
in interface OperationContainer
public ExprCodeSource ensureCodeSource(ExprDef exprDef)
ComponentOperationsManager
#updateCodeSource
to update the component
operations manager with any updates that are made to this CodeSource.ensureCodeSource
in interface ComponentOperationsManager
exprDef
- a null exprDef may be used to indicate the a
built-in code source.public ExprCodeSource ensureCodeSource(ExprDef exprDef, java.lang.String codeSourceName)
public ExprCodeSource editCodeSource(ExprCodeSource codeSource)
ComponentOperationsManager
editCodeSource
in interface ComponentOperationsManager
public boolean isDynamicCodeSourceEnabled()
isDynamicCodeSourceEnabled
in interface ComponentOperationsManager
@Concealed public void addOperation(OperationDefinitionImpl opDef)
@Concealed public OperationDefinitionImpl addScriptOperation(java.lang.String name, java.lang.String returnType, java.util.LinkedHashMap<java.lang.String,java.lang.String> params, java.lang.String body)
@Concealed public OperationDefinitionImpl addScriptRowOperation(java.lang.String name, java.lang.String returnType, java.util.LinkedHashMap<java.lang.String,java.lang.String> params, java.lang.String body)
@Concealed public void removeOperation(java.lang.String name)
protected void loadOperationDefinitions(DefElement xmlElement)
public void loadXMLContentsNoResolve(DefElement xmlElement, java.lang.String fullName)
loadXMLContentsNoResolve
in class PersistableDefObject
public void writeContents(DefWriter jos)
PersistentDefinition
writeContents
in interface PersistentDefinition
writeContents
in class MetaObject
jos
- the Output storage for persistence@Concealed public OperationDefinitionImpl lookupRowOperationDefinition(java.lang.String id)
public OperationDefinitionImpl lookupRowOperationDefinition(java.lang.String name, java.lang.String returnType, java.lang.Class[] params)
@Concealed public OperationDefinitionImpl findRowOperationDefinition(java.lang.String id)
@Concealed public void addRowOperation(OperationDefinitionImpl opDef)
@Concealed public void skipRowOperationValidation()
@Concealed public OperationDefinitionImpl addRowScriptOperation(java.lang.String name, java.lang.String returnType, java.util.LinkedHashMap<java.lang.String,java.lang.String> params, java.lang.String body)
@Concealed public void removeRowOperation(java.lang.String name)
@Concealed public void cacheJavaMethodDefs(java.util.ArrayList al, boolean row)
@Concealed public java.util.List getCachedJavaMethodDefs(boolean row)