An EIS one-to-one mapping is a reference mapping that represents the relationship between a single source object and a single mapped persistent Java object. The source object usually contains a foreign key (pointer) to the target object (key on source); alternatively, the target object may contain a foreign key to the source object (key on target). Because both the source and target objects use interactions, they must both be configured as root object types.
| Record Type | Description |
|---|---|
| Indexed | Ordered collection of record elements. The indexed record EIS format enables Java class attribute values to be retrieved by position or index. |
| Mapped | Key-value map based representation of record elements. The mapped record EIS format enables Java class attribute values to be retrieved by an object key. |
| XML | Record/Map representation of an XML DOM element. |
org.eclipse.persistence.eis.EISDescriptor#useIndexedRecordFormat , org.eclipse.persistence.eis.EISDescriptor#useMappedRecordFormat , org.eclipse.persistence.eis.EISDescriptor#useXMLRecordFormat
| Modifier and Type | Field and Description |
|---|---|
| protected transient Expression | |
| protected boolean | shouldVerifyDelete
These are used for non-unit of work modification to check if the value of the 1-1 was changed and a deletion is required. |
| protected Map | sourceToTargetKeyFields
Maps the source foreign/primary key fields to the target primary/foreign key fields. |
| protected Map | targetToSourceKeyFields
Maps the target primary/foreign key fields to the source foreign/primary key fields. |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public void | addForeignKeyField(DatabaseField sourceForeignKeyField, DatabaseField targetKeyField)
Overrides org. |
| public void | addForeignKeyFieldName(String sourceForeignKeyFieldName, String targetKeyFieldName)
PUBLIC: Define the source foreign key relationship in the one-to-one mapping. |
| public Object | clone()
Overrides org. |
| public Object | extractPrimaryKeysForReferenceObjectFromRow(AbstractRecord row)
Overrides org. |
| public Class | getFieldClassification(DatabaseField fieldToClassify)
Overrides org. |
| public Expression | getPrivateOwnedCriteria()
INTERNAL: The private owned criteria is only used outside of the unit of work to compare the previous value of the reference. |
| public Map | Returns: The mapping from source to target key fieldsINTERNAL: Gets the foreign key fields. |
| public Map | Returns: The mapping from target to source key fieldsINTERNAL: Gets the target foreign key fields. |
| public void | initialize(AbstractSession session)
Overrides org. |
| protected void | initializeForeignKeys(AbstractSession session)
INTERNAL: The foreign keys primary keys are stored as database fields in the hashtable. |
| protected void | initializePrivateOwnedCriteria()
INTERNAL: Selection criteria is created with source foreign keys and target keys. |
| protected void | initializeSelectionCriteria(AbstractSession session)
INTERNAL: Selection criteria is created with source foreign keys and target keys. |
| public boolean | |
| public boolean | isOneToOneMapping()
Overrides org. |
| protected Object | readPrivateOwnedForObject(ObjectLevelModifyQuery modifyQuery)
Overrides org. |
| protected void | setPrivateOwnedCriteria(Expression expression)
INTERNAL: Private owned criteria is used to verify the deletion of the target. |
| public void | setSelectionSQLString(String sqlString)
Overrides org. |
| public void | setShouldVerifyDelete(boolean
Sets whether delete verification should be performed shouldVerifyDelete)PUBLIC: Verify delete is used during delete and update on private 1:1's outside of a unit of work only. |
| public void | setSourceToTargetKeyFields(Map<DatabaseField, DatabaseField>
The mapping from source keys to target keys sourceToTargetKeyFields)INTERNAL: Set the source keys to target keys fields association. |
| public void | setTargetToSourceKeyFields(Map<DatabaseField, DatabaseField>
The mapping from target keys to source keys targetToSourceKeyFields)INTERNAL: Set the target keys to source keys fields association. |
| public boolean | Returns: TRUE if verify delete has been enabledPUBLIC: Verify delete is used during delete and update outside of a unit of work only. |
| public Object | valueFromRow(AbstractRecord row, JoinedAttributeManager joinManager, ObjectBuildingQuery query, CacheKey cacheKey, AbstractSession session, boolean isTargetProtected, Boolean[] wasCacheUsed)
Overrides org. |
| public void | writeFromObjectIntoRow(Object object, AbstractRecord Record, AbstractSession session, DatabaseMapping.
Overrides org. |
| privateOwnedCriteria | back to summary |
|---|---|
| protected transient Expression privateOwnedCriteria | |
| shouldVerifyDelete | back to summary |
|---|---|
| protected boolean shouldVerifyDelete These are used for non-unit of work modification to check if the value of the 1-1 was changed and a deletion is required. | |
| sourceToTargetKeyFields | back to summary |
|---|---|
| protected Map<DatabaseField, DatabaseField> sourceToTargetKeyFields Maps the source foreign/primary key fields to the target primary/foreign key fields. | |
| targetToSourceKeyFields | back to summary |
|---|---|
| protected Map<DatabaseField, DatabaseField> targetToSourceKeyFields Maps the target primary/foreign key fields to the source foreign/primary key fields. | |
| EISOneToOneMapping | back to summary |
|---|---|
| public EISOneToOneMapping() | |
| addForeignKeyField | back to summary |
|---|---|
| public void addForeignKeyField(DatabaseField sourceForeignKeyField, DatabaseField targetKeyField) Overrides org. PUBLIC: Define the source foreign key relationship in the one-to-one mapping. This method is used to add foreign key relationships to the mapping. Both the source foreign key field name and the corresponding target primary key field name must be specified.
| |
| addForeignKeyFieldName | back to summary |
|---|---|
| public void addForeignKeyFieldName(String sourceForeignKeyFieldName, String targetKeyFieldName) PUBLIC: Define the source foreign key relationship in the one-to-one mapping. This method is used to add foreign key relationships to the mapping. Both the source foreign key field name and the corresponding target primary key field name must be specified. | |
| clone | back to summary |
|---|---|
| public Object clone() Overrides org. INTERNAL: This methods clones all the fields and ensures that each collection refers to the same clones.
| |
| extractPrimaryKeysForReferenceObjectFromRow | back to summary |
|---|---|
| public Object extractPrimaryKeysForReferenceObjectFromRow(AbstractRecord row) Overrides org. INTERNAL: Return the primary key for the reference object (i.e. the object object referenced by domainObject and specified by mapping). This key will be used by a RemoteValueHolder.
| |
| getFieldClassification | back to summary |
|---|---|
| public Class Overrides org. INTERNAL: Return the classifiction for the field contained in the mapping. This is used to convert the row value to a consistent java value.
| |
| getPrivateOwnedCriteria | back to summary |
|---|---|
| public Expression getPrivateOwnedCriteria() INTERNAL: The private owned criteria is only used outside of the unit of work to compare the previous value of the reference. | |
| getSourceToTargetKeyFields | back to summary |
|---|---|
| public Map INTERNAL: Gets the foreign key fields.
| |
| getTargetToSourceKeyFields | back to summary |
|---|---|
| public Map INTERNAL: Gets the target foreign key fields.
| |
| initialize | back to summary |
|---|---|
| public void initialize(AbstractSession session) throws DescriptorException Overrides org. INTERNAL: Initialize the mapping.
| |
| initializeForeignKeys | back to summary |
|---|---|
| protected void initializeForeignKeys(AbstractSession session) INTERNAL: The foreign keys primary keys are stored as database fields in the hashtable. | |
| initializePrivateOwnedCriteria | back to summary |
|---|---|
| protected void initializePrivateOwnedCriteria() INTERNAL: Selection criteria is created with source foreign keys and target keys. | |
| initializeSelectionCriteria | back to summary |
|---|---|
| protected void initializeSelectionCriteria(AbstractSession session) INTERNAL: Selection criteria is created with source foreign keys and target keys. This criteria is then used to read target records from the table. CR#3922 - This method is almost the same as buildSelectionCriteria() the difference is that getSelectionCriteria() is called | |
| isEISMapping | back to summary |
|---|---|
| public boolean isEISMapping() Overrides org. INTERNAL:
| |
| isOneToOneMapping | back to summary |
|---|---|
| public boolean isOneToOneMapping() Overrides org. INTERNAL:
| |
| readPrivateOwnedForObject | back to summary |
|---|---|
| protected Object readPrivateOwnedForObject(ObjectLevelModifyQuery modifyQuery) throws DatabaseException Overrides org. INTERNAL: Reads the private owned object.
| |
| setPrivateOwnedCriteria | back to summary |
|---|---|
| protected void setPrivateOwnedCriteria(Expression expression) INTERNAL: Private owned criteria is used to verify the deletion of the target. It joins from the source table on the foreign key to the target table, with a parameterization of the primary key of the source object. | |
| setSelectionSQLString | back to summary |
|---|---|
| public void setSelectionSQLString(String sqlString) Overrides org. INTERNAL: This method is not supported in an EIS environment.
| |
| setShouldVerifyDelete | back to summary |
|---|---|
| public void setShouldVerifyDelete(boolean shouldVerifyDelete) PUBLIC: Verify delete is used during delete and update on private 1:1's outside of a unit of work only. It checks for the previous value of the target object through joining the source and target tables. By default it is always done, but may be disabled for performance on distributed database reasons. In the unit of work the previous value is obtained from the backup-clone so it is never used.
| |
| setSourceToTargetKeyFields | back to summary |
|---|---|
| public void setSourceToTargetKeyFields(Map<DatabaseField, DatabaseField> sourceToTargetKeyFields) INTERNAL: Set the source keys to target keys fields association.
| |
| setTargetToSourceKeyFields | back to summary |
|---|---|
| public void setTargetToSourceKeyFields(Map<DatabaseField, DatabaseField> targetToSourceKeyFields) INTERNAL: Set the target keys to source keys fields association.
| |
| shouldVerifyDelete | back to summary |
|---|---|
| public boolean shouldVerifyDelete() PUBLIC: Verify delete is used during delete and update outside of a unit of work only. It checks for the previous value of the target object through joining the source and target tables.
| |
| valueFromRow | back to summary |
|---|---|
| public Object valueFromRow(AbstractRecord row, JoinedAttributeManager joinManager, ObjectBuildingQuery query, CacheKey cacheKey, AbstractSession session, boolean isTargetProtected, Boolean[] wasCacheUsed) throws DatabaseException Overrides org. INTERNAL: Return the value of the field from the row or a value holder on the query to obtain the object. Check for batch + aggregation reading.
| |
| writeFromObjectIntoRow | back to summary |
|---|---|
| public void writeFromObjectIntoRow(Object object, AbstractRecord Record, AbstractSession session, DatabaseMapping. Overrides org. INTERNAL: Get a value from the object and set that in the respective field of the row.
| |