From 2833b8f09c9aef09004662a2a89eefbaee1e4247 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Remko=20Tron=C3=A7on?= Date: Sun, 26 Jul 2009 00:05:30 +0200 Subject: Implement LinkLocalService. diff --git a/Swiften/LinkLocal/LinkLocalService.h b/Swiften/LinkLocal/LinkLocalService.h index 2c62307..0c675a3 100644 --- a/Swiften/LinkLocal/LinkLocalService.h +++ b/Swiften/LinkLocal/LinkLocalService.h @@ -1,8 +1,8 @@ #pragma once #include "Swiften/Base/String.h" -#include "Swiften/Network/HostAddress.h" #include "Swiften/LinkLocal/DNSSD/DNSSDServiceID.h" +#include "Swiften/LinkLocal/DNSSD/DNSSDResolveServiceQuery.h" #include "Swiften/LinkLocal/LinkLocalServiceInfo.h" namespace Swift { @@ -10,7 +10,7 @@ namespace Swift { public: LinkLocalService( const DNSSDServiceID& id, - const DNSSDService::ResolveResult& info) : + const DNSSDResolveServiceQuery::Result& info) : id(id), info(info) {} @@ -36,6 +36,6 @@ namespace Swift { private: DNSSDServiceID id; - DNSSDService::ResolveResult info; + DNSSDResolveServiceQuery::Result info; }; } diff --git a/Swiften/LinkLocal/LinkLocalServiceBrowser.cpp b/Swiften/LinkLocal/LinkLocalServiceBrowser.cpp index 6634a0a..4e9c2de 100644 --- a/Swiften/LinkLocal/LinkLocalServiceBrowser.cpp +++ b/Swiften/LinkLocal/LinkLocalServiceBrowser.cpp @@ -20,7 +20,6 @@ LinkLocalServiceBrowser::~LinkLocalServiceBrowser() { browseQuery->stopBrowsing(); } -/* std::vector LinkLocalServiceBrowser::getServices() const { std::vector result; for (ServiceMap::const_iterator i = services.begin(); i != services.end(); ++i) { @@ -28,7 +27,6 @@ std::vector LinkLocalServiceBrowser::getServices() const { } return result; } -*/ void LinkLocalServiceBrowser::handleServiceAdded(const DNSSDServiceID& service) { boost::shared_ptr resolveQuery = querier->createResolveServiceQuery(service); @@ -50,11 +48,7 @@ void LinkLocalServiceBrowser::handleServiceRemoved(const DNSSDServiceID& service } void LinkLocalServiceBrowser::handleServiceResolved(const DNSSDServiceID& service, const boost::optional& result) { - if (!result) { - // TODO - std::cerr << "Error resolving" << std::endl; - } - else { + if (result) { std::pair r = services.insert(std::make_pair(service, *result)); if (r.second) { onServiceAdded(service); diff --git a/Swiften/LinkLocal/LinkLocalServiceBrowser.h b/Swiften/LinkLocal/LinkLocalServiceBrowser.h index 5bd9bf0..7ec796a 100644 --- a/Swiften/LinkLocal/LinkLocalServiceBrowser.h +++ b/Swiften/LinkLocal/LinkLocalServiceBrowser.h @@ -10,16 +10,15 @@ #include "Swiften/LinkLocal/DNSSD/DNSSDQuerier.h" #include "Swiften/LinkLocal/DNSSD/DNSSDResolveServiceQuery.h" #include "Swiften/LinkLocal/DNSSD/DNSSDServiceID.h" +#include "Swiften/LinkLocal/LinkLocalService.h" namespace Swift { - //class HostAddress; - class LinkLocalServiceBrowser { public: LinkLocalServiceBrowser(boost::shared_ptr querier); ~LinkLocalServiceBrowser(); - /*std::vector getServices() const;*/ + std::vector getServices() const; boost::signal onServiceAdded; boost::signal onServiceChanged; -- cgit v0.10.2-6-g49f6