[284508] Server will not change to republish status after web module changed
diff --git a/features/org.eclipse.wst.server_core.feature.patch/buildnotes_org.eclipse.wst.server_core.feature.patch.html b/features/org.eclipse.wst.server_core.feature.patch/buildnotes_org.eclipse.wst.server_core.feature.patch.html
index 8ab45d1..2a5cdfe 100644
--- a/features/org.eclipse.wst.server_core.feature.patch/buildnotes_org.eclipse.wst.server_core.feature.patch.html
+++ b/features/org.eclipse.wst.server_core.feature.patch/buildnotes_org.eclipse.wst.server_core.feature.patch.html
@@ -4,12 +4,12 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Build" content="Build">
- <title>WTP 3.0.5 Patches</title>
+ <title>WTP 3.0.5.1 Patches</title>
</head>
<body>
-<h1>WTP 3.0.5 Patches</h1>
+<h1>WTP 3.0.5.1 Patches</h1>
<h2>Feature Patched: org.eclipse.wst.server_core.feature</h2>
<h3>Plugin(s) replaced:</h3>
@@ -17,6 +17,7 @@
<p>Bug <a href='https://bugs.eclipse.org/279110'>279110</a>. Server status stuck on 'Republish'</p>
<ul><li>org.eclipse.wst.internet.monitor.core</li></ul>
<p>Bug <a href='https://bugs.eclipse.org/279101'>279101</a>. TCP/IP HTTP parser is case sensitive, when the specs say it shouldn't be</p>
+<p>Bug <a href='https://bugs.eclipse.org/284508'>284508</a>. Server will not change to republish status after web module changed</p>
</body></html>
\ No newline at end of file
diff --git a/features/org.eclipse.wst.server_core.feature.patch/feature.properties b/features/org.eclipse.wst.server_core.feature.patch/feature.properties
index 1c22244..79b8639 100644
--- a/features/org.eclipse.wst.server_core.feature.patch/feature.properties
+++ b/features/org.eclipse.wst.server_core.feature.patch/feature.properties
@@ -29,6 +29,7 @@
\n\
Bug https://bugs.eclipse.org/279101 TCP/IP HTTP parser is case sensitive, when the specs say it shouldn't be\n\
Bug https://bugs.eclipse.org/279110 Server status stuck on 'Republish'\n\
+Bug https://bugs.eclipse.org/284508 Server will not change to republish status after web module changed\n\
\n\
# "copyright" property - text of the "Feature Update Copyright"
diff --git a/plugins/org.eclipse.wst.server.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.server.core/META-INF/MANIFEST.MF
index 951a15d..31b3191 100644
--- a/plugins/org.eclipse.wst.server.core/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.wst.server.core/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.wst.server.core; singleton:=true
-Bundle-Version: 1.1.5.qualifier
+Bundle-Version: 1.1.6.qualifier
Bundle-Activator: org.eclipse.wst.server.core.internal.ServerPlugin
Bundle-Vendor: %providerName
Bundle-Localization: plugin
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 519c51b..3bc10c2 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
@@ -798,20 +798,26 @@
return false;
// shallow search: check for root modules first
- boolean rv = modules.contains(requestedModule);
+ boolean deployed = modules.contains(requestedModule);
- // deep search: look into all the child modules
- rv = !visitModule(modules.toArray(new IModule[0]), new IModuleVisitor(){
- public boolean visit(IModule[] modules2) {
- for (int i =0;i<=modules2.length-1;i++){
- if (modules2[i].equals(requestedModule))
- return false;
- }
- return !modules2.equals(requestedModule);
- }}, null);
+ if(!deployed){
+ // deep search: look into all the child modules
+ Iterator<IModule> itr = modules.iterator();
+ while(itr.hasNext() && !deployed){
+ IModule[] m = new IModule[] {itr.next()};
+ deployed = !visitModule(m, new IModuleVisitor(){
+ public boolean visit(IModule[] modules2) {
+ for (int i =0;i<=modules2.length-1;i++){
+ if (modules2[i].equals(requestedModule))
+ return false;
+ }
+ return true;
+ }}, null);
+ }
+ }
- Trace.trace(Trace.FINEST, "< isModuleDeployed() rv="+rv);
- return rv;
+ Trace.trace(Trace.FINEST, "< isModuleDeployed() deployed="+deployed);
+ return deployed;
}
protected void stopAutoPublish() {