Author: rob.stryker(a)jboss.com
Date: 2007-09-25 15:28:38 -0400 (Tue, 25 Sep 2007)
New Revision: 3798
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/DeployableServerBehavior.java
Log:
must remove in opposite order as you publish (inner first)
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/DeployableServerBehavior.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/DeployableServerBehavior.java 2007-09-25
19:15:59 UTC (rev 3797)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/DeployableServerBehavior.java 2007-09-25
19:28:38 UTC (rev 3798)
@@ -2,6 +2,7 @@
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import org.eclipse.core.runtime.CoreException;
@@ -161,7 +162,7 @@
ArrayList moduleList = new ArrayList();
ArrayList deltaKindList = new ArrayList();
fillPublishOneModuleLists(module, moduleList, deltaKindList, deltaKind, recurse);
-
+
try {
((Server)getServer()).getServerPublishInfo().startCaching();
@@ -198,6 +199,8 @@
}
protected void fillPublishOneModuleLists(IModule[] module, ArrayList moduleList,
ArrayList deltaKindList, int deltaKind, boolean recurse) {
+ moduleList.add(module);
+ deltaKindList.add(new Integer(deltaKind));
if( recurse ) {
ArrayList tmp = new ArrayList();
IModule[] children = getServer().getChildModules(module, new NullProgressMonitor());
@@ -207,8 +210,12 @@
fillPublishOneModuleLists((IModule[]) tmp.toArray(new IModule[tmp.size()]),
moduleList, deltaKindList, deltaKind, recurse);
}
}
- moduleList.add(module);
- deltaKindList.add(new Integer(deltaKind));
+
+ // if removing, we must remove child first
+ if( deltaKind == ServerBehaviourDelegate.REMOVED ) {
+ Collections.reverse(moduleList);
+ Collections.reverse(deltaKindList);
+ }
}
protected void addAndRemoveModules(IModule[] module, int deltaKind) {
Show replies by date