summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Reference.h
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2006-06-07 14:51:43 +0000
committerBenoit Foucher <benoit@zeroc.com>2006-06-07 14:51:43 +0000
commitfd1c1230f7e7b45e94d6c573865cd65221978745 (patch)
tree8f32b49c3a2d4523abbcc4fc51b4f6ebe3f8e051 /cpp/src/Ice/Reference.h
parentBug 1041 (diff)
downloadice-fd1c1230f7e7b45e94d6c573865cd65221978745.tar.bz2
ice-fd1c1230f7e7b45e94d6c573865cd65221978745.tar.xz
ice-fd1c1230f7e7b45e94d6c573865cd65221978745.zip
Fixed bug where timeout, compress flag and connection id attribute were not
taken into account for routed endpoints.
Diffstat (limited to 'cpp/src/Ice/Reference.h')
-rw-r--r--cpp/src/Ice/Reference.h18
1 files changed, 10 insertions, 8 deletions
diff --git a/cpp/src/Ice/Reference.h b/cpp/src/Ice/Reference.h
index 4afdac3fe29..c9623a33191 100644
--- a/cpp/src/Ice/Reference.h
+++ b/cpp/src/Ice/Reference.h
@@ -199,6 +199,9 @@ public:
virtual ReferencePtr changeSecure(bool) const;
virtual ReferencePtr changeRouter(const Ice::RouterPrx&) const;
virtual ReferencePtr changeCollocationOptimization(bool) const;
+ virtual ReferencePtr changeCompress(bool) const;
+ virtual ReferencePtr changeTimeout(int) const;
+ virtual ReferencePtr changeConnectionId(const std::string&) const;
virtual ReferencePtr changeCacheConnection(bool) const;
virtual ReferencePtr changeEndpointSelection(Ice::EndpointSelectionType) const;
@@ -219,6 +222,7 @@ protected:
RoutableReference(const RoutableReference&);
Ice::ConnectionIPtr createConnection(const std::vector<EndpointIPtr>&, bool&) const;
+ void applyOverrides(std::vector<EndpointIPtr>&) const;
private:
@@ -227,6 +231,12 @@ private:
bool _collocationOptimization;
bool _cacheConnection;
Ice::EndpointSelectionType _endpointSelection;
+
+ std::string _connectionId;
+ bool _overrideCompress;
+ bool _compress; // Only used if _overrideCompress == true
+ bool _overrideTimeout;
+ int _timeout; // Only used if _overrideTimeout == true
};
class DirectReference : public RoutableReference
@@ -282,9 +292,6 @@ public:
virtual std::vector<EndpointIPtr> getEndpoints() const;
virtual ReferencePtr changeLocator(const Ice::LocatorPrx&) const;
- virtual ReferencePtr changeCompress(bool) const;
- virtual ReferencePtr changeTimeout(int) const;
- virtual ReferencePtr changeConnectionId(const std::string&) const;
virtual ReferencePtr changeLocatorCacheTimeout(int) const;
virtual ReferencePtr changeAdapterId(const std::string&) const;
virtual ReferencePtr changeEndpoints(const std::vector<EndpointIPtr>&) const;
@@ -308,11 +315,6 @@ protected:
private:
std::string _adapterId;
- std::string _connectionId;
- bool _overrideCompress;
- bool _compress; // Only used if _overrideCompress == true
- bool _overrideTimeout;
- int _timeout; // Only used if _overrideTimeout == true
LocatorInfoPtr _locatorInfo;
int _locatorCacheTimeout;
};