diff options
author | Benoit Foucher <benoit@zeroc.com> | 2014-05-23 11:59:44 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2014-05-23 11:59:44 +0200 |
commit | d81701ca8182942b7936f9fd84a019b695e9c890 (patch) | |
tree | dc036c9d701fbbe1afad67782bd78572c0f61974 /java/src/Ice/ObjectAdapterI.java | |
parent | Fixed bug ICE-5543: stringToIdentity bug with escaped escapes (diff) | |
download | ice-d81701ca8182942b7936f9fd84a019b695e9c890.tar.bz2 ice-d81701ca8182942b7936f9fd84a019b695e9c890.tar.xz ice-d81701ca8182942b7936f9fd84a019b695e9c890.zip |
Added support for invocation timeouts and ACM heartbeats
Diffstat (limited to 'java/src/Ice/ObjectAdapterI.java')
-rw-r--r-- | java/src/Ice/ObjectAdapterI.java | 35 |
1 files changed, 12 insertions, 23 deletions
diff --git a/java/src/Ice/ObjectAdapterI.java b/java/src/Ice/ObjectAdapterI.java index d216c3a7979..e661c886007 100644 --- a/java/src/Ice/ObjectAdapterI.java +++ b/java/src/Ice/ObjectAdapterI.java @@ -826,21 +826,12 @@ public final class ObjectAdapterI implements ObjectAdapter return _servantManager; } - public int + public IceInternal.ACMConfig getACM() { - // Not check for deactivation here! - + // No check for deactivation here! assert(_instance != null); // Must not be called after destroy(). - - if(_hasAcmTimeout) - { - return _acmTimeout; - } - else - { - return _instance.serverACM(); - } + return _acm; } // @@ -855,8 +846,6 @@ public final class ObjectAdapterI implements ObjectAdapter _instance = instance; _communicator = communicator; _objectAdapterFactory = objectAdapterFactory; - _hasAcmTimeout = false; - _acmTimeout = 0; _servantManager = new IceInternal.ServantManager(instance, name); _activateOneOffDone = false; _name = name; @@ -873,6 +862,7 @@ public final class ObjectAdapterI implements ObjectAdapter _id = ""; _replicaGroupId = ""; _reference = _instance.referenceFactory().create("dummy -t", ""); + _acm = _instance.serverACM(); return; } @@ -933,6 +923,8 @@ public final class ObjectAdapterI implements ObjectAdapter throw ex; } + _acm = new IceInternal.ACMConfig(properties, communicator.getLogger(), _name + ".ACM", instance.serverACM()); + try { int threadPoolSize = properties.getPropertyAsInt(_name + ".ThreadPool.Size"); @@ -946,13 +938,6 @@ public final class ObjectAdapterI implements ObjectAdapter _threadPool = new IceInternal.ThreadPool(_instance, _name + ".ThreadPool", 0); } - _hasAcmTimeout = properties.getProperty(_name + ".ACM").length() > 0; - if(_hasAcmTimeout) - { - _acmTimeout = properties.getPropertyAsInt(_name + ".ACM"); - _instance.connectionMonitor().checkIntervalForACM(_acmTimeout); - } - if(router == null) { router = RouterPrxHelper.uncheckedCast(_instance.proxyFactory().propertyToProxy(name + ".Router")); @@ -1499,6 +1484,9 @@ public final class ObjectAdapterI implements ObjectAdapter static private String[] _suffixes = { "ACM", + "ACM.Timeout", + "ACM.Heartbeat", + "ACM.Close", "AdapterId", "Endpoints", "Locator", @@ -1523,7 +1511,9 @@ public final class ObjectAdapterI implements ObjectAdapter "Router.Locator.PreferSecure", "Router.Locator.CollocationOptimized", "Router.Locator.LocatorCacheTimeout", + "Router.Locator.InvocationTimeout", "Router.LocatorCacheTimeout", + "Router.InvocationTimeout", "ProxyOptions", "ThreadPool.Size", "ThreadPool.SizeMax", @@ -1578,8 +1568,7 @@ public final class ObjectAdapterI implements ObjectAdapter private Communicator _communicator; private IceInternal.ObjectAdapterFactory _objectAdapterFactory; private IceInternal.ThreadPool _threadPool; - private boolean _hasAcmTimeout; - private int _acmTimeout; + private IceInternal.ACMConfig _acm; private IceInternal.ServantManager _servantManager; private boolean _activateOneOffDone; final private String _name; |