[218982] Publish delta incorrect
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 4a1a6d8..cb71453 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
@@ -995,8 +995,13 @@
firePublishStarted();
getServerPublishInfo().startCaching();
- //IStatus status =
- getBehaviourDelegate(monitor).publish(kind, modules3, monitor, info);
+ IStatus status = Status.OK_STATUS;
+ try {
+ getBehaviourDelegate(monitor).publish(kind, modules3, monitor, info);
+ } catch (CoreException ce) {
+ Trace.trace(Trace.WARNING, "Error during publishing", ce);
+ status = ce.getStatus();
+ }
final List<IModule[]> modules2 = new ArrayList<IModule[]>();
visit(new IModuleVisitor() {
@@ -1015,7 +1020,7 @@
firePublishFinished(Status.OK_STATUS);
Trace.trace(Trace.PERFORMANCE, "Server.publish(): <" + (System.currentTimeMillis() - time) + "> " + getServerType().getId());
- return Status.OK_STATUS;
+ return status;
} catch (Exception e) {
Trace.trace(Trace.SEVERE, "Error calling delegate publish() " + toString(), e);
return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorPublishing, e);
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPreferences.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPreferences.java
index d683646..a0e8664 100644
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPreferences.java
+++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPreferences.java
@@ -90,8 +90,6 @@
return preferences.getInt(PREF_MODULE_START_TIMEOUT);
}
-
-
/**
* Set the default values.
*/
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerBehaviourDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerBehaviourDelegate.java
index 3d72fea..307389e 100644
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerBehaviourDelegate.java
+++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerBehaviourDelegate.java
@@ -758,7 +758,7 @@
return Status.CANCEL_STATUS;
// publish modules
- publishModules(kind, moduleList, null, tempMulti, monitor);
+ publishModules(kind, moduleList, deltaKindList, tempMulti, monitor);
if (monitor.isCanceled())
return Status.CANCEL_STATUS;
@@ -916,16 +916,15 @@
if (getServer().getModulePublishState(module) == IServer.PUBLISH_STATE_UNKNOWN)
kind2 = IServer.PUBLISH_FULL;
- int deltaKind = 0;
+ /*int deltaKind = ServerBehaviourDelegate.ADDED;
if (hasBeenPublished(module)) {
if (getPublishedResourceDelta(module).length == 0)
deltaKind = ServerBehaviourDelegate.NO_CHANGE;
else
deltaKind = ServerBehaviourDelegate.CHANGED;
- } else
- deltaKind = ServerBehaviourDelegate.ADDED;
+ } // TODO REMOVED*/
- IStatus status = publishModule(kind2, module, deltaKind, ProgressUtil.getSubMonitorFor(monitor, 3000));
+ IStatus status = publishModule(kind2, module, ((Integer)deltaKind2.get(i)).intValue(), ProgressUtil.getSubMonitorFor(monitor, 3000));
if (status != null && !status.isOK())
multi.add(status);
}