diff options
author | avera | 2010-05-12 19:26:49 +0000 |
---|---|---|
committer | avera | 2010-05-12 19:26:49 +0000 |
commit | f5bc933468db33493d2cc0cb0214db0afda7130d (patch) | |
tree | bccb3bf91b5b6f576404df7de44582496ba2b431 /plugins/org.eclipse.wst.server.core/servercore/org/eclipse | |
parent | 1ccbdda31b9fe320f6fde7f7ad940055fb42797e (diff) | |
download | webtools.servertools-f5bc933468db33493d2cc0cb0214db0afda7130d.tar.gz webtools.servertools-f5bc933468db33493d2cc0cb0214db0afda7130d.tar.xz webtools.servertools-f5bc933468db33493d2cc0cb0214db0afda7130d.zip |
[304673] [API] JEE / J2EE modules always showing "SYNCHRONIZED" in server's view
Diffstat (limited to 'plugins/org.eclipse.wst.server.core/servercore/org/eclipse')
2 files changed, 19 insertions, 1 deletions
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java index 60df0211c..7f4d6cea6 100644 --- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java +++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java @@ -2231,6 +2231,10 @@ public class Server extends Base implements IServer { return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, e.getMessage(), e); } } + + public void clearModuleCache() { + modules = null; + } /* (non-Javadoc) * @see org.eclipse.wst.server.core.IServer#getModules() diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleFactoryDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleFactoryDelegate.java index fc0ea8c25..fe57cc541 100644 --- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleFactoryDelegate.java +++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleFactoryDelegate.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2004, 2007 IBM Corporation and others. + * Copyright (c) 2004, 2010 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -16,8 +16,11 @@ import java.util.List; import org.eclipse.core.resources.IProject; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.wst.server.core.IModule; +import org.eclipse.wst.server.core.IServer; +import org.eclipse.wst.server.core.ServerCore; import org.eclipse.wst.server.core.internal.Module; import org.eclipse.wst.server.core.internal.ModuleFactory; +import org.eclipse.wst.server.core.internal.Server; /** * A module factory delegate provides a mechanism for discovering * modules. A module factory delegate is specified by the @@ -215,4 +218,15 @@ public abstract class ModuleFactoryDelegate { return null; } + + /** + * Alerts the server tools framework that this factory's list of modules + * has changed, and caches may no longer be accurate + */ + protected void modulesChanged() { + IServer[] allServers = ServerCore.getServers(); + for( int i = 0; i < allServers.length; i++ ) { + ((Server)allServers[i]).clearModuleCache(); + } + } }
\ No newline at end of file |