diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphManager.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphManager.java
index 079edf1..39fae6c 100644
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphManager.java
+++ b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphManager.java
@@ -47,6 +47,7 @@
 	private static final String MANIFEST_URI = "META-INF/MANIFEST.MF";
 	private HashMap wtpModuleTimeStamps = null;
 	private HashMap manifestTimeStamps = null;
+	private long modStamp = System.currentTimeMillis();
 	
 	private DependencyGraphManager() {
 		super();
@@ -72,8 +73,13 @@
 	}
 	
 	private void constructIfNecessary() {
-		if (moduleTimeStampsChanged() || manifestTimeStampsChanged()) 
+		if (metadataChanged()) {
 			buildDependencyGraph();
+		}
+	}
+
+	private boolean metadataChanged() {
+		return moduleTimeStampsChanged() || manifestTimeStampsChanged();
 	}
 	
 	private boolean manifestTimeStampsChanged() {
@@ -223,6 +229,7 @@
 		DependencyGraph.getInstance().clear();
 		getWtpModuleTimeStamps().clear();
 		getManifestTimeStamps().clear();
+		setModStamp(System.currentTimeMillis());
 	}
 
 	/**
@@ -249,4 +256,14 @@
 	public void forceRefresh() {
 		buildDependencyGraph();
 	}
+
+	
+	public long getModStamp() {
+		return modStamp;
+	}
+
+	
+	private void setModStamp(long modStamp) {
+		this.modStamp = modStamp;
+	}
 }
