Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkmoore2008-12-09 20:06:17 +0000
committerkmoore2008-12-09 20:06:17 +0000
commit097a704539b269838069ac6a0d4fc8536bb270dd (patch)
treee1c3afd87bfaa5af20045815a30a623fc122237a
parent997f2dbbcfa006c3701bfc9a0b85466583edd1e7 (diff)
downloadwebtools.dali-097a704539b269838069ac6a0d4fc8536bb270dd.tar.gz
webtools.dali-097a704539b269838069ac6a0d4fc8536bb270dd.tar.xz
webtools.dali-097a704539b269838069ac6a0d4fc8536bb270dd.zip
258003 - Invalid problem reported for 1-M mappedBy when inverse mapping is an EclipseLink 1-1
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/EclipseLinkJavaOneToManyMappingImpl.java9
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java8
2 files changed, 16 insertions, 1 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/EclipseLinkJavaOneToManyMappingImpl.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/EclipseLinkJavaOneToManyMappingImpl.java
index f8089015dc..7f368c17a7 100644
--- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/EclipseLinkJavaOneToManyMappingImpl.java
+++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/java/EclipseLinkJavaOneToManyMappingImpl.java
@@ -11,6 +11,8 @@ package org.eclipse.jpt.eclipselink.core.internal.context.java;
import java.util.List;
import org.eclipse.jdt.core.dom.CompilationUnit;
+import org.eclipse.jpt.core.MappingKeys;
+import org.eclipse.jpt.core.context.AttributeMapping;
import org.eclipse.jpt.core.context.java.JavaPersistentAttribute;
import org.eclipse.jpt.core.internal.context.java.GenericJavaOneToManyMapping;
import org.eclipse.jpt.core.resource.java.JavaResourcePersistentAttribute;
@@ -33,7 +35,12 @@ public class EclipseLinkJavaOneToManyMappingImpl extends GenericJavaOneToManyMap
this.privateOwned = new EclipseLinkJavaPrivateOwned(this);
}
-
+ // ********** NonOwningMapping implementation **********
+ @Override
+ public boolean mappedByIsValid(AttributeMapping mappedByMapping) {
+ return super.mappedByIsValid(mappedByMapping) || (mappedByMapping.getKey() == MappingKeys.ONE_TO_ONE_ATTRIBUTE_MAPPING_KEY);
+ }
+
protected String getPrivateOwnedAnnotationName() {
return PrivateOwnedAnnotation.ANNOTATION_NAME;
}
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java
index bc58d60b53..7d1fb25f4a 100644
--- a/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java
+++ b/jpa/plugins/org.eclipse.jpt.eclipselink.core/src/org/eclipse/jpt/eclipselink/core/internal/context/orm/EclipseLinkOrmOneToManyMapping.java
@@ -11,6 +11,8 @@
package org.eclipse.jpt.eclipselink.core.internal.context.orm;
import java.util.List;
+import org.eclipse.jpt.core.MappingKeys;
+import org.eclipse.jpt.core.context.AttributeMapping;
import org.eclipse.jpt.core.context.orm.OrmPersistentAttribute;
import org.eclipse.jpt.core.internal.context.orm.GenericOrmOneToManyMapping;
import org.eclipse.jpt.core.resource.orm.AbstractXmlTypeMapping;
@@ -38,6 +40,12 @@ public class EclipseLinkOrmOneToManyMapping extends GenericOrmOneToManyMapping
this.joinFetch = new EclipseLinkOrmJoinFetch(this);
}
+ // ********** NonOwningMapping implementation **********
+ @Override
+ public boolean mappedByIsValid(AttributeMapping mappedByMapping) {
+ return super.mappedByIsValid(mappedByMapping) || (mappedByMapping.getKey() == MappingKeys.ONE_TO_ONE_ATTRIBUTE_MAPPING_KEY);
+ }
+
public PrivateOwned getPrivateOwned() {
return this.privateOwned;

Back to the top