summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/ObjectAdapterFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceInternal/ObjectAdapterFactory.java')
-rw-r--r--java/src/IceInternal/ObjectAdapterFactory.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/java/src/IceInternal/ObjectAdapterFactory.java b/java/src/IceInternal/ObjectAdapterFactory.java
index e6a1790324a..9dd4779930f 100644
--- a/java/src/IceInternal/ObjectAdapterFactory.java
+++ b/java/src/IceInternal/ObjectAdapterFactory.java
@@ -262,6 +262,18 @@ public final class ObjectAdapterFactory
_waitForShutdown = false;
}
+ protected synchronized void
+ finalize()
+ throws Throwable
+ {
+ IceUtilInternal.Assert.FinalizerAssert(_instance == null);
+ IceUtilInternal.Assert.FinalizerAssert(_communicator == null);
+ IceUtilInternal.Assert.FinalizerAssert(_adapters == null);
+ IceUtilInternal.Assert.FinalizerAssert(!_waitForShutdown);
+
+ super.finalize();
+ }
+
private Instance _instance;
private Ice.Communicator _communicator;
private java.util.Map<String, Ice.ObjectAdapterI> _adapters = new java.util.HashMap<String, Ice.ObjectAdapterI>();