summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ConnectionFactory.cpp
diff options
context:
space:
mode:
authorMarc Laukien <marc@zeroc.com>2003-11-22 13:15:01 +0000
committerMarc Laukien <marc@zeroc.com>2003-11-22 13:15:01 +0000
commitc74eb088ca6fa8706a7a34cf305b89d852bef736 (patch)
tree3a0ae5334424611f8295661a672219f6213441aa /cpp/src/Ice/ConnectionFactory.cpp
parent- Bug fix for class transforms. Only the transform for the formal type was (diff)
downloadice-c74eb088ca6fa8706a7a34cf305b89d852bef736.tar.bz2
ice-c74eb088ca6fa8706a7a34cf305b89d852bef736.tar.xz
ice-c74eb088ca6fa8706a7a34cf305b89d852bef736.zip
added Ice.Override.ConnectTimeout
Diffstat (limited to 'cpp/src/Ice/ConnectionFactory.cpp')
-rw-r--r--cpp/src/Ice/ConnectionFactory.cpp17
1 files changed, 16 insertions, 1 deletions
diff --git a/cpp/src/Ice/ConnectionFactory.cpp b/cpp/src/Ice/ConnectionFactory.cpp
index 55a013f0f22..f43d6fe65c8 100644
--- a/cpp/src/Ice/ConnectionFactory.cpp
+++ b/cpp/src/Ice/ConnectionFactory.cpp
@@ -251,7 +251,22 @@ IceInternal::OutgoingConnectionFactory::create(const vector<EndpointPtr>& endpts
{
ConnectorPtr connector = endpoint->connector();
assert(connector);
- transceiver = connector->connect(endpoint->timeout());
+
+ Int timeout;
+ DefaultsAndOverridesPtr defaultsAndOverrides = _instance->defaultsAndOverrides();
+ if(defaultsAndOverrides->overrideConnectTimeout)
+ {
+ timeout = defaultsAndOverrides->overrideConnectTimeoutValue;
+ }
+ // It is not necessary to check for overrideTimeout,
+ // the endpoint has already been modified with this
+ // override, if set.
+ else
+ {
+ timeout = endpoint->timeout();
+ }
+
+ transceiver = connector->connect(timeout);
assert(transceiver);
}
connection = new Connection(_instance, transceiver, endpoint, 0);