Author: scabanovich
Date: 2011-08-24 19:09:50 -0400 (Wed, 24 Aug 2011)
New Revision: 34250
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/CDIUtil.java
Log:
JBIDE-9583
https://issues.jboss.org/browse/JBIDE-9583
Updating dependencies of CDI projects at enabling/disabling cdi capabilities on a
project.
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-08-24
23:07:29 UTC (rev 34249)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDICoreNature.java 2011-08-24
23:09:50 UTC (rev 34250)
@@ -83,6 +83,14 @@
public void deconfigure() throws CoreException {
removeFromBuildSpec(CDICoreBuilder.BUILDER_ID);
+ CDICoreNature[] ds = dependsOn.toArray(new CDICoreNature[0]);
+ for (CDICoreNature d: ds) {
+ removeCDIProject(d);
+ }
+ CDICoreNature[] us = usedBy.toArray(new CDICoreNature[0]);
+ for (CDICoreNature u: us) {
+ u.removeCDIProject(this);
+ }
}
public IProject getProject() {
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDIUtil.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDIUtil.java 2011-08-24
23:07:29 UTC (rev 34249)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/CDIUtil.java 2011-08-24
23:09:50 UTC (rev 34250)
@@ -102,6 +102,14 @@
}
project.refreshLocal(IResource.DEPTH_INFINITE, monitor);
}
+
+ IProject[] ps = project.getWorkspace().getRoot().getProjects();
+ for (IProject p: ps) {
+ CDICoreNature n = CDICorePlugin.getCDI(p, false);
+ if(n != null && n.isStorageResolved()) {
+ n.getClassPath().validateProjectDependencies();
+ }
+ }
} catch (CoreException e) {
CDICorePlugin.getDefault().logError(e);
}