/* * Copyright (c) 2012 Kevin Smith * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ #include <Swiften/Network/CachingNameOnlyDomainNameResolver.h> #include <boost/smart_ptr/make_shared.hpp> namespace Swift { CachingNameOnlyDomainNameResolver::CachingNameOnlyDomainNameResolver(DomainNameResolver* realResolver, EventLoop* eventLoop) : realResolver(realResolver) { staticResolver = boost::make_shared<StaticDomainNameResolver>(eventLoop); } CachingNameOnlyDomainNameResolver::~CachingNameOnlyDomainNameResolver() { } DomainNameServiceQuery::ref CachingNameOnlyDomainNameResolver::createServiceQuery(const std::string& name) { return staticResolver->createServiceQuery(name); } DomainNameAddressQuery::ref CachingNameOnlyDomainNameResolver::createAddressQuery(const std::string& name) { return realResolver->createAddressQuery(name); } void CachingNameOnlyDomainNameResolver::handleAddressQueryResult(const std::string hostname, const std::vector<HostAddress>& address, boost::optional<DomainNameResolveError> error) { //FIXME: Cache } }