diff options
author | Tobias Schwarz | 2014-03-10 12:17:22 +0000 |
---|---|---|
committer | Tobias Schwarz | 2014-03-10 12:28:56 +0000 |
commit | c41ade1cf347644979c78d5b08067c884ca7cb7a (patch) | |
tree | 2120bc15efaf1a38f97a988f7bac32c905ae7840 | |
parent | 9ae5ffbfe693d2e19770a73af2452f8aed6f9059 (diff) | |
download | org.eclipse.tcf-c41ade1cf347644979c78d5b08067c884ca7cb7a.tar.gz org.eclipse.tcf-c41ade1cf347644979c78d5b08067c884ca7cb7a.tar.xz org.eclipse.tcf-c41ade1cf347644979c78d5b08067c884ca7cb7a.zip |
Traget Explorer: reduce cancel timeout to 10sec (was 60sec), shutdown
valueadds even when no channel is open
3 files changed, 23 insertions, 7 deletions
diff --git a/target_explorer/plugins/org.eclipse.tcf.te.runtime.stepper/src/org/eclipse/tcf/te/runtime/stepper/steps/AbstractStep.java b/target_explorer/plugins/org.eclipse.tcf.te.runtime.stepper/src/org/eclipse/tcf/te/runtime/stepper/steps/AbstractStep.java index 13d29cce2..919aac4ea 100644 --- a/target_explorer/plugins/org.eclipse.tcf.te.runtime.stepper/src/org/eclipse/tcf/te/runtime/stepper/steps/AbstractStep.java +++ b/target_explorer/plugins/org.eclipse.tcf.te.runtime.stepper/src/org/eclipse/tcf/te/runtime/stepper/steps/AbstractStep.java @@ -183,8 +183,8 @@ public abstract class AbstractStep extends ExecutableExtension implements IStep */ @Override public int getCancelTimeout() { - // default timeout is 1 minute - return 60000; + // default timeout is 10 seconds + return 10000; } /* (non-Javadoc) diff --git a/target_explorer/plugins/org.eclipse.tcf.te.tcf.core/src/org/eclipse/tcf/te/tcf/core/internal/ChannelManager.java b/target_explorer/plugins/org.eclipse.tcf.te.tcf.core/src/org/eclipse/tcf/te/tcf/core/internal/ChannelManager.java index 64b024eba..ddb63a3b5 100644 --- a/target_explorer/plugins/org.eclipse.tcf.te.tcf.core/src/org/eclipse/tcf/te/tcf/core/internal/ChannelManager.java +++ b/target_explorer/plugins/org.eclipse.tcf.te.tcf.core/src/org/eclipse/tcf/te/tcf/core/internal/ChannelManager.java @@ -557,11 +557,11 @@ public final class ChannelManager extends PlatformObject implements IChannelMana // Close the channel internalCloseChannel(channel); - // Get the value-add's for the peer to shutdown - IValueAdd[] valueAdds = ValueAddManager.getInstance().getValueAdd(peer); - if (valueAdds != null && valueAdds.length > 0) { - internalShutdownValueAdds(peer, valueAdds); - } + } + // Get the value-add's for the peer to shutdown + IValueAdd[] valueAdds = ValueAddManager.getInstance().getValueAdd(peer); + if (valueAdds != null && valueAdds.length > 0) { + internalShutdownValueAdds(peer, valueAdds); } } diff --git a/target_explorer/plugins/org.eclipse.tcf.te.tcf.locator/src/org/eclipse/tcf/te/tcf/locator/steps/WaitForReadyStep.java b/target_explorer/plugins/org.eclipse.tcf.te.tcf.locator/src/org/eclipse/tcf/te/tcf/locator/steps/WaitForReadyStep.java index e7eb003b0..0e50eb2e9 100644 --- a/target_explorer/plugins/org.eclipse.tcf.te.tcf.locator/src/org/eclipse/tcf/te/tcf/locator/steps/WaitForReadyStep.java +++ b/target_explorer/plugins/org.eclipse.tcf.te.tcf.locator/src/org/eclipse/tcf/te/tcf/locator/steps/WaitForReadyStep.java @@ -22,6 +22,7 @@ import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; import org.eclipse.osgi.util.NLS; import org.eclipse.tcf.protocol.IChannel; +import org.eclipse.tcf.protocol.IPeer; import org.eclipse.tcf.protocol.Protocol; import org.eclipse.tcf.te.runtime.interfaces.callback.ICallback; import org.eclipse.tcf.te.runtime.interfaces.properties.IPropertiesContainer; @@ -151,6 +152,21 @@ public class WaitForReadyStep extends AbstractPeerNodeStep { } /* (non-Javadoc) + * @see org.eclipse.tcf.te.runtime.stepper.steps.AbstractStep#rollback(org.eclipse.tcf.te.runtime.stepper.interfaces.IStepContext, org.eclipse.tcf.te.runtime.interfaces.properties.IPropertiesContainer, org.eclipse.core.runtime.IStatus, org.eclipse.tcf.te.runtime.stepper.interfaces.IFullQualifiedId, org.eclipse.core.runtime.IProgressMonitor, org.eclipse.tcf.te.runtime.interfaces.callback.ICallback) + */ + @Override + public void rollback(IStepContext context, IPropertiesContainer data, IStatus status, IFullQualifiedId fullQualifiedId, IProgressMonitor monitor, ICallback callback) { + final IPeer peer = getActivePeerContext(context, data, fullQualifiedId); + Protocol.invokeAndWait(new Runnable() { + @Override + public void run() { + Tcf.getChannelManager().shutdown(peer); + } + }); + callback.done(this, Status.OK_STATUS); + } + + /* (non-Javadoc) * @see org.eclipse.tcf.te.runtime.stepper.steps.AbstractStep#getTotalWork(org.eclipse.tcf.te.runtime.stepper.interfaces.IStepContext, org.eclipse.tcf.te.runtime.interfaces.properties.IPropertiesContainer) */ @Override |