summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/Instance.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceInternal/Instance.java')
-rw-r--r--java/src/IceInternal/Instance.java28
1 files changed, 20 insertions, 8 deletions
diff --git a/java/src/IceInternal/Instance.java b/java/src/IceInternal/Instance.java
index b285a643822..4bfe313538f 100644
--- a/java/src/IceInternal/Instance.java
+++ b/java/src/IceInternal/Instance.java
@@ -21,21 +21,33 @@ public final class Instance
@Override public void
updateConnectionObservers()
{
- _instance.outgoingConnectionFactory().updateConnectionObservers();
- _instance.objectAdapterFactory().updateConnectionObservers();
+ try
+ {
+ _instance.outgoingConnectionFactory().updateConnectionObservers();
+ _instance.objectAdapterFactory().updateConnectionObservers();
+ }
+ catch(Ice.CommunicatorDestroyedException ex)
+ {
+ }
}
@Override public void
updateThreadObservers()
{
- _instance.clientThreadPool().updateObservers();
- ThreadPool serverThreadPool = _instance.serverThreadPool(false);
- if(serverThreadPool != null)
+ try
+ {
+ _instance.clientThreadPool().updateObservers();
+ ThreadPool serverThreadPool = _instance.serverThreadPool(false);
+ if(serverThreadPool != null)
+ {
+ serverThreadPool.updateObservers();
+ }
+ _instance.objectAdapterFactory().updateThreadObservers();
+ _instance.endpointHostResolver().updateObserver();
+ }
+ catch(Ice.CommunicatorDestroyedException ex)
{
- serverThreadPool.updateObservers();
}
- _instance.objectAdapterFactory().updateThreadObservers();
- _instance.endpointHostResolver().updateObserver();
}
final private Instance _instance;