summaryrefslogtreecommitdiff
path: root/java/src/Ice/ObjectAdapterI.java
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2014-05-23 11:59:44 +0200
committerBenoit Foucher <benoit@zeroc.com>2014-05-23 11:59:44 +0200
commitd81701ca8182942b7936f9fd84a019b695e9c890 (patch)
treedc036c9d701fbbe1afad67782bd78572c0f61974 /java/src/Ice/ObjectAdapterI.java
parentFixed bug ICE-5543: stringToIdentity bug with escaped escapes (diff)
downloadice-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.java35
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;