summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Reference.cpp
diff options
context:
space:
mode:
authorMark Spruiell <mes@zeroc.com>2007-01-26 16:58:00 +0000
committerMark Spruiell <mes@zeroc.com>2007-01-26 16:58:00 +0000
commit71f7fff702750e9b779f645d21075562e5c80a40 (patch)
tree0f059491911ecc5ea3f6c680b0ae05d0f67e7bfd /cpp/src/Ice/Reference.cpp
parentSynced with other assemby files (diff)
downloadice-71f7fff702750e9b779f645d21075562e5c80a40.tar.bz2
ice-71f7fff702750e9b779f645d21075562e5c80a40.tar.xz
ice-71f7fff702750e9b779f645d21075562e5c80a40.zip
preserve proxy settings for CacheConnection, EndpointSelection,
ThreadPerConnection
Diffstat (limited to 'cpp/src/Ice/Reference.cpp')
-rw-r--r--cpp/src/Ice/Reference.cpp28
1 files changed, 18 insertions, 10 deletions
diff --git a/cpp/src/Ice/Reference.cpp b/cpp/src/Ice/Reference.cpp
index 2367353a48c..99308ff37af 100644
--- a/cpp/src/Ice/Reference.cpp
+++ b/cpp/src/Ice/Reference.cpp
@@ -1105,19 +1105,20 @@ IceInternal::RoutableReference::operator<(const Reference& r) const
IceInternal::RoutableReference::RoutableReference(const InstancePtr& inst, const CommunicatorPtr& com,
const Identity& ident, const SharedContextPtr& ctx, const string& fs,
Mode md, bool sec, bool prefSec, const RouterInfoPtr& rtrInfo,
- bool collocationOpt) :
+ bool collocationOpt, bool cacheConnection,
+ EndpointSelectionType endpointSelection, bool threadPerConnection) :
Reference(inst, com, ident, ctx, fs, md),
_secure(sec),
_preferSecure(prefSec),
_routerInfo(rtrInfo),
_collocationOptimization(collocationOpt),
- _cacheConnection(true),
- _endpointSelection(Random),
+ _cacheConnection(cacheConnection),
+ _endpointSelection(endpointSelection),
_overrideCompress(false),
_compress(false),
_overrideTimeout(false),
_timeout(-1),
- _threadPerConnection(inst->threadPerConnection())
+ _threadPerConnection(threadPerConnection)
{
}
@@ -1308,8 +1309,10 @@ void IceInternal::decRef(IceInternal::DirectReference* p) { p->__decRef(); }
IceInternal::DirectReference::DirectReference(const InstancePtr& inst, const CommunicatorPtr& com,
const Identity& ident, const SharedContextPtr& ctx, const string& fs,
Mode md, bool sec, bool prefSec, const vector<EndpointIPtr>& endpts,
- const RouterInfoPtr& rtrInfo, bool collocationOpt) :
- RoutableReference(inst, com, ident, ctx, fs, md, sec, prefSec, rtrInfo, collocationOpt),
+ const RouterInfoPtr& rtrInfo, bool collocationOpt, bool cacheConnection,
+ EndpointSelectionType endpointSelection, bool threadPerConnection) :
+ RoutableReference(inst, com, ident, ctx, fs, md, sec, prefSec, rtrInfo, collocationOpt, cacheConnection,
+ endpointSelection, threadPerConnection),
_endpoints(endpts)
{
}
@@ -1408,7 +1411,8 @@ IceInternal::DirectReference::changeAdapterId(const string& newAdapterId) const
return getInstance()->referenceFactory()->create(getIdentity(), getContext(), getFacet(), getMode(),
getSecure(), getPreferSecure(), newAdapterId, getRouterInfo(),
locatorInfo, getCollocationOptimization(),
- getLocatorCacheTimeout());
+ getCacheConnection(), getEndpointSelection(),
+ getThreadPerConnection(), getLocatorCacheTimeout());
}
else
{
@@ -1561,8 +1565,11 @@ IceInternal::IndirectReference::IndirectReference(const InstancePtr& inst, const
const Identity& ident, const SharedContextPtr& ctx, const string& fs,
Mode md, bool sec, bool prefSec, const string& adptid,
const RouterInfoPtr& rtrInfo, const LocatorInfoPtr& locInfo,
- bool collocationOpt, int locatorCacheTimeout) :
- RoutableReference(inst, com, ident, ctx, fs, md, sec, prefSec, rtrInfo, collocationOpt),
+ bool collocationOpt, bool cacheConnection,
+ EndpointSelectionType endpointSelection, bool threadPerConnection,
+ int locatorCacheTimeout) :
+ RoutableReference(inst, com, ident, ctx, fs, md, sec, prefSec, rtrInfo, collocationOpt, cacheConnection,
+ endpointSelection, threadPerConnection),
_adapterId(adptid),
_locatorInfo(locInfo),
_locatorCacheTimeout(locatorCacheTimeout)
@@ -1625,7 +1632,8 @@ IceInternal::IndirectReference::changeEndpoints(const vector<EndpointIPtr>& newE
{
return getInstance()->referenceFactory()->create(getIdentity(), getContext(), getFacet(), getMode(),
getSecure(), getPreferSecure(), newEndpoints, getRouterInfo(),
- getCollocationOptimization());
+ getCollocationOptimization(), getCacheConnection(),
+ getEndpointSelection(), getThreadPerConnection());
}
else
{