diff options
author | Andrew M Finkbeiner | 2012-06-01 15:47:20 +0000 |
---|---|---|
committer | Roberto E. Escobar | 2012-06-01 15:47:20 +0000 |
commit | 6c3d26d3cb67a8f53a6aea166a8ebbcd8c9685fd (patch) | |
tree | 9af42ef6c012a9c484b7f417c6fdcaa223823d33 | |
parent | 4132bcff39f7e5765cb1ee1d0e6345214c5cc57f (diff) | |
download | org.eclipse.osee-6c3d26d3cb67a8f53a6aea166a8ebbcd8c9685fd.tar.gz org.eclipse.osee-6c3d26d3cb67a8f53a6aea166a8ebbcd8c9685fd.tar.xz org.eclipse.osee-6c3d26d3cb67a8f53a6aea166a8ebbcd8c9685fd.zip |
feature[ats_19NDL]: Add back disconnect all for local connections
4 files changed, 25 insertions, 0 deletions
diff --git a/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/core/environment/interfaces/IHostTestEnvironment.java b/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/core/environment/interfaces/IHostTestEnvironment.java index 5e32821a0b3..35f0ebf8c36 100644 --- a/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/core/environment/interfaces/IHostTestEnvironment.java +++ b/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/core/environment/interfaces/IHostTestEnvironment.java @@ -30,6 +30,7 @@ public interface IHostTestEnvironment extends Remote { ConnectionRequestResult requestEnvironment(IRemoteUserSession session, TestEnvironmentConfig config) throws RemoteException; void disconnect(UserTestSessionKey key) throws RemoteException; + void disconnectAll() throws RemoteException; BundleConfigurationReport checkBundleConfiguration(Collection<BundleDescription> bundles) throws RemoteException; void sendRuntimeBundle(Collection<BundleDescription> bundles) throws RemoteException; diff --git a/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/core/environment/interfaces/ITestEnvironment.java b/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/core/environment/interfaces/ITestEnvironment.java index 5cc0e4dd981..d947fc9d93f 100644 --- a/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/core/environment/interfaces/ITestEnvironment.java +++ b/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/core/environment/interfaces/ITestEnvironment.java @@ -43,4 +43,5 @@ public interface ITestEnvironment extends Remote { public void sendMessage(Message message) throws RemoteException; + void disconnectAll() throws RemoteException; }
\ No newline at end of file diff --git a/plugins/org.eclipse.osee.ote.server/src/org/eclipse/osee/ote/server/internal/OteService.java b/plugins/org.eclipse.osee.ote.server/src/org/eclipse/osee/ote/server/internal/OteService.java index 6f1bb53b9d6..0946b15b91f 100644 --- a/plugins/org.eclipse.osee.ote.server/src/org/eclipse/osee/ote/server/internal/OteService.java +++ b/plugins/org.eclipse.osee.ote.server/src/org/eclipse/osee/ote/server/internal/OteService.java @@ -181,6 +181,17 @@ public class OteService implements IHostTestEnvironment, IService { } } } + + @Override + public void disconnectAll() throws RemoteException { + if (remoteEnvironment != null) { + remoteEnvironment.disconnectAll(); + updateDynamicInfo(); + if (!environmentCreation.isKeepAliveWithNoUsers()) { + remoteEnvironment = null; + } + } + } @Override public BundleConfigurationReport checkBundleConfiguration(Collection<BundleDescription> bundles) throws RemoteException { diff --git a/plugins/org.eclipse.osee.ote.server/src/org/eclipse/osee/ote/server/internal/RemoteTestEnvironment.java b/plugins/org.eclipse.osee.ote.server/src/org/eclipse/osee/ote/server/internal/RemoteTestEnvironment.java index 6b0fa1b36d6..34f6041e27f 100644 --- a/plugins/org.eclipse.osee.ote.server/src/org/eclipse/osee/ote/server/internal/RemoteTestEnvironment.java +++ b/plugins/org.eclipse.osee.ote.server/src/org/eclipse/osee/ote/server/internal/RemoteTestEnvironment.java @@ -10,6 +10,7 @@ *******************************************************************************/ package org.eclipse.osee.ote.server.internal; +import java.io.Serializable; import java.rmi.Remote; import java.rmi.RemoteException; import java.util.HashMap; @@ -282,4 +283,15 @@ public class RemoteTestEnvironment implements ITestEnvironmentMessageSystem { env.sendMessageToServer(message); } + @Override + public void disconnectAll() throws RemoteException { + for (Serializable session : env.getSessionKeys()) { + env.disconnect((UserTestSessionKey) session); + } + if (!keepEnvAliveWithNoUsers) { + messageToolServiceTracker.close(); + closeAllConsoles(); + env.shutdown(); + } + } } |