summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/LinkLocal/LinkLocalConnector.h')
-rw-r--r--Swiften/LinkLocal/LinkLocalConnector.h105
1 files changed, 51 insertions, 54 deletions
diff --git a/Swiften/LinkLocal/LinkLocalConnector.h b/Swiften/LinkLocal/LinkLocalConnector.h
index 52692ef..044b74f 100644
--- a/Swiften/LinkLocal/LinkLocalConnector.h
+++ b/Swiften/LinkLocal/LinkLocalConnector.h
@@ -1,66 +1,63 @@
/*
- * Copyright (c) 2010 Remko Tronçon
- * Licensed under the GNU General Public License v3.
- * See Documentation/Licenses/GPLv3.txt for more information.
+ * Copyright (c) 2010-2017 Isode Limited.
+ * All rights reserved.
+ * See the COPYING file for more information.
*/
#pragma once
-#include <boost/shared_ptr.hpp>
-#include <Swiften/Base/boost_bsignals.h>
-#include <boost/enable_shared_from_this.hpp>
+#include <memory>
#include <vector>
+#include <boost/signals2.hpp>
+
#include <Swiften/Base/API.h>
-#include <Swiften/Network/Connection.h>
#include <Swiften/LinkLocal/LinkLocalService.h>
+#include <Swiften/Network/Connection.h>
namespace Swift {
- class ConnectionFactory;
- class HostAddress;
- class Element;
- class PayloadParserFactoryCollection;
- class PayloadSerializerCollection;
- class DNSSDQuerier;
- class DNSSDResolveHostnameQuery;
-
- class SWIFTEN_API LinkLocalConnector : public boost::enable_shared_from_this<LinkLocalConnector> {
- public:
- LinkLocalConnector(
- const LinkLocalService& service,
- boost::shared_ptr<DNSSDQuerier> querier,
- boost::shared_ptr<Connection> connection);
- ~LinkLocalConnector();
-
- const LinkLocalService& getService() const {
- return service;
- }
-
- void connect();
- void cancel();
- void queueElement(boost::shared_ptr<Element> element);
-
- const std::vector<boost::shared_ptr<Element> >& getQueuedElements() const {
- return queuedElements;
- }
-
- boost::shared_ptr<Connection> getConnection() const {
- return connection;
- }
-
- boost::signal<void (bool)> onConnectFinished;
-
- private:
- void handleHostnameResolved(const boost::optional<HostAddress>& address);
- void handleConnected(bool error);
-
- private:
- LinkLocalService service;
- boost::shared_ptr<DNSSDQuerier> querier;
- boost::shared_ptr<DNSSDResolveHostnameQuery> resolveQuery;
- boost::bsignals::connection resolveQueryHostNameResolvedConnection;
- boost::shared_ptr<Connection> connection;
- boost::bsignals::connection connectionConnectFinishedConnection;
- std::vector<boost::shared_ptr<Element> > queuedElements;
- };
+ class DNSSDQuerier;
+ class DNSSDResolveHostnameQuery;
+ class HostAddress;
+ class ToplevelElement;
+
+ class SWIFTEN_API LinkLocalConnector : public std::enable_shared_from_this<LinkLocalConnector> {
+ public:
+ LinkLocalConnector(
+ const LinkLocalService& service,
+ std::shared_ptr<DNSSDQuerier> querier,
+ std::shared_ptr<Connection> connection);
+ ~LinkLocalConnector();
+
+ const LinkLocalService& getService() const {
+ return service;
+ }
+
+ void connect();
+ void cancel();
+ void queueElement(std::shared_ptr<ToplevelElement> element);
+
+ const std::vector<std::shared_ptr<ToplevelElement> >& getQueuedElements() const {
+ return queuedElements;
+ }
+
+ std::shared_ptr<Connection> getConnection() const {
+ return connection;
+ }
+
+ boost::signals2::signal<void (bool)> onConnectFinished;
+
+ private:
+ void handleHostnameResolved(const boost::optional<HostAddress>& address);
+ void handleConnected(bool error);
+
+ private:
+ LinkLocalService service;
+ std::shared_ptr<DNSSDQuerier> querier;
+ std::shared_ptr<DNSSDResolveHostnameQuery> resolveQuery;
+ boost::signals2::connection resolveQueryHostNameResolvedConnection;
+ std::shared_ptr<Connection> connection;
+ boost::signals2::connection connectionConnectFinishedConnection;
+ std::vector<std::shared_ptr<ToplevelElement> > queuedElements;
+ };
}