diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2013-06-25 17:33:22 +0200 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2013-06-25 17:33:22 +0200 |
| commit | 0960d618991babd0585b1f98781408ce7f1e080c (patch) | |
| tree | 9c0a4b6bb9c1d95ed267cbaf4dea8b9dc80abdde | |
| parent | f5e87e2e267612f88e81959e6dcdabe23b340562 (diff) | |
Error thrown if ORB had been destroyed was not informative enough. Throw
a better one.
| -rw-r--r-- | src/main/java/com/c2kernel/process/Gateway.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/main/java/com/c2kernel/process/Gateway.java b/src/main/java/com/c2kernel/process/Gateway.java index 2eee5a5..fddda5c 100644 --- a/src/main/java/com/c2kernel/process/Gateway.java +++ b/src/main/java/com/c2kernel/process/Gateway.java @@ -52,13 +52,13 @@ public class Gateway static private Properties mC2KProps;
static private ModuleManager mModules;
static private org.omg.CORBA.ORB mORB;
+ static private boolean orbDestroyed = false;
static private LDAPLookup mLDAPLookup;
static private TransactionManager mStorage;
static private EntityProxyManager mProxyManager;
static private CorbaServer mCorbaServer;
static private CastorXMLUtility mMarshaller;
static private AgentProxy mCurrentUser = null;
- //static private SimpleTCPIPServer mHTTPServer;
@@ -323,7 +323,7 @@ public class Gateway {
// run shutdown module scripts
mModules.runScripts("shutdown");
-
+
// shut down servers if running
if (mCorbaServer != null)
mCorbaServer.close();
@@ -349,11 +349,13 @@ public class Gateway Logger.closeConsole();
// finally, destroy the ORB
+ orbDestroyed = true;
getORB().destroy();
}
static public org.omg.CORBA.ORB getORB()
{
+ if (orbDestroyed) throw new RuntimeException("Gateway has been closed. ORB is destroyed.");
if (mORB == null)
mORB = org.omg.CORBA.ORB.init(new String[0], null);
return mORB;
|
