diff options
Diffstat (limited to 'cpp/src/Ice/TcpConnector.cpp')
-rw-r--r-- | cpp/src/Ice/TcpConnector.cpp | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/cpp/src/Ice/TcpConnector.cpp b/cpp/src/Ice/TcpConnector.cpp index c0d34a6f853..200ab4d0428 100644 --- a/cpp/src/Ice/TcpConnector.cpp +++ b/cpp/src/Ice/TcpConnector.cpp @@ -77,6 +77,16 @@ IceInternal::TcpConnector::operator==(const Connector& r) const return false; } + if(_protocol != p->_protocol) + { + return false; + } + + if(_encoding != p->_encoding) + { + return false; + } + if(_connectionId != p->_connectionId) { return false; @@ -109,6 +119,24 @@ IceInternal::TcpConnector::operator<(const Connector& r) const return false; } + if(_protocol < p->_protocol) + { + return true; + } + else if(p->_protocol < _protocol) + { + return false; + } + + if(_encoding < p->_encoding) + { + return true; + } + else if(p->_encoding < _encoding) + { + return false; + } + if(_connectionId < p->_connectionId) { return true; @@ -121,12 +149,15 @@ IceInternal::TcpConnector::operator<(const Connector& r) const } IceInternal::TcpConnector::TcpConnector(const InstancePtr& instance, const struct sockaddr_storage& addr, - Ice::Int timeout, const string& connectionId) : + Ice::Int timeout, const Ice::ProtocolVersion& protocol, + const Ice::EncodingVersion& encoding, const string& connectionId) : _instance(instance), _traceLevels(instance->traceLevels()), _logger(instance->initializationData().logger), _addr(addr), _timeout(timeout), + _protocol(protocol), + _encoding(encoding), _connectionId(connectionId) { } |