diff options
author | Remko Tronçon <git@el-tramo.be> | 2009-08-01 17:49:35 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2009-08-01 17:49:35 (GMT) |
commit | 3a4c1c7a6fd03fed0bdfc3acc85d60ec1797361c (patch) | |
tree | 546b28d7970ef4b2bd719b04a3ec32530df8d680 /Swiften/LinkLocal/LinkLocalConnector.cpp | |
parent | d856cc05a54eabe3014b8512b27192c9e8da35ff (diff) | |
download | swift-contrib-3a4c1c7a6fd03fed0bdfc3acc85d60ec1797361c.zip swift-contrib-3a4c1c7a6fd03fed0bdfc3acc85d60ec1797361c.tar.bz2 |
Added LinkLocalConnector::cancel().
Diffstat (limited to 'Swiften/LinkLocal/LinkLocalConnector.cpp')
-rw-r--r-- | Swiften/LinkLocal/LinkLocalConnector.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Swiften/LinkLocal/LinkLocalConnector.cpp b/Swiften/LinkLocal/LinkLocalConnector.cpp index 40558d4..326d053 100644 --- a/Swiften/LinkLocal/LinkLocalConnector.cpp +++ b/Swiften/LinkLocal/LinkLocalConnector.cpp @@ -20,6 +20,10 @@ LinkLocalConnector::LinkLocalConnector( connection(connection) { } +LinkLocalConnector::~LinkLocalConnector() { + assert(!resolveQuery); +} + void LinkLocalConnector::connect() { resolveQuery = querier->createResolveHostnameQuery( service.getHostname(), @@ -31,6 +35,14 @@ void LinkLocalConnector::connect() { resolveQuery->run(); } +void LinkLocalConnector::cancel() { + if (resolveQuery) { + resolveQuery->finish(); + } + resolveQuery.reset(); + connection->disconnect(); +} + void LinkLocalConnector::handleHostnameResolved(const boost::optional<HostAddress>& address) { if (address) { resolveQuery->finish(); |