Author: scabanovich
Date: 2011-12-21 19:32:16 -0500 (Wed, 21 Dec 2011)
New Revision: 37507
Modified:
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/IJavaAnnotation.java
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/AnnotationDeclaration.java
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/AnnotationLiteral.java
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/JavaAnnotation.java
Log:
JBIDE-10187
https://issues.jboss.org/browse/JBIDE-10187
Correct implementation of AnnotationDeclaration.getParentElement()
Modified:
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/IJavaAnnotation.java
===================================================================
---
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/IJavaAnnotation.java 2011-12-21
23:56:44 UTC (rev 37506)
+++
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/IJavaAnnotation.java 2011-12-22
00:32:16 UTC (rev 37507)
@@ -11,6 +11,7 @@
package org.jboss.tools.common.java;
import org.eclipse.core.resources.IResource;
+import org.eclipse.jdt.core.IJavaElement;
import org.eclipse.jdt.core.IMember;
import org.eclipse.jdt.core.IMemberValuePair;
import org.eclipse.jdt.core.IType;
@@ -49,6 +50,13 @@
*
* @return Java element on which or for which this annotation was created
*/
+ public IJavaElement getParentElement();
+
+ /**
+ * Returns Java member on which or for which this annotation was created.
+ *
+ * @return Java member on which or for which this annotation was created
+ */
public IMember getParentMember();
/**
Modified:
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/AnnotationDeclaration.java
===================================================================
---
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/AnnotationDeclaration.java 2011-12-21
23:56:44 UTC (rev 37506)
+++
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/AnnotationDeclaration.java 2011-12-22
00:32:16 UTC (rev 37507)
@@ -179,8 +179,6 @@
@Override
public IJavaElement getSourceElement() {
- // Should we return the corresponding java element instead of member?
- // If this is an annotation declared on local variable (method parameter) then the
parent member and element are not the same object.
- return getSourceMember();
+ return annotation.getParentElement();
}
}
\ No newline at end of file
Modified:
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/AnnotationLiteral.java
===================================================================
---
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/AnnotationLiteral.java 2011-12-21
23:56:44 UTC (rev 37506)
+++
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/AnnotationLiteral.java 2011-12-22
00:32:16 UTC (rev 37507)
@@ -11,6 +11,7 @@
package org.jboss.tools.common.java.impl;
import org.eclipse.core.resources.IResource;
+import org.eclipse.jdt.core.IJavaElement;
import org.eclipse.jdt.core.IMember;
import org.eclipse.jdt.core.IMemberValuePair;
import org.eclipse.jdt.core.ISourceRange;
@@ -83,6 +84,10 @@
return null;
}
+ public IJavaElement getParentElement() {
+ return null;
+ }
+
public IMemberValuePair[] getMemberValuePairs() {
return memberValues;
}
Modified:
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/JavaAnnotation.java
===================================================================
---
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/JavaAnnotation.java 2011-12-21
23:56:44 UTC (rev 37506)
+++
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/java/impl/JavaAnnotation.java 2011-12-22
00:32:16 UTC (rev 37507)
@@ -86,6 +86,10 @@
return null;
}
+ public IJavaElement getParentElement() {
+ return annotation.getParent();
+ }
+
public IMemberValuePair[] getMemberValuePairs() {
try {
return annotation.getMemberValuePairs();