summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Reference.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2018-02-01 13:11:54 +0100
committerBenoit Foucher <benoit@zeroc.com>2018-02-01 13:11:54 +0100
commit1005c525cf00a6e4b2ec7db24a75e6a15582bd21 (patch)
treef3b67c1e15c846363797f79a9fa0107dc20e92e2 /cpp/src/Ice/Reference.cpp
parentFixed syntax error (diff)
downloadice-1005c525cf00a6e4b2ec7db24a75e6a15582bd21.tar.bz2
ice-1005c525cf00a6e4b2ec7db24a75e6a15582bd21.tar.xz
ice-1005c525cf00a6e4b2ec7db24a75e6a15582bd21.zip
Changed ice_fixed to inherit invocation timeout, context and compress override from original proxy
Diffstat (limited to 'cpp/src/Ice/Reference.cpp')
-rw-r--r--cpp/src/Ice/Reference.cpp25
1 files changed, 19 insertions, 6 deletions
diff --git a/cpp/src/Ice/Reference.cpp b/cpp/src/Ice/Reference.cpp
index 2f331a1dace..e3d5a1fa45d 100644
--- a/cpp/src/Ice/Reference.cpp
+++ b/cpp/src/Ice/Reference.cpp
@@ -603,11 +603,20 @@ IceInternal::FixedReference::FixedReference(const InstancePtr& instance,
const string& facet,
Mode mode,
bool secure,
+ const ProtocolVersion& protocol,
const EncodingVersion& encoding,
- const ConnectionIPtr& fixedConnection) :
- Reference(instance, communicator, id, facet, mode, secure, Ice::Protocol_1_0, encoding, -1, Ice::Context()),
+ const ConnectionIPtr& fixedConnection,
+ int invocationTimeout,
+ const Ice::Context& context,
+ const IceUtil::Optional<bool>& compress) :
+ Reference(instance, communicator, id, facet, mode, secure, protocol, encoding, invocationTimeout, context),
_fixedConnection(fixedConnection)
{
+ if(compress)
+ {
+ _overrideCompress = true;
+ _compress = *compress;
+ }
}
vector<EndpointIPtr>
@@ -791,7 +800,7 @@ IceInternal::FixedReference::getRequestHandler(const Ice::ObjectPrxPtr& proxy) c
{
if(_fixedConnection->endpoint()->datagram())
{
- throw NoEndpointException(__FILE__, __LINE__, "");
+ throw NoEndpointException(__FILE__, __LINE__, toString());
}
break;
}
@@ -801,7 +810,7 @@ IceInternal::FixedReference::getRequestHandler(const Ice::ObjectPrxPtr& proxy) c
{
if(!_fixedConnection->endpoint()->datagram())
{
- throw NoEndpointException(__FILE__, __LINE__, "");
+ throw NoEndpointException(__FILE__, __LINE__, toString());
}
break;
}
@@ -823,7 +832,7 @@ IceInternal::FixedReference::getRequestHandler(const Ice::ObjectPrxPtr& proxy) c
}
if(secure && !_fixedConnection->endpoint()->secure())
{
- throw NoEndpointException(__FILE__, __LINE__, "");
+ throw NoEndpointException(__FILE__, __LINE__, toString());
}
_fixedConnection->throwException(); // Throw in case our connection is already destroyed.
@@ -1200,8 +1209,12 @@ IceInternal::RoutableReference::changeConnection(const Ice::ConnectionIPtr& conn
getFacet(),
getMode(),
getSecure(),
+ getProtocol(),
getEncoding(),
- connection);
+ connection,
+ getInvocationTimeout(),
+ getContext()->getValue(),
+ getCompress());
}
bool