Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkmoore2007-05-07 20:43:08 +0000
committerkmoore2007-05-07 20:43:08 +0000
commit6cd89d77bd44f22f03c06bbc40be03bd6ae278f6 (patch)
tree4ce984656cdfbd4aeaad12fa7642366bd5c250b0 /jpa/plugins
parent7a18b80e2bcefd52352d0e7e854a31986384c083 (diff)
downloadwebtools.dali-6cd89d77bd44f22f03c06bbc40be03bd6ae278f6.tar.gz
webtools.dali-6cd89d77bd44f22f03c06bbc40be03bd6ae278f6.tar.xz
webtools.dali-6cd89d77bd44f22f03c06bbc40be03bd6ae278f6.zip
181470 - adapter fix for plural annotations with a collection element
Diffstat (limited to 'jpa/plugins')
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAbstractQuery.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAssociationOverride.java2
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaJoinColumn.java8
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedNativeQuery.java2
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedQuery.java2
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaOverride.java4
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaQueryHint.java16
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/EntityComposite.java30
8 files changed, 53 insertions, 15 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAbstractQuery.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAbstractQuery.java
index 62fa42bc10..ce5cdf8b45 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAbstractQuery.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAbstractQuery.java
@@ -601,6 +601,10 @@ public abstract class JavaAbstractQuery extends JavaEObject implements IQuery
protected abstract JavaQueryHint createJavaQueryHint(int index);
+ protected IndexedDeclarationAnnotationAdapter getDeclarationAnnotationAdapter() {
+ return this.idaa;
+ }
+
// ********** persistence model -> java annotations **********
void moveAnnotation(int newIndex) {
this.annotationAdapter.moveAnnotation(newIndex);
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAssociationOverride.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAssociationOverride.java
index 9698861981..bae1681686 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAssociationOverride.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaAssociationOverride.java
@@ -339,7 +339,7 @@ public class JavaAssociationOverride extends JavaOverride
}
private JavaJoinColumn createJavaJoinColumn(int index) {
- return JavaJoinColumn.createAssociationOverrideJoinColumn(new JoinColumnOwner(this), this.getMember(), index);
+ return JavaJoinColumn.createAssociationOverrideJoinColumn(this, new JoinColumnOwner(this), this.getMember(), index);
}
// ********** jpa model -> java annotations **********
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaJoinColumn.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaJoinColumn.java
index fe1dc2c75a..75247974c6 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaJoinColumn.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaJoinColumn.java
@@ -451,12 +451,12 @@ public class JavaJoinColumn extends AbstractJavaColumn implements IJoinColumn
return new CombinationIndexedDeclarationAnnotationAdapter(SINGLE_DECLARATION_ANNOTATION_ADAPTER, MULTIPLE_DECLARATION_ANNOTATION_ADAPTER, index, JPA.JOIN_COLUMN);
}
- static JavaJoinColumn createAssociationOverrideJoinColumn(IJoinColumn.Owner owner, Member member, int index) {
- return JpaJavaMappingsFactory.eINSTANCE.createJavaJoinColumn(owner, member, buildAssociationOverrideAnnotationAdapter(index));
+ static JavaJoinColumn createAssociationOverrideJoinColumn(JavaAssociationOverride associationOverride, IJoinColumn.Owner owner, Member member, int index) {
+ return JpaJavaMappingsFactory.eINSTANCE.createJavaJoinColumn(owner, member, buildAssociationOverrideAnnotationAdapter(associationOverride, index));
}
- private static IndexedDeclarationAnnotationAdapter buildAssociationOverrideAnnotationAdapter(int index) {
- return new NestedIndexedDeclarationAnnotationAdapter(JavaAssociationOverride.SINGLE_DECLARATION_ANNOTATION_ADAPTER, JPA.ASSOCIATION_OVERRIDE__JOIN_COLUMNS, index, JPA.JOIN_COLUMN);
+ private static IndexedDeclarationAnnotationAdapter buildAssociationOverrideAnnotationAdapter(JavaAssociationOverride associationOverride, int index) {
+ return new NestedIndexedDeclarationAnnotationAdapter(associationOverride.getDeclarationAnnotationAdapter(), JPA.ASSOCIATION_OVERRIDE__JOIN_COLUMNS, index, JPA.JOIN_COLUMN);
}
static JavaJoinColumn createJoinTableJoinColumn(IJoinColumn.Owner owner, Member member, int index) {
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedNativeQuery.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedNativeQuery.java
index f55abe4f9b..cbef2c8468 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedNativeQuery.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedNativeQuery.java
@@ -339,7 +339,7 @@ public class JavaNamedNativeQuery extends JavaAbstractQuery
}
protected JavaQueryHint createJavaQueryHint(int index) {
- return JavaQueryHint.createNamedNativeQueryQueryHint(this.getMember(), index);
+ return JavaQueryHint.createNamedNativeQueryQueryHint(this, this.getMember(), index);
}
// ********** static methods **********
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedQuery.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedQuery.java
index bdea7d802e..30195c4c01 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedQuery.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaNamedQuery.java
@@ -61,7 +61,7 @@ public class JavaNamedQuery extends JavaAbstractQuery implements INamedQuery
}
protected JavaQueryHint createJavaQueryHint(int index) {
- return JavaQueryHint.createNamedQueryQueryHint(this.getMember(), index);
+ return JavaQueryHint.createNamedQueryQueryHint(this, this.getMember(), index);
}
// ********** static methods **********
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaOverride.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaOverride.java
index 86c865c14c..e71e3312b4 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaOverride.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaOverride.java
@@ -290,4 +290,8 @@ public abstract class JavaOverride extends JavaEObject implements IOverride
ITextRange textRange = this.member.annotationTextRange(this.daa);
return (textRange == null) ? getOwner().getTextRange() : textRange;
}
+
+ protected IndexedDeclarationAnnotationAdapter getDeclarationAnnotationAdapter() {
+ return this.daa;
+ }
} \ No newline at end of file
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaQueryHint.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaQueryHint.java
index 415415e172..813c6f0fa4 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaQueryHint.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/content/java/mappings/JavaQueryHint.java
@@ -366,19 +366,19 @@ public class JavaQueryHint extends JavaEObject implements IQueryHint
}
// ********** static methods **********
- static JavaQueryHint createNamedQueryQueryHint(Member member, int index) {
- return JpaJavaMappingsFactory.eINSTANCE.createJavaQueryHint(member, buildNamedQueryQueryHintAnnotationAdapter(index));
+ static JavaQueryHint createNamedQueryQueryHint(JavaNamedQuery namedQuery,Member member, int index) {
+ return JpaJavaMappingsFactory.eINSTANCE.createJavaQueryHint(member, buildNamedQueryQueryHintAnnotationAdapter(namedQuery, index));
}
- private static IndexedDeclarationAnnotationAdapter buildNamedQueryQueryHintAnnotationAdapter(int index) {
- return new NestedIndexedDeclarationAnnotationAdapter(JavaNamedQuery.SINGLE_DECLARATION_ANNOTATION_ADAPTER, JPA.NAMED_QUERY__HINTS, index, JPA.QUERY_HINT);
+ private static IndexedDeclarationAnnotationAdapter buildNamedQueryQueryHintAnnotationAdapter(JavaNamedQuery namedQuery, int index) {
+ return new NestedIndexedDeclarationAnnotationAdapter(namedQuery.getDeclarationAnnotationAdapter(), JPA.NAMED_QUERY__HINTS, index, JPA.QUERY_HINT);
}
- static JavaQueryHint createNamedNativeQueryQueryHint(Member member, int index) {
- return JpaJavaMappingsFactory.eINSTANCE.createJavaQueryHint(member, buildNamedNativeQueryQueryHintAnnotationAdapter(index));
+ static JavaQueryHint createNamedNativeQueryQueryHint(JavaNamedNativeQuery namedNativeQuery, Member member, int index) {
+ return JpaJavaMappingsFactory.eINSTANCE.createJavaQueryHint(member, buildNamedNativeQueryQueryHintAnnotationAdapter(namedNativeQuery, index));
}
- private static IndexedDeclarationAnnotationAdapter buildNamedNativeQueryQueryHintAnnotationAdapter(int index) {
- return new NestedIndexedDeclarationAnnotationAdapter(JavaNamedNativeQuery.SINGLE_DECLARATION_ANNOTATION_ADAPTER, JPA.NAMED_NATIVE_QUERY__HINTS, index, JPA.QUERY_HINT);
+ private static IndexedDeclarationAnnotationAdapter buildNamedNativeQueryQueryHintAnnotationAdapter(JavaNamedNativeQuery namedNativeQuery, int index) {
+ return new NestedIndexedDeclarationAnnotationAdapter(namedNativeQuery.getDeclarationAnnotationAdapter(), JPA.NAMED_NATIVE_QUERY__HINTS, index, JPA.QUERY_HINT);
}
} // JavaQueryHint
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/EntityComposite.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/EntityComposite.java
index 83bf5c6779..965e6ba744 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/EntityComposite.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/mappings/details/EntityComposite.java
@@ -12,6 +12,8 @@ import org.eclipse.emf.common.command.CommandStack;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.impl.EObjectImpl;
import org.eclipse.jpt.core.internal.mappings.IEntity;
+import org.eclipse.jpt.core.internal.mappings.INamedQuery;
+import org.eclipse.jpt.core.internal.mappings.IQueryHint;
import org.eclipse.jpt.core.internal.mappings.ITable;
import org.eclipse.jpt.core.internal.mappings.JpaCoreMappingsPackage;
import org.eclipse.jpt.ui.internal.IJpaHelpContextIds;
@@ -181,6 +183,34 @@ public class EntityComposite extends BaseJpaComposite
this.inheritanceComposite.populate(obj);
if (this.entity != null) {
this.tableComposite.populate(this.entity.getTable());
+ INamedQuery namedQuery = this.entity.createNamedQuery(0);
+ this.entity.getNamedQueries().add(namedQuery);
+ namedQuery.setName("foo");
+ namedQuery.setQuery("select foo from Bar");
+ IQueryHint hint = namedQuery.createQueryHint(0);
+ namedQuery.getHints().add(hint);
+ hint.setName("myHint");
+ hint.setValue("myValue");
+
+ IQueryHint hint2 = namedQuery.createQueryHint(1);
+ namedQuery.getHints().add(hint2);
+ hint2.setName("myHint2");
+ hint2.setValue("myValue2");
+
+
+ INamedQuery namedQuery2 = this.entity.createNamedQuery(1);
+ this.entity.getNamedQueries().add(namedQuery2);
+ namedQuery2.setName("foo2");
+ namedQuery2.setQuery("select foo from Bar2");
+ IQueryHint hint3 = namedQuery2.createQueryHint(0);
+ namedQuery2.getHints().add(hint3);
+ hint3.setName("myHint");
+ hint3.setValue("myValue");
+
+ IQueryHint hint4 = namedQuery2.createQueryHint(1);
+ namedQuery2.getHints().add(hint4);
+ hint4.setName("myHint2");
+ hint4.setValue("myValue2");
}
else {
this.tableComposite.populate(null);

Back to the top