hc-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ol...@apache.org
Subject svn commit: r1166362 - /httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/InMemoryDnsResolver.java
Date Wed, 07 Sep 2011 20:04:39 GMT
Author: olegk
Date: Wed Sep  7 20:04:38 2011
New Revision: 1166362

URL: http://svn.apache.org/viewvc?rev=1166362&view=rev
Log:
Simplified InMemoryDnsResolver#add method

Modified:
    httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/InMemoryDnsResolver.java

Modified: httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/InMemoryDnsResolver.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/InMemoryDnsResolver.java?rev=1166362&r1=1166361&r2=1166362&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/InMemoryDnsResolver.java
(original)
+++ httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/InMemoryDnsResolver.java
Wed Sep  7 20:04:38 2011
@@ -34,7 +34,6 @@ import java.util.concurrent.ConcurrentHa
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.http.conn.util.InetAddressUtils;
 import org.apache.http.conn.DnsResolver;
 
 /**
@@ -64,40 +63,23 @@ public class InMemoryDnsResolver impleme
     }
 
     /**
-     * Associates the given IP address to the given host in this DNS overrider.
+     * Associates the given array of IP addresses to the given host in this DNS overrider.
+     * The IP addresses are assumed to be already resolved.
      *
      * @param host
      *            The host name to be associated with the given IP.
-     * @param ip
-     *            IPv4 address to be resolved by this DNS overrider to the given
+     * @param ips
+     *            array of IP addresses to be resolved by this DNS overrider to the given
      *            host name.
-     *
-     * @throws IllegalArgumentException
-     *             if the given IP is not a valid IPv4 address or an InetAddress
-     *             instance cannot be built based on the given IPv4 address.
-     *
-     * @see InetAddress#getByAddress
      */
-    public void add(final String host, final String ip) {
-        if (!InetAddressUtils.isIPv4Address(ip)) {
-            throw new IllegalArgumentException(ip + " must be a valid IPv4 address");
-        }
-
-        String[] ipParts = ip.split("\\.");
-
-        byte[] byteIpAddress = new byte[4];
-
-        for (int i = 0; i < 4; i++) {
-            byteIpAddress[i] = Integer.decode(ipParts[i]).byteValue();
+    public void add(final String host, final InetAddress... ips) {
+        if (host == null) {
+            throw new IllegalArgumentException("Host name may not be null");
         }
-
-        try {
-            dnsMap.put(host, new InetAddress[] { InetAddress.getByAddress(byteIpAddress)
});
-        } catch (UnknownHostException e) {
-            log.error("Unable to build InetAddress for " + ip, e);
-            throw new IllegalArgumentException(e);
+        if (ips == null) {
+            throw new IllegalArgumentException("Array of IP addresses may not be null");
         }
-
+        dnsMap.put(host, ips);
     }
 
     /**
@@ -108,11 +90,9 @@ public class InMemoryDnsResolver impleme
         if (log.isInfoEnabled()) {
             log.info("Resolving " + host + " to " + Arrays.deepToString(resolvedAddresses));
         }
-
         if(resolvedAddresses == null){
-            throw new UnknownHostException(host + " cannot be resolved.");
+            throw new UnknownHostException(host + " cannot be resolved");
         }
-
         return resolvedAddresses;
     }
 



Mime
View raw message