diff options
author | kmoore | 2008-02-14 16:03:09 +0000 |
---|---|---|
committer | kmoore | 2008-02-14 16:03:09 +0000 |
commit | 8523deeb344cfbbbc201b3533d27f29c54ff038e (patch) | |
tree | 9414573400360b51d755539a9b0ac02079e08273 | |
parent | b6dfbb37ff1f5f0c898e6589c00ea530d5b180d8 (diff) | |
download | webtools.dali-8523deeb344cfbbbc201b3533d27f29c54ff038e.tar.gz webtools.dali-8523deeb344cfbbbc201b3533d27f29c54ff038e.tar.xz webtools.dali-8523deeb344cfbbbc201b3533d27f29c54ff038e.zip |
fixed reference table population for joinColumns in association overrides
3 files changed, 12 insertions, 18 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/JoinColumnInAssociationOverrideDialog.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/JoinColumnInAssociationOverrideDialog.java index 256fd422d7..e88b10d5e1 100644 --- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/JoinColumnInAssociationOverrideDialog.java +++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/JoinColumnInAssociationOverrideDialog.java @@ -35,7 +35,7 @@ public class JoinColumnInAssociationOverrideDialog extends JoinColumnDialog<Join public JoinColumnInAssociationOverrideDialog(Shell parent, IAssociationOverride associationOverride) { - super(parent); + this(parent, associationOverride, null); this.associationOverride = associationOverride; } @@ -47,10 +47,11 @@ public class JoinColumnInAssociationOverrideDialog extends JoinColumnDialog<Join * this state object is used to create a new one */ public JoinColumnInAssociationOverrideDialog(Shell parent, - IJoinColumn joinColumn) { + IAssociationOverride associationOverride, + IJoinColumn joinColumn) { super(parent, joinColumn); - this.associationOverride = (IAssociationOverride) joinColumn.parent(); + this.associationOverride = associationOverride; } /* @@ -58,11 +59,6 @@ public class JoinColumnInAssociationOverrideDialog extends JoinColumnDialog<Join */ @Override protected JoinColumnInAssociationOverrideStateObject buildStateObject() { - - if (associationOverride != null) { - return new JoinColumnInAssociationOverrideStateObject(associationOverride); - } - - return new JoinColumnInAssociationOverrideStateObject(getJoinColumn()); + return new JoinColumnInAssociationOverrideStateObject(this.associationOverride, getJoinColumn()); } }
\ No newline at end of file diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/JoinColumnInAssociationOverrideStateObject.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/JoinColumnInAssociationOverrideStateObject.java index b718ab6c52..3f8956b8fd 100644 --- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/JoinColumnInAssociationOverrideStateObject.java +++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/JoinColumnInAssociationOverrideStateObject.java @@ -10,7 +10,6 @@ package org.eclipse.jpt.ui.internal.mappings.details; import org.eclipse.jpt.core.internal.context.base.IAssociationOverride; -import org.eclipse.jpt.core.internal.context.base.IAttributeMapping; import org.eclipse.jpt.core.internal.context.base.IEntity; import org.eclipse.jpt.core.internal.context.base.IJoinColumn; import org.eclipse.jpt.core.internal.context.base.IRelationshipMapping; @@ -40,8 +39,9 @@ public class JoinColumnInAssociationOverrideStateObject extends JoinColumnStateO * @param joinColumn Either the join column to edit or <code>null</code> if * this state object is used to create a new one */ - public JoinColumnInAssociationOverrideStateObject(IJoinColumn joinColumn) { + public JoinColumnInAssociationOverrideStateObject(IAssociationOverride associationOverride, IJoinColumn joinColumn) { super(joinColumn); + this.associationOverride = associationOverride; } /* @@ -57,7 +57,7 @@ public class JoinColumnInAssociationOverrideStateObject extends JoinColumnStateO } public IAssociationOverride getAssociationOverride() { - return associationOverride; + return this.associationOverride; } /* @@ -73,15 +73,13 @@ public class JoinColumnInAssociationOverrideStateObject extends JoinColumnStateO */ @Override public Table getReferencedNameTable() { - IAttributeMapping attributeMapping = null;// TODO: this.associationOverride.getOwner().attributeMapping(this.associationOverride.getName()); + IRelationshipMapping relationshipMapping = this.associationOverride.owner().relationshipMapping(this.associationOverride.getName()); - if (attributeMapping == null || - !(attributeMapping instanceof IRelationshipMapping)) - { + if (relationshipMapping == null){ return null; } - IEntity targetEntity = ((IRelationshipMapping) attributeMapping).getResolvedTargetEntity(); + IEntity targetEntity = relationshipMapping.getResolvedTargetEntity(); if (targetEntity != null) { return targetEntity.primaryDbTable(); diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/OverridesComposite.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/OverridesComposite.java index 32d25647eb..3dcf16e2e0 100644 --- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/OverridesComposite.java +++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/OverridesComposite.java @@ -365,7 +365,7 @@ public class OverridesComposite extends AbstractFormPane<IEntity> private void editJoinColumn(IJoinColumn joinColumn) { JoinColumnInAssociationOverrideDialog dialog = - new JoinColumnInAssociationOverrideDialog(shell(), joinColumn); + new JoinColumnInAssociationOverrideDialog(shell(), (IAssociationOverride) overrideHolder.value(), joinColumn); dialog.openDialog(buildEditJoinColumnPostExecution()); } |