public class EntityDefImpl extends RowDef implements StructureDef, ValidationManager
PersistableDefObject.CustomizationType, PersistableDefObject.PersonalizationType
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DBOBJ_TYPE_OBJTAB |
static java.lang.String |
DBOBJ_TYPE_OBJTYP |
static java.lang.String |
DBOBJ_TYPE_TABLE |
static java.lang.String |
DBOBJ_TYPE_VIEW |
static byte |
EFFECTIVE_DATE_TYPE_DATED
Effective Dated entites could be of type dated or effective dated.
|
static byte |
EFFECTIVE_DATE_TYPE_EFFECTIVE_DATED
Effective Dated entites could be of type dated or effective dated.
|
static byte |
EFFECTIVE_DATE_TYPE_NONE
Constant for specifying non effective dated entitites.
|
protected java.util.ArrayList |
mAssocAccessors
The Association accessors for the Entity Object.
|
protected java.util.ArrayList |
mAssocs
Association objects for this Entity Object.
|
protected java.util.ArrayList |
mAttrAccessors
The Attribute accessors for the Entity Object.
|
protected int |
mBatchThreshold |
protected AttributeDefImpl[] |
mFKeys
List of attributes that comprise the foreign key.
|
protected boolean |
mIsObjectTable
Determines if the current table is an Object Table.
|
protected AttributeDefImpl |
mOIDAttribute
If entity is a OIDObject
|
protected AttributeDefImpl[] |
mPrimaryKeys
List of attributes that comprise the primary key.
|
protected java.lang.String |
mSource
Stores the name of the database source: the database entity for
the Entity Object.
|
protected java.lang.String |
mSourceType
Stores the database source type.
|
mAliasName, mBindingStyle
mComponentClass, PERSMERGED_BASE_PACKAGE
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
XML_STATEMENT
Constructor and Description |
---|
EntityDefImpl()
Default Constructor, sets the row class.
|
EntityDefImpl(int defScope,
java.lang.String name) |
EntityDefImpl(int defScope,
java.lang.String name,
java.lang.String baseEntityDefName) |
EntityDefImpl(java.lang.String name) |
Modifier and Type | Method and Description |
---|---|
AssociationDefImpl |
addAssocAccessor(java.lang.String accName,
java.lang.String assocName,
java.lang.Class javaType) |
AttributeDefImpl |
addAttribute(java.lang.String attrName,
java.lang.String columnName,
java.lang.Class javaType,
boolean isPrimaryKey,
boolean isDiscriminator,
boolean isPersistent) |
AttributeDefImpl |
addAttributeOfKind(java.lang.String attrName,
java.lang.String columnName,
java.lang.Class javaType,
boolean isPrimaryKey,
boolean isDiscriminator,
byte kind) |
protected void |
addEntityAssociation(EntityAssociation assoc)
Internal: Applications should not use this method.
|
void |
addEventAttr(java.lang.String attrName) |
void |
addOperation(OperationDefinitionImpl opDef)
For internal framework use only.
|
protected void |
addPropertyChangeListener(int index,
PropertyChangeListener listener)
Adds a
PropertyChangeListener to the listener list
for an attribute at the given index. |
protected void |
addPropertyChangeListener(java.lang.String attributeName,
PropertyChangeListener listener)
Adds a
PropertyChangeListener to the listener list
for an attribute of the given Name. |
void |
addRowOperation(OperationDefinitionImpl opDef)
For internal framework use only.
|
OperationDefinitionImpl |
addRowScriptOperation(java.lang.String id,
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 id,
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 id,
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 |
addTrigger(TriggerType type,
JboValidatorInterface listener)
Internal: Applications should not use this method. *
|
protected void |
addUniqueKeyValidation(JboUniqueKeyValidator val) |
void |
addUniqueKeyValidator(JboUniqueKeyValidator val)
Add a unique key validator.
|
protected void |
addUniquePKValidation()
Adds validators to each primary key attribute of this Entity to ensure
that the primary key for an Entity is always unique.
|
void |
addValidator(JboValidatorInterface listener)
Adds a
JboValidatorInterface to the listener list. |
protected void |
addVetoableChangeListener(int index,
VetoableChangeListener listener)
This method will be deprecated in a future release.
|
protected void |
addVetoableChangeListener(java.lang.String attributeName,
VetoableChangeListener listener)
This method will be deprecated in a future release.
|
protected void |
addVetoableChangeListener(VetoableChangeListener listener)
This method will be deprecated in a future release.
|
static boolean |
checkEntityLocked(Row en)
Internal: Applications should not use this method.
Called by BaseLobDomain to check for entity's locked state in local mode
using reflection rather than direct call as Domains need to be "server" independent.
|
protected KeyDef |
createAltKey(java.lang.String keyName,
int keyIndex,
java.lang.String[] components) |
protected EntityImpl |
createBlankInstance(DBTransaction txn) |
EntityImpl |
createBlankInstance2(DBTransaction txn)
Internal: Applications should not use this method.
|
protected void |
createDef()
This method should be used to perform custom-metadata initialization
in a subclass of EntityDefImpl.
|
static EntityDefImpl |
createEntityDef(int defScope,
java.lang.String defClassName,
java.lang.String dbObjName,
java.lang.String viewObjectBase) |
protected EntityImpl |
createInstance(DBTransaction txn,
AttributeList al) |
EntityImpl |
createInstance2(DBTransaction txn,
AttributeList al)
Instantiate an instance of the
Entity . |
Key |
createKey(AttributeList al)
Given a set of attribute values (name-value pairs), creates a Primary
key object for
this Entity.
|
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.
|
AttributeDef |
findAttributeDef(java.lang.String name)
Gets an attribute definition, given its name.
|
EntityImpl |
findByAltKey(DBTransaction txn,
java.lang.String keyName,
Key key,
boolean inclSubclasses,
boolean searchDatabase) |
EntityImpl |
findByKey(DBTransaction txn,
int keyIndex,
Key key,
boolean inclSubclasses,
boolean searchDatabase) |
EntityImpl |
findByPKExtended(DBTransaction txn,
Key key,
boolean inclSubclasses) |
EntityImpl |
findByPrimaryKey(DBTransaction txn,
Key key)
Finds an Entity Object given a Primary Key.
|
static EntityDefImpl |
findDefObject(java.lang.String defFullName)
Finds the named Entity Object definition.
|
static EntityDefImpl |
findDefObjectNoSub(java.lang.String defFullName)
Finds the named Entity Object definition.
|
EntityImpl |
findFromCache(DBTransaction txn,
int keyIndex,
Key key,
boolean inclSubclasses) |
EntityImpl |
findFromDatabase(EntityCache entityCache,
DBTransaction txn,
int keyIndex,
Key key) |
EntityImpl |
findInCacheByAltKeyExtended(DBTransaction txn,
java.lang.String keyName,
Key key,
boolean inclSubclasses) |
EntityImpl |
findInCacheByPKExtended(DBTransaction txn,
Key key,
boolean inclSubclasses) |
EntityImpl |
findInCacheByPrimaryKey(DBTransaction txn,
Key key)
Returns an Entity Object in EntityCache given a Primary Key.
|
OperationDefinitionImpl |
findOperationDefinition(java.lang.String id)
For internal framework use only.
|
OperationDefinitionImpl |
findRowOperationDefinition(java.lang.String id)
For internal framework use only.
|
protected void |
finishedLoading() |
static java.lang.String[] |
getAllDefNames() |
java.util.Iterator |
getAllEntityInstances(DBTransaction tr)
Deprecated.
since 5.0 use getAllEntityInstancesIterator.
|
java.util.Iterator |
getAllEntityInstancesIterator(DBTransaction tr)
Creates an iterator for stepping through instances of Entities of
this definition object type.
|
java.util.List |
getAllExtendedDefObjects(boolean bSkipBusLogicUnits) |
AssociationDefImpl |
getAssociationDefImpl(int index)
Returns the AssociationDefImpl (association accessors) given an index.
|
AssociationDefImpl |
getAssociationDefImpl(java.lang.String name)
Returns the AssociationDefImpl (association accessors) given the
association name.
|
AssociationDefImpl[] |
getAssociationDefImpls()
Returns the AssociationDefImpls.
|
int |
getAttributeCount()
Returns the number of defined attributes.
|
AttributeDef |
getAttributeDef(int index)
Gets an attribute definition, given its index.
|
AttributeDefImpl |
getAttributeDefImpl(int index)
Given the attribute's column position (index) in the database, returns the
attribute definition object.
|
AttributeDefImpl |
getAttributeDefImpl(java.lang.String attrName)
Given an attribute name, returns the attribute definition object.
|
protected AttributeDefImpl |
getAttributeDefImplByColumnName(java.lang.String colName)
Given an attribute's column name, returns the attribute definition object.
|
protected AttributeDefImpl[] |
getAttributeDefImpls()
Returns the AttributeDefImpls objects for this Entity Object.
|
AttributeDef[] |
getAttributeDefs()
Gets the defined attributes.
|
java.lang.Class |
getBaseComponentClass()
Internal: Applications should not use this method.
|
int |
getBatchThreshold() |
protected AttributeDefImpl |
getChangeIndicatorColumn()
Returns the AttributeDef for the Change Indicator column for the
datasource.
|
AttributeDefImpl |
getChangeIndicatorColumn2() |
java.lang.String |
getClientProxyClassName() |
java.lang.Class |
getCollClass()
Gets the implementation class of this Entity's collection.
|
java.lang.String |
getColumnNameForQuery(int index) |
java.lang.Class |
getComponentClass() |
java.lang.String |
getComponentInterfaceName() |
protected ComponentOperations |
getComponentOperations()
For internal framework use only.
|
java.util.Iterator<EventMapping> |
getCreateEvents()
Returns the list of events to fire when a row is created in the entity.
|
static java.lang.String |
getCurrentSequencedRowChar() |
AttributeDefImpl |
getDataSecurityAttribute()
Internal: Applications should not use this method.
|
int |
getDefTypeId() |
java.lang.String |
getDefXMLElementTag() |
java.util.Iterator<EventMapping> |
getDeleteEvents()
Returns the list of events to fire when a row is deleted in the entity.
|
protected java.lang.String |
getEffDtNextRowsVOName()
The name of the View Object that is generated
to query the rows that follow an effective
dated row and has the same primary key values.
|
protected java.lang.String |
getEffDtPreviousRowsVOName()
The name of the View Object that is generated
to query the rows that precedes an effective
dated row and has the same primary key values.
|
protected java.lang.String |
getEffDtRangeRowsVOName()
Returns the name of internal View Object used to query effective dated rows
within a date range.
|
protected java.lang.String |
getEffectiveClientProxyClassName() |
protected java.lang.String |
getEffectiveComponentInterfaceName() |
AttributeDefImpl |
getEffectiveDateSequenceAttr() |
AttributeDefImpl |
getEffectiveDateSequenceFlagAttr() |
AttributeDefImpl |
getEffectiveDateTransientAttr()
Retuns the Attribute definition that stores the Effective Date
value in a row.
|
protected java.lang.String |
getEffectiveDateTransientAttrName()
The name of the transient attribute that is used
to lookup the effective date of a row while doing DML
operations.
|
byte |
getEffectiveDateType()
Returns the Effective Date type of the Entity definition.
|
AttributeDefImpl |
getEffectiveEndDateAttr() |
AttributeDefImpl |
getEffectiveStartDateAttr() |
java.lang.String |
getEJBAppProviderURL() |
java.lang.Object |
getEJBHome() |
java.lang.String |
getEJBHomeJNDIName() |
protected EntityAssociation[] |
getEntityAssociations()
Internal: Applications should not use this method.
|
EventDef |
getEventDef(java.lang.String name)
Gets the request event definition.
|
java.lang.String |
getEventNamespace() |
java.util.Iterator |
getEventParentAttrs()
Gets the list of attributes on the parent entity that are used in the
payload of events on this entity.
|
java.lang.String |
getEventPayloadNamespace() |
java.util.Iterator |
getEventTransAttrs() |
java.util.ArrayList |
getExtendedDefObjects(boolean bSkipBusLogicUnits) |
java.util.List<EntityDefImpl> |
getExtendedDefObjectsInternal(boolean bSkipBusLogicUnits) |
protected AttributeDefImpl[] |
getForeignKeyAttrs()
Returns the list of AttributeDefs that make the foreign key for the
composition cases.
|
java.lang.String |
getHintValue(LocaleContext locale,
java.lang.String sHintName) |
static java.lang.Integer |
getLowestEffDtSequenceValue() |
static int |
getMaxAttrConst(java.lang.String entityName)
Returns the index of the last attribute for this entity at runtime.
|
protected java.lang.String |
getNextEffSequenceRowsVOName()
The name of the View Object used to query effective dated rows with higher
sequence values within the same effective start date (used in Multiple
Changes Per Day).
|
protected AttributeDefImpl |
getOIDAttribute()
Internal: Applications should not use this method.
|
OperationDefinitionsImpl |
getOperationDefinitions()
Return the operation definitions.
|
java.lang.String |
getOwnerRowType() |
oracle.adf.share.security.binding.BindingPermissionDef |
getPermissionDef()
Internal: Applications should not use this method.
|
protected java.lang.String |
getPrevEffSequenceRowsVOName()
The name of the View Object used to query effective dated rows with lower
sequence values within the same effective start date (used in Multiple
Changes Per Day).
|
protected AttributeDefImpl[] |
getPrimaryKeys()
Returns the AttributeDef's that define the primary key.
|
java.lang.String |
getPrimaryViewDefinitionName() |
static java.lang.String |
getPriorSequencedRowChar() |
java.lang.Object |
getProperty(java.lang.String hintName)
Retrieves the specified property, if it exists.
|
java.lang.String |
getQuery()
Returns the query that will return all columns for this Entity.
|
AttributeDef[] |
getRawAttributeDefs(boolean procAccessors) |
int |
getRefAttrIndex() |
protected AttributeDefImpl[] |
getRetrievedOnInsertAttributes()
Returns the list of attributes for which the Refresh on Insert flag is
enabled at Design Time.
|
protected AttributeDefImpl[] |
getRetrievedOnInsertPrimaryKeys()
Returns the list of primary keys for which the Refresh on Insert flag is
enabled at Design Time.
|
protected AttributeDefImpl[] |
getRetrievedOnUpdateAttributes()
Returns the list of attributes for which the Refresh on Update flag is
enabled at Design Time.
|
protected AttributeDefImpl[] |
getRetrievedOnUpdatePrimaryKeys()
Returns the list of primary key attributes for which the Refresh on
Update flag is enabled at Design Time.
|
java.lang.Class |
getRowClass()
Gets the implementation class of this Entity's rows.
|
OperationDefinitionsImpl |
getRowOperationDefinitions()
Return the row operation definitions.
|
java.lang.String |
getSelectClause(SQLBuilder sqlBuilder) |
java.lang.String |
getSelectClause(SQLBuilder sqlBuilder,
boolean forViewObject) |
java.lang.String |
getSource()
Returns the name of the Database source table.
|
java.lang.String |
getSourceType()
Internal: Applications should not use this method.
|
java.util.ArrayList |
getTriggersOfType(TriggerType type)
Internal: Applications should not use this method. *
|
AttributeDefImpl[] |
getUniqueKeys()
Returns the list of attributes that were marked as Unique-key constituents in designtime
The order of attribute definitions is the order in which the unique-key attributes appear
in the set of attributes for this entity.
|
java.util.Iterator<EventMapping> |
getUpdateEvents()
Returns the list of events to fire when a row is updated in the entity.
|
java.util.ArrayList |
getValidators()
Get the list of JboValidatorInterface objects registered with this entity
|
boolean |
hasDataSecurity() |
boolean |
hasEffectiveDateSequence() |
protected boolean |
hasLOBAttrs()
Determines whether the EntityDef contains attributes that are LOBs.
|
boolean |
isAssociationAccessorRetained() |
static boolean |
isCompDeleteOld() |
boolean |
isEffectiveDated()
Checks if this Entity definition is Effective Dated.
|
static boolean |
isLobAttribute(AttributeDefImpl ad) |
boolean |
isObjectTable()
Determines whether this is an Object table.
|
protected boolean |
isOIDInPrimaryKey()
Determines whether the OID (object identifier) attribute is a primary key.
|
boolean |
isRefPKBased()
Indicates whether this Entity's REF is primary key based or not.
|
protected boolean |
isRowIDPrimaryKey()
Determines whether this Entity Object has a ROWID attribute that is used as
a primary key.
|
boolean |
isSingleUseKeyStatement() |
boolean |
isUpdatable()
Internal: Applications should not use this method.
|
boolean |
isUpdateChangedColumns()
Determines whether the SQL generation
of UPDATE statements should include all of the columns or just the
changed columns.
|
boolean |
isUseGlueCode() |
boolean |
isUseReturningClause()
Indicates if DML should use the RETURNING clause for this entity type.
|
protected void |
loadAttribute(DefElement elem)
Load the attribute from the XMLInput Stream
|
protected void |
loadCustomDef(DefElement xmlElement)
Internal: Applications should not use this method.
|
protected static EntityDefImpl |
loadFromXML(DefElement xmlElement,
EntityDefImpl eInfo,
EntityDefImpl baseEntityDef,
boolean loadingBaseDef)
Create the EntityDefImpl from XML metadata stream
|
protected static void |
loadFromXML(DefElement xmlElement,
oracle.jbo.server.RemotableCompDef defObj) |
protected void |
loadOperationDefinitions(DefElement xmlElement)
For internal framework use only.
|
protected void |
loadViewAccessors(DefElement xmlElement) |
void |
loadXMLContentsNoResolve(DefElement xmlElement,
java.lang.String fullName) |
AttributeDef |
lookupAttributeDef(java.lang.String name)
Gets an attribute definition, given its name.
|
ExprCodeSource |
lookupCodeSource(java.lang.String name)
For internal framework use only.
|
OperationDefinitionImpl |
lookupOperationDefinition(java.lang.String id)
For internal framework use only.
|
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) |
protected EntityImpl |
newInstance(DBTransaction txn) |
EntityImpl |
newInstance2(DBTransaction txn)
Internal: Applications should not use this method.
|
Key |
prepKeyForFind(int keyIndex,
Key key) |
void |
removeOperation(OperationDefinitionImpl opDef)
For internal framework use only.
|
protected void |
removePropertyChangeListener(int index,
PropertyChangeListener listener)
Removes a
PropertyChangeListener from the listener list
of the given attribute (by index). |
protected void |
removePropertyChangeListener(java.lang.String attributeName,
PropertyChangeListener listener)
Removes a
PropertyChangeListener from the listener list
of the given attribute (by index). |
void |
removeRowOperation(OperationDefinitionImpl opDef)
For internal framework use only.
|
void |
removeTrigger(TriggerType trig,
java.lang.String valName)
Internal: Applications should not use this method. *
|
protected void |
removeValidator(JboValidatorInterface listener)
Removes a
VetoableChangeListener from the listener list. |
protected void |
removeVetoableChangeListener(int index,
VetoableChangeListener listener)
This method will be deprecated in a future release.
|
protected void |
removeVetoableChangeListener(java.lang.String attributeName,
VetoableChangeListener listener)
This method will be deprecated in a future release.
|
protected void |
removeVetoableChangeListener(VetoableChangeListener listener)
This method will be deprecated in a future release.
|
protected void |
resetDefResolved() |
void |
resolveDefObject()
This method performs final resolution of various parts of the
entity definition before this definition object can be used.
|
protected void |
resolveReferences()
Since this gets called from lazyload, load all attribute accessors upfront.
|
void |
setAssociationAccessorRetained(boolean b) |
void |
setBatchThreshold(int threshold) |
void |
setChangeIndicatorColumn(AttributeDefImpl chgIndCol) |
void |
setClientProxyClassName(java.lang.String name) |
void |
setCollClass(java.lang.Class collClass)
Internal: Applications should not use this method.
|
void |
setComponentClass(java.lang.Class refClass) |
void |
setComponentInterfaceName(java.lang.String interfaceName) |
protected void |
setDefForComponent(ComponentObjectImpl comp) |
void |
setEffectiveDateType(byte effDtType)
Sets the Effective Date Type for this Entity definition.
|
void |
setEJBAppProviderURL(java.lang.String url) |
void |
setEJBHomeJNDIName(java.lang.String nam) |
void |
setEventNamespace(java.lang.String namespace) |
void |
setEventPayloadNamespace(java.lang.String namespace) |
void |
setOwnerRowType(java.lang.String ot) |
void |
setPermissionDef(oracle.adf.share.security.binding.BindingPermissionDef permDef) |
void |
setRefPKBased(boolean val)
Internal: Applications should not use this method.
|
void |
setRowClass(java.lang.Class rowClass)
Internal: Applications should not use this method.
|
void |
setSingleUseKeyStatement(boolean singleUse) |
void |
setSource(java.lang.String source)
Internal: Applications should not use this method.
|
void |
setSourceType(java.lang.String sourceType)
Internal: Applications should not use this method.
|
void |
setUpdatable(boolean flag)
Internal: Applications should not use this method.
|
void |
setUpdateChangedColumns(boolean updateChangedColumns)
Sets the flag for status to update on Changed Columns
|
void |
setUseGlueCode(boolean b) |
protected void |
setUseReturningClause(boolean flag)
Subclasses should call this method with false,
on the EntityDef to indicate
that this entity type should not use RETURNING clause to fetch
refresh-on-insert or refresh-on-update values.
|
protected void |
unsetDefForComponent(ComponentObjectImpl comp) |
protected void |
validateTrigger(EntityImpl validateEntity,
TriggerType trigger)
Subclassable for cases where ViewRowImpl takes over create() and calls entity create on it's own.
|
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
|
addAltKey, addExtendedDefObject, addForwardDependency, addForwardDependency, addListBindingDef, addListBindingDef, addViewAccessorDef, appendBindingNameForAttr, appendBindingSpec, appendBindingSpec, discrValuesQualify, findAltKeyDef, findAttrDefIncludingPDef, findDefForDiscrValues, findDefForDiscrValues2, findListBindingDef, findViewAccessorDef, getAliasName, getAllProperties, getAltKeyAttrDefs, getAltKeyAttrDefs, getAltKeyCount, getAltKeyDef, getAltKeyIndex, getAltKeyNames, getAttributeIndexOf, getBackwardDependencies, getBackwardDependencyAttributes, getBindingStyle, getDataSourceDef, getDefFullName, getDefName, getDiscrColumns, getExprVarVal, getExprVarValType, getForwardDependencies, getForwardDependencyAttributes, getGlobalOperations, getListBindingDefs, getViewAccessorDefs, isComponentDefinition, loadListBindings, loadViewAccessor, lookupAltKeyDef, lookupAttrDefIncludingPDef, lookupExprDef, lookupListBindingDef, lookupRawAttributeDef, lookupValidator, lookupViewAccessorDef, registerDefObject, removeAltKey, removeListBindingDef, removeViewAccessorDef, resolvePropertyRaw, setAliasName, setBindingStyle, setDiscrColumns, setExprVarVal, setThrowOnListBindingMismatch, throwOnListBindingMismatch, verifyExtendedDefObjects, writeXMLContents
deregisterSessionObject, getEditVersionsAsString, getInheritPersonalizationValue, getMajorVersion, getMessageBundleClass, getMinorVersion, getMsgBundleDef, getPackageDef, getPackageName, getPersDef, getPersDefNoUpdateCheck, getPersMergedDef, getResourceBundleDef, getResourcePrefix, isDynamic, isInheritPersonalization, loadDefVersions, loadResourceBundle, loadXMLContents, registerSessionDefObject, setInheritPersonalization, setInheritPersonalizationStrValue, setMessageBundleClass, setResourceBundleDef
applyDiffChildren, diffChildren, ensureVariableManager, getAdfmConfigStartupProperty, getBaseDefObject, getBooleanAdfmConfigProperty, getDefXMLNameSpace, getVariableManager, getVarMgrParents, hasVariables, isDeprecated, isFromCustomization, loadProperties, loadVariables, setBaseDefObject, setBaseDefObject, setName, setParent
addDefImport, addSavedDocName, adjustPropertyMapForWrite, allocatePropertyMap, allocatePropertyMapForEdits, applyDiffContents, beginDiffObjects, checkEditable, checkStructWithOld, close, createFromXML, deregisterDefObject, diffContents, diffObjects, ensureDifferDetails, findDefImport, getBaseDir, getBasePackage, getDefImports, getDefManager, getDefTypeName, getDefWriter, getEditedPropertiesMap, getEditedPropertyExpressionsMap, getEditedPropertyMap, getEditObject, getExtendedDefObjectsInternal, getFileName, getFullDirName, getFullFileName, getMergeableFullName, getMergeableName, getOrigObject, getPropertyMap, getSavedDocNames, getSessionSyncLock, getSubstitutedNames, getSyncLock, getXMLElementTag, guaranteePath, hasExtendedDefObjects, includeCustomizationLayerInfo, isCustomizationEnabled, isCustomizationEnabled, isDirty, isEditable, isFromTip, isLoadBase, isMajorVersionChanged, isMinorVersionChanged, isNew, isPersonalizationEnabled, isPersonalizationEnabled, isPropertyExpression, loadDefImports, loadDefObject, lockDefinitionContext, mergeChanges, mergePropertyMap, objectRemoved, reapplyChanges, registerClass, 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
addPropertySetName, enableUpdateCheck, getAllExtendedDefObjects, getContainerDef, getContainerName, getDefinitionState, getDefScope, getExtendedDefObjects, getMdsKey, getMdsReference, getPropertySetName, getPropertySetNames, getRootBaseDefObject, isBaseDefFor, isDynamicDefinitionObject, isObjectResolved, isSubtypeOf, isSuppressUpdateCheck, loadCustomProperties, loadPropertiesInMap, loadPropertySetNames, loadSchemaProperties, setDefScope, setMdsKey, setMdsReference, setObjectResolved, setPropertySetName, staticLoadCustomProperties, staticLoadSchemaProperties, suppressUpdateCheck
getFullName, getName, getParent, getProperties, getPropertiesAsStrings, getPropertiesMap, getProperty, getPropertyExpressionDef, getPropertyExpressionsMap, getPropertyNamesSet, getRawPropertyValue, getResourcesFromBundle, getStringFromMessageBundle, refreshProperty, removeProperty, requiresNamePrefixedResId, resolveObjectProperty, setPropertiesMap, setPropertiesMap2, setProperty
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getAttributeIndexOf, getDefFullName, getDefName, getFullName, getName
getFullName, getName, getResourceBundleDef
getFullName
getName
getFullName
public static final java.lang.String DBOBJ_TYPE_TABLE
public static final java.lang.String DBOBJ_TYPE_VIEW
public static final java.lang.String DBOBJ_TYPE_OBJTYP
public static final java.lang.String DBOBJ_TYPE_OBJTAB
public static final byte EFFECTIVE_DATE_TYPE_DATED
public static final byte EFFECTIVE_DATE_TYPE_EFFECTIVE_DATED
public static final byte EFFECTIVE_DATE_TYPE_NONE
protected java.util.ArrayList mAttrAccessors
protected java.util.ArrayList mAssocAccessors
protected java.util.ArrayList mAssocs
protected AttributeDefImpl[] mFKeys
protected AttributeDefImpl[] mPrimaryKeys
protected AttributeDefImpl mOIDAttribute
protected java.lang.String mSource
protected java.lang.String mSourceType
protected boolean mIsObjectTable
protected int mBatchThreshold
public EntityDefImpl()
public EntityDefImpl(int defScope, java.lang.String name)
public EntityDefImpl(java.lang.String name)
public EntityDefImpl(int defScope, java.lang.String name, java.lang.String baseEntityDefName)
public java.lang.String getPrimaryViewDefinitionName()
@Concealed public void setOwnerRowType(java.lang.String ot)
@Concealed public java.lang.String getOwnerRowType()
public static java.lang.String[] getAllDefNames()
public static boolean isCompDeleteOld()
public static EntityDefImpl findDefObjectNoSub(java.lang.String defFullName)
findDefObject
, except that it
does not observe meta-object substitution.defFullName
- the fully qualified name of the definition.MetaObjectManager
public static EntityDefImpl findDefObject(java.lang.String defFullName)
This method takes the fully qualified name (package_name.Entity_name)
of an Entity definition
and returns the corresponding Entity definition object. This method can
be used to return only the Entity Object defintion object, instead of
the more
global methods in the MetaObjectManager
class.
The following example returns the EntityDef object associated with the Categories Entity in package1.
mDefinitionObject = (EntityDefImpl)EntityDefImpl.findDefObject("package1.Categories");
defFullName
- the fully qualified name of the definition.MetaObjectManager
protected void createDef()
Override this method to satisfy your application's specific custom properties for the Entity definition. For example, you would override this method if your application builds custom properties programatically based on user preferences.
Subclasses of EntityDefImpl should invoke
addUniquePKValidation()
in
this method to
add primary key validators. For example:
protected void createDef() { addUniquePKValidation(); }By default, the framework does not invoke the unique key check.
createDef
in class RowDef
addUniquePKValidation()
protected EntityAssociation[] getEntityAssociations()
Returns an array of Entity Association objects for this Entity.
protected void addEntityAssociation(EntityAssociation assoc)
Adds an Entity Association to this Entity.
assoc
- the entity assocition to be added.public AttributeDefImpl getAttributeDefImpl(java.lang.String attrName)
This method takes the string name of an Entity Object attribute and returns the corresponding attribute definition object. For example, use this method to get the attribute definition object to store custom properties.
attrName
- the specified Entity attribute.public AttributeDefImpl getAttributeDefImpl(int index)
This method takes the Entity attribute's database column position (index) and returns the corresponding attribute definition object. For example, use this method to get the attribute definition object to store custom properties.
index
- the attribute's database column position, where the
leftmost column has index 0.protected AttributeDefImpl getAttributeDefImplByColumnName(java.lang.String colName)
This method takes the Entity attribute's database colunm name and returns the corresponding attribute definition object. For example, use this method to get the attribute definition object to store custom properties.
colName
- the name of the attribute's column in the database.protected AttributeDefImpl[] getAttributeDefImpls()
getAttributeDefImpls
in class RowDef
public AttributeDef[] getAttributeDefs()
RowDef
getAttributeDefs
in interface StructureDef
getAttributeDefs
in class RowDef
public AttributeDef[] getRawAttributeDefs(boolean procAccessors)
getRawAttributeDefs
in class RowDef
public int getAttributeCount()
RowDef
getAttributeCount
in interface StructureDef
getAttributeCount
in class RowDef
public AttributeDef findAttributeDef(java.lang.String name)
RowDef
findAttributeDef
in interface StructureDef
findAttributeDef
in class RowDef
name
- the name of an AttributeDef
.public AttributeDef lookupAttributeDef(java.lang.String name)
RowDef
lookupAttributeDef
in interface StructureDef
lookupAttributeDef
in class RowDef
name
- the name of an AttributeDef
.public AttributeDef getAttributeDef(int index)
RowDef
getAttributeDef
in interface StructureDef
getAttributeDef
in class RowDef
index
- the index of an AttributeDef
, where the leftmost
attribute has index zero.public java.lang.String getColumnNameForQuery(int index)
getColumnNameForQuery
in interface StructureDef
public AssociationDefImpl getAssociationDefImpl(java.lang.String name)
name
- the name of the association.public AssociationDefImpl getAssociationDefImpl(int index)
index
- of the association attribute.public AssociationDefImpl[] getAssociationDefImpls()
public java.lang.String getSource()
This method could be overridden if, for example, your application implements table generator code at runtime.
public void setUpdatable(boolean flag)
Set false if this entity has to be readOnly (e.g., when this entity is mapping a snapshot table.) Default is true.
flag
- public boolean isUpdatable()
Returns false if this entity has to be readOnly (e.g., when this entity is mapping a snapshot table.) Default is true.
public void setSource(java.lang.String source)
Sets the name of the Database source table.
source
- the name of database table corresponding to this business
object.public boolean isObjectTable()
This method returns true if this table is:
public java.lang.String getSourceType()
Returns the name of the database source type.
public void setSourceType(java.lang.String sourceType)
Sets the name of the Database source type.
sourceType
- the type of database source.public java.lang.String getEJBHomeJNDIName()
public void setEJBHomeJNDIName(java.lang.String nam)
public java.lang.String getEJBAppProviderURL()
public java.lang.String getEventNamespace()
public void setEventNamespace(java.lang.String namespace)
public java.lang.String getEventPayloadNamespace()
public void setEventPayloadNamespace(java.lang.String namespace)
public void setEJBAppProviderURL(java.lang.String url)
public int getBatchThreshold()
public void setBatchThreshold(int threshold)
public java.util.Iterator getAllEntityInstances(DBTransaction tr)
tr
- the transaction containing the Entity Objects.public java.util.Iterator getAllEntityInstancesIterator(DBTransaction tr)
tr
- the transaction containing the Entity Objects.public java.lang.Class getRowClass()
getRowClass
in class RowDef
public java.lang.Class getCollClass()
public EntityImpl findFromDatabase(EntityCache entityCache, DBTransaction txn, int keyIndex, Key key)
public EntityImpl findInCacheByPKExtended(DBTransaction txn, Key key, boolean inclSubclasses)
public EntityImpl findInCacheByAltKeyExtended(DBTransaction txn, java.lang.String keyName, Key key, boolean inclSubclasses)
public EntityImpl findFromCache(DBTransaction txn, int keyIndex, Key key, boolean inclSubclasses)
public EntityImpl findInCacheByPrimaryKey(DBTransaction txn, Key key)
Given the name of the databse transaction and the table's primary key, this method returns the associated Entity Object if it exists in the Entity cache. This method will not cause a fault-in of an entity from the database.
This method returns null if the Entity Object is not found.
txn
- the transaction containing the Entity Object.key
- the Primary Key.public EntityImpl findByPKExtended(DBTransaction txn, Key key, boolean inclSubclasses)
public EntityImpl findByKey(DBTransaction txn, int keyIndex, Key key, boolean inclSubclasses, boolean searchDatabase)
public EntityImpl findByPrimaryKey(DBTransaction txn, Key key)
Given the name of the databse transaction and the table's primary key, this method returns the associated Entity Object. If the Entity has not already been brought into the cache by any of the View Objects, this method will cause the Entity to be fetched from the database.
This method returns null if the Entity Object is not found.
txn
- the transaction containing the Entity Object.key
- the Primary Key.public EntityImpl findByAltKey(DBTransaction txn, java.lang.String keyName, Key key, boolean inclSubclasses, boolean searchDatabase)
public Key createKey(AttributeList al)
public EntityImpl newInstance2(DBTransaction txn)
Used internally to create a new row and then create() is called from viewrow.create().
protected EntityImpl newInstance(DBTransaction txn)
public EntityImpl createInstance2(DBTransaction txn, AttributeList al)
Entity
.
The default values of the entity attributes are filled in in this method.
Override this method to create instances of composite Entities.
txn
- the DBTransaction instance for the Entity.al
- List of attribute name/value pairs to be passed to
Entity.create()EntityImpl.create(AttributeList)
protected EntityImpl createInstance(DBTransaction txn, AttributeList al)
public EntityImpl createBlankInstance2(DBTransaction txn)
Internal method invoked whenever an Entity of this type is created within the framework.
txn
- the Database Transaction Object.protected EntityImpl createBlankInstance(DBTransaction txn)
public void setRowClass(java.lang.Class rowClass)
Sets the implementation class for this Entity's rows.
rowClass
- the row implementation class.public void setCollClass(java.lang.Class collClass)
Sets the implementation class for this Entity's collection.
collClass
- the collection implementation class.public java.lang.Class getBaseComponentClass()
Returns the class of the reference object.
protected AttributeDefImpl[] getForeignKeyAttrs()
protected AttributeDefImpl[] getPrimaryKeys()
getPrimaryKeys
in class RowDef
protected AttributeDefImpl getOIDAttribute()
Returns the object identifier attribute (OID). This method is used to return attributes that are Oracle Objects.
protected AttributeDefImpl[] getRetrievedOnInsertAttributes()
protected AttributeDefImpl[] getRetrievedOnUpdateAttributes()
protected AttributeDefImpl[] getRetrievedOnInsertPrimaryKeys()
protected AttributeDefImpl[] getRetrievedOnUpdatePrimaryKeys()
public AttributeDefImpl[] getUniqueKeys()
protected AttributeDefImpl getChangeIndicatorColumn()
The Change Indicator column is used, in some applications, to indicate changes in the underlying row in the datastore. It usually takes the form of a Timestamp or a Counter and, is compared at change time, against the value in the cache, to check for consistency.
public AttributeDefImpl getChangeIndicatorColumn2()
public void setChangeIndicatorColumn(AttributeDefImpl chgIndCol)
public boolean isUpdateChangedColumns()
The return value of this flag indicates whether the SQL Generation of UPDATE statements should include all of the columns or just the changed columns. If this method returns true then only the updated columns will be included, otherwise the method will include all of the columns that are present.
public void setUpdateChangedColumns(boolean updateChangedColumns)
public boolean isUseGlueCode()
public void setUseGlueCode(boolean b)
public java.lang.String getSelectClause(SQLBuilder sqlBuilder)
public java.lang.String getSelectClause(SQLBuilder sqlBuilder, boolean forViewObject)
public java.lang.String getQuery()
protected void addPropertyChangeListener(int index, PropertyChangeListener listener)
PropertyChangeListener
to the listener list
for an attribute at the given index.
This method modifies the static/singleton metadata.
index
- the index of the attribute to which the listener is to be added.listener
- the PropertyChangeListener
to be added.PropertyChangeListener
protected void addPropertyChangeListener(java.lang.String attributeName, PropertyChangeListener listener)
PropertyChangeListener
to the listener list
for an attribute of the given Name.
This method modifies the static/singleton metadata.
attributeName
- the name of the attribute to which the listener
is to be added.listener
- the PropertyChangeListener
to be added.PropertyChangeListener
protected void removePropertyChangeListener(int index, PropertyChangeListener listener)
PropertyChangeListener
from the listener list
of the given attribute (by index).
This method modifies the static/singleton metadata.
listener
- the PropertyChangeListener to be removed.PropertyChangeListener
protected final void removePropertyChangeListener(java.lang.String attributeName, PropertyChangeListener listener)
PropertyChangeListener
from the listener list
of the given attribute (by index).
This method modifies the static/singleton metadata.
attributeName
- the attribute to which the listener is to be added.listener
- the PropertyChangeListener
to be removed.PropertyChangeListener
protected void removeValidator(JboValidatorInterface listener)
VetoableChangeListener
from the listener list.
This method modifies the static/singleton metadata.
listener
- the VetoableChangeListener
to be removed.VetoableChangeListener
public java.util.ArrayList getValidators()
getValidators
in interface ValidationManager
getValidators
in class RowDef
public void addValidator(JboValidatorInterface listener)
JboValidatorInterface
to the listener list.
This method modifies the static/singleton metadata.
addValidator
in interface ValidationManager
addValidator
in class RowDef
listener
- the JboValidatorInterface
to be added.JboValidatorInterface
@Concealed public java.util.ArrayList getTriggersOfType(TriggerType type)
@Concealed public void addTrigger(TriggerType type, JboValidatorInterface listener)
@Concealed public void removeTrigger(TriggerType trig, java.lang.String valName)
protected void addVetoableChangeListener(VetoableChangeListener listener)
Adds a VetoableChangeListener
to the listener list.
This method modifies the static/singleton metadata.
listener
- the VetoableChangeListener
to be added.VetoableChangeListener
protected void addVetoableChangeListener(int index, VetoableChangeListener listener)
Adds a VetoableChangeListener
to the listener list
for an attribute at the given index. Use this method to add a validator
to an attribute.
This method modifies the static/singleton metadata.
index
- the index of the attribute to which the listener is to be added.listener
- the VetoableChangeListener
to be added.VetoableChangeListener
protected void addVetoableChangeListener(java.lang.String attributeName, VetoableChangeListener listener)
Adds a VetoableChangeListener
to the listener list
for an attribute of the given name.
This method modifies the static/singleton metadata.
attributeName
- the attribute to which the listener is to be added.listener
- the VetoableChangeListener
to be added.VetoableChangeListener
protected void removeVetoableChangeListener(VetoableChangeListener listener)
Removes a VetoableChangeListener
from the listener list.
This method modifies the static/singleton metadata.
listener
- the VetoableChangeListener
to be removed.VetoableChangeListener
protected void removeVetoableChangeListener(int index, VetoableChangeListener listener)
Removes a VetoableChangeListener
from the listener list
of the given attribute (by index).
This method modifies the static/singleton metadata.
index
- the index of the attribute from which the listener is to be removed.listener
- the VetoableChangeListener
to be removed.VetoableChangeListener
protected final void removeVetoableChangeListener(java.lang.String attributeName, VetoableChangeListener listener)
Removes a VetoableChangeListener
from the listener list
of the given attribute (by index).
This method modifies the static/singleton metadata.
attributeName
- the attribute to which the listener is to be added.listener
- the VetoableChangeListener
to be removed.VetoableChangeListener
protected void validateTrigger(EntityImpl validateEntity, TriggerType trigger)
protected void finishedLoading()
finishedLoading
in class DefObject
protected void resolveReferences()
resolveReferences
in class DefObject
public static EntityDefImpl createEntityDef(int defScope, java.lang.String defClassName, java.lang.String dbObjName, java.lang.String viewObjectBase)
protected static EntityDefImpl loadFromXML(DefElement xmlElement, EntityDefImpl eInfo, EntityDefImpl baseEntityDef, boolean loadingBaseDef)
xmlElement
- The XML element to load from.eInfo
- EntityDefImpl to be instantiated and returnedbaseEntityDef
- Base entity defpublic void loadXMLContentsNoResolve(DefElement xmlElement, java.lang.String fullName)
protected void resetDefResolved()
resetDefResolved
in class MetaObject
public void resolveDefObject()
protected KeyDef createAltKey(java.lang.String keyName, int keyIndex, java.lang.String[] components)
createAltKey
in class RowDef
public static boolean isLobAttribute(AttributeDefImpl ad)
public EventDef getEventDef(java.lang.String name)
name
- - name of the event definitionpublic void addEventAttr(java.lang.String attrName)
public java.util.Iterator<EventMapping> getCreateEvents()
public java.util.Iterator<EventMapping> getUpdateEvents()
public java.util.Iterator<EventMapping> getDeleteEvents()
public java.util.Iterator getEventParentAttrs()
public java.util.Iterator getEventTransAttrs()
public java.util.ArrayList getExtendedDefObjects(boolean bSkipBusLogicUnits)
public java.util.List getAllExtendedDefObjects(boolean bSkipBusLogicUnits)
public java.util.List<EntityDefImpl> getExtendedDefObjectsInternal(boolean bSkipBusLogicUnits)
public AssociationDefImpl addAssocAccessor(java.lang.String accName, java.lang.String assocName, java.lang.Class javaType)
public AttributeDefImpl addAttribute(java.lang.String attrName, java.lang.String columnName, java.lang.Class javaType, boolean isPrimaryKey, boolean isDiscriminator, boolean isPersistent)
public AttributeDefImpl addAttributeOfKind(java.lang.String attrName, java.lang.String columnName, java.lang.Class javaType, boolean isPrimaryKey, boolean isDiscriminator, byte kind)
protected void loadAttribute(DefElement elem)
elem
- : BC4J Entitypublic java.lang.String getDefXMLElementTag()
getDefXMLElementTag
in interface PersistentDefinition
getDefXMLElementTag
in class PersistableDefObject
public void writeChildren(DefWriter jos)
PersistentDefinition
writeChildren
in interface PersistentDefinition
writeChildren
in class RowDef
jos
- the Output storage for persistencepublic void writeContents(DefWriter jos)
PersistentDefinition
writeContents
in interface PersistentDefinition
jos
- the Output storage for persistencepublic boolean isRefPKBased()
public void setRefPKBased(boolean val)
Sets a flag that indicates whether this Entity's REF is primary key based or not. This method is meaningful only for an Entity whose base table is an Oracle object table. For such an Entity, a question arises whether the object reference ("REF") for the table is primary key based or not. This method sets this flag.
val
- should be true if the underlying object table's REF is
primary key based. Otherwise, false.public int getRefAttrIndex()
protected boolean isRowIDPrimaryKey()
protected boolean isOIDInPrimaryKey()
public boolean isAssociationAccessorRetained()
public void setAssociationAccessorRetained(boolean b)
public int getDefTypeId()
getDefTypeId
in class DefObject
protected void setDefForComponent(ComponentObjectImpl comp)
setDefForComponent
in class DefObject
protected void unsetDefForComponent(ComponentObjectImpl comp)
unsetDefForComponent
in class DefObject
protected void addUniquePKValidation()
Whenever any of the primary key attribute values change, this validation
rule is invoked to validate, both in the cache and the database, that the
new key does not belong to any other
Entity of this type. If the key is
found in one of the Entities,
a TooManyObjectsException
is
thrown.
Subclasses should invoke this method in their createDef() method to add these validators. By default, the framework does not invoke the unique key check. For example, you can add a validator to look for duplicate keys. To do this, follow these instructions:
protected void createDef() { addUniquePKValidation(); }This enables validation to check if the modified primary key value exists in either the database or the cache.
An alternative way to apply this validator in designtime is to edit the entity in designtime and apply UniqueKeyValidator to the entity in the Rules Tab.
TooManyObjectsException
- if a duplicate key is found.createDef()
,
TooManyObjectsException
protected void addUniqueKeyValidation(JboUniqueKeyValidator val)
public void addUniqueKeyValidator(JboUniqueKeyValidator val)
val
- : Unique key validator to add.protected void loadCustomDef(DefElement xmlElement) throws PersistenceException
Loads a custom Entity definition from the associated XML file. For example, add custom attributes or additional metadata to an Entity's XML file. Then use this method to load the new definition of the Entity definition.
Typically, a call to createDef() follows this method.
xmlElement
- the root XML node for the Entity.PersistenceException
- if an error occurred while
loading the XML files at runtime.createDef()
protected boolean hasLOBAttrs()
This method is used by
doDML
to determine if the EntityDef contains LOB attributes. If it does,
doDML calls
doDMLWithLOBs
to process the DML request. For example:
protected void doDML(int operation, TransactionEvent e) { if (!getEntityDef().hasLOBAttrs()) { getSQLBuilder().doEntityDML(this,operation,e); } else { doDMLWithLOBs(operation, e); } }Developers who implement doDML() to handle the two-phase insert and update process, should override hasLOBAttrs() in the EntityDefImpl subclass and return false. This will cause doDML() to work properly with the current release.
doDML
,
doDMLWithLOBs
public static int getMaxAttrConst(java.lang.String entityName)
The framework's Extends feature lets developers add information, such as additional attributes and validation, to an existing Entity. The additional attributes are "appended" to the original Entity's list of attributes. The framework adds this method to the generated extended Entity's *Impl file and uses it at runtime to determine the index of the last attribute belonging to the original Entity. All of the attributes with index greater than this number belong to the extended Entity.
The following code snippet represents part of the class definition of the *Impl file generated by the framework for the extended Entity Object newEmp:
public class newEmpImpl extends package27.EmpImpl { protected static final int MAXATTRCONST = EntityDefImpl.getMaxAttrConst("package27.Emp"); ...The getMaxAttrConst method returns the index of the last attribute from the EntityDefImpl belonging to the original Entity Emp in package27. The result is stored in the constant MAXATTRCONST. This constant is used in calculations later in the file.
entityName
- the name of the Entity for which the index of the
last attribute is retrieved.public static boolean checkEntityLocked(Row en)
public java.lang.Object getEJBHome()
public boolean isSingleUseKeyStatement()
public void setSingleUseKeyStatement(boolean singleUse)
protected void setUseReturningClause(boolean flag)
By default, this flag is set. If a subclass resets this flag,
then callable statements for insert/update DML on entities of this
type will contain a separate SELECT statement to fetch the refresh-on-insert
or update attributes. In that case, Entity.getRefreshSQLKeyAttrs()
is
used to get the list of attributes to create the WHERE clause for this
extra SELECT statement.
public boolean isUseReturningClause()
public boolean isEffectiveDated()
isEffectiveDated
in class RowDef
true
if the Entity definition has
both effective start date and effective end date attributes,
false otherwise.public boolean hasEffectiveDateSequence()
true
if this Entity contains Effective Sequence
attributes used in Multiple Changes Per Day.public AttributeDefImpl getEffectiveStartDateAttr()
public AttributeDefImpl getEffectiveEndDateAttr()
public AttributeDefImpl getEffectiveDateTransientAttr()
RowDef
getEffectiveDateTransientAttr
in class RowDef
public AttributeDefImpl getEffectiveDateSequenceAttr()
public AttributeDefImpl getEffectiveDateSequenceFlagAttr()
protected java.lang.String getEffectiveDateTransientAttrName()
protected java.lang.String getEffDtPreviousRowsVOName()
protected java.lang.String getEffDtNextRowsVOName()
protected java.lang.String getPrevEffSequenceRowsVOName()
protected java.lang.String getNextEffSequenceRowsVOName()
protected java.lang.String getEffDtRangeRowsVOName()
public byte getEffectiveDateType()
EntityDefImpl.EFFECTIVE_DATE_TYPE_EFFECTIVE_DATED
,
EntityDefImpl.EFFECTIVE_DATE_TYPE_DATED
or
EntityDefImpl.EFFECTIVE_DATE_TYPE_NONE
public void setEffectiveDateType(byte effDtType)
EntityDefImpl.EFFECTIVE_DATE_TYPE_EFFECTIVE_DATED
,
EntityDefImpl.EFFECTIVE_DATE_TYPE_DATED
or
EntityDefImpl.EFFECTIVE_DATE_TYPE_NONE
. If
the effective dated type is changed from EntityDefImpl.EFFECTIVE_DATE_TYPE_NONE
then the framework assumes that there are start and end effective date
attributes specified for this entity.effDtType
- EntityDefImpl.EFFECTIVE_DATE_TYPE_EFFECTIVE_DATED
,
EntityDefImpl.EFFECTIVE_DATE_TYPE_DATED
or
EntityDefImpl.EFFECTIVE_DATE_TYPE_NONE
public static java.lang.Integer getLowestEffDtSequenceValue()
public static java.lang.String getCurrentSequencedRowChar()
public static java.lang.String getPriorSequencedRowChar()
public boolean hasDataSecurity()
hasDataSecurity
in class RowDef
protected void loadViewAccessors(DefElement xmlElement)
loadViewAccessors
in class RowDef
public oracle.adf.share.security.binding.BindingPermissionDef getPermissionDef()
Returns the security metadata for this Entity.
public void setPermissionDef(oracle.adf.share.security.binding.BindingPermissionDef permDef)
public AttributeDefImpl getDataSecurityAttribute()
public java.lang.String getHintValue(LocaleContext locale, java.lang.String sHintName)
public java.lang.Object getProperty(java.lang.String hintName)
NamedObjectImpl
getProperty
in class NamedObjectImpl
hintName
- a string to be used as a hash table key.hintName
, if any,
otherwise null
.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 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()
OperationContainer
getOperationDefinitions
in interface OperationContainer
public OperationDefinitionsImpl getRowOperationDefinitions()
OperationContainer
getRowOperationDefinitions
in interface OperationContainer
public ExprCodeSource editCodeSource(ExprCodeSource codeSource)
ComponentOperationsManager
editCodeSource
in interface ComponentOperationsManager
@Concealed public void addOperation(OperationDefinitionImpl opDef)
@Concealed public OperationDefinitionImpl addScriptOperation(java.lang.String id, 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 id, 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(OperationDefinitionImpl opDef)
protected void loadOperationDefinitions(DefElement xmlElement)
@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 OperationDefinitionImpl addRowScriptOperation(java.lang.String id, 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(OperationDefinitionImpl opDef)