Author: scabanovich
Date: 2011-08-04 13:39:11 -0400 (Thu, 04 Aug 2011)
New Revision: 33594
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/CDIProject.java
Log:
JBIDE-9452
https://issues.jboss.org/browse/JBIDE-9452
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java 2011-08-04
17:31:24 UTC (rev 33593)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java 2011-08-04
17:39:11 UTC (rev 33594)
@@ -183,6 +183,10 @@
result.add(d);
}
}
+ IAnnotationDeclaration d = findNamedAnnotation();
+ if(d instanceof IQualifierDeclaration && !result.contains(d)) {
+ result.add((IQualifierDeclaration)d);
+ }
}
return result;
}
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/CDIProject.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/CDIProject.java 2011-08-04
17:31:24 UTC (rev 33593)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/CDIProject.java 2011-08-04
17:39:11 UTC (rev 33594)
@@ -357,6 +357,8 @@
}
boolean delegateInjectionPoint = injectionPoint.isDelegate();
+ String injectionPointName = injectionPoint.getName();
+
for (IBean b: beans) {
if(b instanceof ClassBean && !(b instanceof IBuiltInBean)) {
IType bType = b.getBeanClass();
@@ -383,6 +385,10 @@
if(delegateInjectionPoint && b == injectionPoint.getClassBean()) {
continue;
}
+ if(injectionPointName != null && injectionPointName.equals(b.getName())) {
+ //
+ continue;
+ }
Set<IQualifierDeclaration> qsb = b.getQualifierDeclarations(true);
if(areMatchingQualifiers(qsb, qs)) {
result.add(b);
@@ -524,9 +530,13 @@
private static String getAnnotationDeclarationKey(IAnnotationDeclaration d,
Set<IMethod> ignoredMembers) throws CoreException {
Set<IMethod> nb = ignoredMembers == null ? new HashSet<IMethod>() :
ignoredMembers;
IType type = d.getType();
+ StringBuffer result = new StringBuffer();
+ result.append(type.getFullyQualifiedName());
+ if(CDIConstants.NAMED_QUALIFIER_TYPE_NAME.equals(type.getFullyQualifiedName())) {
+ //Declared name is excluded from comparison; names should be compared by invoking
getName() method.
+ return result.toString();
+ }
IMethod[] ms = type.getMethods();
- StringBuffer result = new StringBuffer();
- result.append(type.getFullyQualifiedName());
if(ms.length > 0) {
TreeMap<String, String> values = new TreeMap<String, String>();
IMemberValuePair[] ps = d.getMemberValuePairs();