Author: rob.stryker(a)jboss.com
Date: 2011-08-15 12:35:36 -0400 (Mon, 15 Aug 2011)
New Revision: 33928
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.egit.core/src/org/jboss/ide/eclipse/as/egit/core/module/GitProjectModuleFactoryDelegate.java
Log:
JBIDE-9510 - if project is unlinked from a repo, it no longer is a recognied module.
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.egit.core/src/org/jboss/ide/eclipse/as/egit/core/module/GitProjectModuleFactoryDelegate.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.egit.core/src/org/jboss/ide/eclipse/as/egit/core/module/GitProjectModuleFactoryDelegate.java 2011-08-15
16:18:55 UTC (rev 33927)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.egit.core/src/org/jboss/ide/eclipse/as/egit/core/module/GitProjectModuleFactoryDelegate.java 2011-08-15
16:35:36 UTC (rev 33928)
@@ -14,6 +14,9 @@
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Status;
import org.eclipse.egit.core.project.RepositoryMapping;
+import org.eclipse.team.core.RepositoryProvider;
+import org.eclipse.team.internal.core.IRepositoryProviderListener;
+import org.eclipse.team.internal.core.RepositoryProviderManager;
import org.eclipse.wst.server.core.IModule;
import org.eclipse.wst.server.core.model.IModuleResource;
import org.eclipse.wst.server.core.model.ModuleDelegate;
@@ -50,6 +53,20 @@
}
};
ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceListener,
IResourceChangeEvent.POST_CHANGE | IResourceChangeEvent.PRE_DELETE);
+ RepositoryProviderManager.getInstance().addListener(new IRepositoryProviderListener()
{
+ public void providerUnmapped(IProject project) {
+ if( moduleIdToModule != null ) {
+ IModule mod = moduleIdToModule.get(project.getName());
+ if( mod != null ) {
+ moduleIdToModule.remove(project.getName());
+ moduleToDelegate.remove(mod);
+ }
+ }
+ }
+ public void providerMapped(RepositoryProvider provider) {
+ clearCache(provider.getProject());
+ }
+ });
}
protected void incrementChanged(IProject p) {
IModule mod = moduleIdToModule.get(p.getName());
Show replies by date