Returns the amount of IPs that were resolved for the DNSResolver host.
authorGuilherme Maciel Ferreira <guilherme.maciel.ferreira@intra2net.com>
Tue, 15 Mar 2011 11:26:59 +0000 (12:26 +0100)
committerGuilherme Maciel Ferreira <guilherme.maciel.ferreira@intra2net.com>
Tue, 15 Mar 2011 11:29:13 +0000 (12:29 +0100)
src/dns/dnsresolver.cpp
src/dns/dnsresolver.h

index 849f826..54cb70a 100644 (file)
@@ -24,6 +24,15 @@ DnsResolver::~DnsResolver()
 {
 }
 
+int DnsResolver::get_resolved_ip_count()
+{
+    int resolved_ip_count = ResolvedHostAddressList.size();
+
+    BOOST_ASSERT( 1 <= resolved_ip_count );
+
+    return resolved_ip_count;
+}
+
 string DnsResolver::get_next_ip()
 {
     uint list_size_before = ResolvedHostAddressList.size();
@@ -53,6 +62,7 @@ void DnsResolver::resolve( string dns_address )
     io_service io_service;
     tcp::resolver resolver( io_service );
     tcp::resolver::query query( tcp::v4(), dns_address, "" );
+    // TODO can throw exceptions if a host is not found
     tcp::resolver::iterator it_first = resolver.resolve( query );
     tcp::resolver::iterator it_last = tcp::resolver::iterator();
     while ( it_first != it_last )
index 88743f3..635b5ab 100644 (file)
@@ -16,6 +16,7 @@ public:
     explicit DnsResolver( std::string dns_address );
     virtual ~DnsResolver();
 
+    int get_resolved_ip_count();
     std::string get_next_ip();
 
 private: