[310859] DependencyGraphManager causing java.lang.IllegalStateException: Workspace is closed.
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphImpl.java
index a633ec1..1700033 100644
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphImpl.java
+++ b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphImpl.java
@@ -30,6 +30,7 @@
 import org.eclipse.wst.common.componentcore.internal.resources.VirtualComponent;
 import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
 import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
+import org.osgi.framework.Bundle;
 
 public class DependencyGraphImpl implements IDependencyGraph {
 
@@ -343,7 +344,14 @@
 					// if there are any added projects, then unfortunately the
 					// entire workspace needs to be processed
 					if (added.length > 0) {
-						IProject[] allProjects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
+						IProject[] allProjects = null;
+						int state = ResourcesPlugin.getPlugin().getBundle().getState();
+						if (state == Bundle.ACTIVE) {
+							allProjects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
+						} else {
+							return;
+						}
+						
 						for (IProject sourceProject : allProjects) {
 							IVirtualComponent component = ComponentCore.createComponent(sourceProject);
 							if (component != null) {
@@ -365,7 +373,14 @@
 							}
 						}
 					} else if (updated.length > 0) {
-						IProject[] allProjects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
+						IProject[] allProjects = null;
+						int state = ResourcesPlugin.getPlugin().getBundle().getState();
+						if (state == Bundle.ACTIVE) {
+							allProjects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
+						} else {
+							return;
+						}
+						
 						Set<IProject> validRefs = new HashSet<IProject>();
 						for (Object o : updated) {
 							IProject sourceProject = (IProject) o;