Author: scabanovich
Date: 2011-07-12 20:27:31 -0400 (Tue, 12 Jul 2011)
New Revision: 32876
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDICoreNature.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/CDIProject.java
Log:
JBIDE-9313
https://issues.jboss.org/browse/JBIDE-9313
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDICoreNature.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDICoreNature.java 2011-07-13
00:26:51 UTC (rev 32875)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDICoreNature.java 2011-07-13
00:27:31 UTC (rev 32876)
@@ -32,6 +32,7 @@
import org.eclipse.jdt.core.JavaModelException;
import org.jboss.tools.cdi.core.extension.CDIExtensionManager;
import org.jboss.tools.cdi.internal.core.impl.definition.AnnotationDefinition;
+import org.jboss.tools.cdi.internal.core.impl.definition.BeansXMLDefinition;
import org.jboss.tools.cdi.internal.core.impl.definition.DefinitionContext;
import org.jboss.tools.cdi.internal.core.impl.definition.TypeDefinition;
import org.jboss.tools.cdi.internal.core.scanner.lib.ClassPathMonitor;
@@ -198,6 +199,32 @@
return result;
}
+ public Set<BeansXMLDefinition> getAllBeanXMLDefinitions() {
+ Set<CDICoreNature> ps = getCDIProjects(true);
+ if(ps == null || ps.isEmpty()) {
+ return getDefinitions().getBeansXMLDefinitions();
+ }
+ Set<BeansXMLDefinition> ds = getDefinitions().getBeansXMLDefinitions();
+ Set<BeansXMLDefinition> result = new HashSet<BeansXMLDefinition>();
+ result.addAll(ds);
+ Set<IPath> paths = new HashSet<IPath>();
+ for (BeansXMLDefinition d: ds) {
+ IPath t = d.getPath();
+ if(t != null) paths.add(t);
+ }
+ for (CDICoreNature p: ps) {
+ Set<BeansXMLDefinition> ds2 = p.getDefinitions().getBeansXMLDefinitions();
+ for (BeansXMLDefinition d: ds2) {
+ IPath t = d.getPath();
+ if(t != null && !paths.contains(t)) {
+ paths.add(t);
+ result.add(d);
+ }
+ }
+ }
+ return result;
+ }
+
public Set<CDICoreNature> getDependentProjects() {
return usedBy;
}
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-07-13
00:26:51 UTC (rev 32875)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/CDIProject.java 2011-07-13
00:27:31 UTC (rev 32876)
@@ -1274,7 +1274,7 @@
void rebuildXML() {
allBeansXMLData.clean();
projectBeansXMLData.clean();
- Set<BeansXMLDefinition> beanXMLs = n.getDefinitions().getBeansXMLDefinitions();
+ Set<BeansXMLDefinition> beanXMLs = n.getAllBeanXMLDefinitions();
for (BeansXMLDefinition b: beanXMLs) {
IPath p = b.getPath();
boolean t = (!p.lastSegment().endsWith(".jar") &&
p.segment(0).equals(getNature().getProject().getName()));