summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ConnectionI.cpp
diff options
context:
space:
mode:
authorMarc Laukien <marc@zeroc.com>2005-04-06 22:20:02 +0000
committerMarc Laukien <marc@zeroc.com>2005-04-06 22:20:02 +0000
commitcd41eafb5b42d43372cbe5efa74b17165ea55a2a (patch)
treec92ca5abb12b0e7a5f45826d61860c0467ecf8fe /cpp/src/Ice/ConnectionI.cpp
parentMerged IceUtil into Ice (diff)
downloadice-cd41eafb5b42d43372cbe5efa74b17165ea55a2a.tar.bz2
ice-cd41eafb5b42d43372cbe5efa74b17165ea55a2a.tar.xz
ice-cd41eafb5b42d43372cbe5efa74b17165ea55a2a.zip
Ice.ConnectionIdleTime.Client/Ice.ConnectionIdleTime.Server
Diffstat (limited to 'cpp/src/Ice/ConnectionI.cpp')
-rw-r--r--cpp/src/Ice/ConnectionI.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/cpp/src/Ice/ConnectionI.cpp b/cpp/src/Ice/ConnectionI.cpp
index 101cf69e693..34047945c65 100644
--- a/cpp/src/Ice/ConnectionI.cpp
+++ b/cpp/src/Ice/ConnectionI.cpp
@@ -1378,7 +1378,6 @@ Ice::ConnectionI::ConnectionI(const InstancePtr& instance,
_traceLevels(_instance->traceLevels()), // Cached for better performance.
_registeredWithPool(false),
_warn(_instance->properties()->getPropertyAsInt("Ice.Warn.Connections") > 0),
- _acmTimeout(_endpoint->datagram() ? 0 : _instance->connectionIdleTime()),
_requestHdr(headerSize + sizeof(Int), 0),
_requestBatchHdr(headerSize + sizeof(Int), 0),
_replyHdr(headerSize, 0),
@@ -1393,6 +1392,23 @@ Ice::ConnectionI::ConnectionI(const InstancePtr& instance,
_state(StateNotValidated),
_stateTime(IceUtil::Time::now())
{
+ Int& acmTimeout = const_cast<Int&>(_acmTimeout);
+ if(_endpoint->datagram())
+ {
+ acmTimeout = 0;
+ }
+ else
+ {
+ if(_adapter)
+ {
+ acmTimeout = _instance->serverConnectionIdleTime();
+ }
+ else
+ {
+ acmTimeout = _instance->clientConnectionIdleTime();
+ }
+ }
+
vector<Byte>& requestHdr = const_cast<vector<Byte>&>(_requestHdr);
requestHdr[0] = magic[0];
requestHdr[1] = magic[1];