From 579e4cb74e4c2e21baccd1b32f36298b99955904 Mon Sep 17 00:00:00 2001 From: mcilwain Date: Tue, 24 Jan 2017 14:12:34 -0800 Subject: [PATCH] Remove TLD parameters from WHOIS command factory methods The small efficiency increase in not having to look up the TLDs again did not justify making the externally extensible API more complicated. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=145465971 --- .../registry/whois/DomainLookupCommand.java | 9 ++----- .../whois/DomainOrHostLookupCommand.java | 13 +++------ .../whois/NameserverLookupByHostCommand.java | 7 +---- .../registry/whois/WhoisCommandFactory.java | 27 +++---------------- java/google/registry/whois/WhoisReader.java | 6 ++--- 5 files changed, 13 insertions(+), 49 deletions(-) diff --git a/java/google/registry/whois/DomainLookupCommand.java b/java/google/registry/whois/DomainLookupCommand.java index 8391acd50..a91510640 100644 --- a/java/google/registry/whois/DomainLookupCommand.java +++ b/java/google/registry/whois/DomainLookupCommand.java @@ -19,18 +19,13 @@ import static google.registry.model.EppResourceUtils.loadByForeignKey; import com.google.common.base.Optional; import com.google.common.net.InternetDomainName; import google.registry.model.domain.DomainResource; -import javax.annotation.Nullable; import org.joda.time.DateTime; /** Represents a WHOIS lookup on a domain name (i.e. SLD). */ public class DomainLookupCommand extends DomainOrHostLookupCommand { - DomainLookupCommand(InternetDomainName domainName) { - this(domainName, null); - } - - public DomainLookupCommand(InternetDomainName domainName, @Nullable InternetDomainName tld) { - super(domainName, tld, "Domain"); + public DomainLookupCommand(InternetDomainName domainName) { + super(domainName, "Domain"); } @Override diff --git a/java/google/registry/whois/DomainOrHostLookupCommand.java b/java/google/registry/whois/DomainOrHostLookupCommand.java index 9071ac95f..a59084ed2 100644 --- a/java/google/registry/whois/DomainOrHostLookupCommand.java +++ b/java/google/registry/whois/DomainOrHostLookupCommand.java @@ -22,7 +22,6 @@ import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Optional; import com.google.common.net.InternetDomainName; -import javax.annotation.Nullable; import org.joda.time.DateTime; /** Represents a WHOIS lookup on a domain name (i.e. SLD) or a nameserver. */ @@ -32,21 +31,15 @@ public abstract class DomainOrHostLookupCommand implements WhoisCommand { private final String errorPrefix; - private Optional tld; - - DomainOrHostLookupCommand( - InternetDomainName domainName, @Nullable InternetDomainName tld, String errorPrefix) { + DomainOrHostLookupCommand(InternetDomainName domainName, String errorPrefix) { this.errorPrefix = errorPrefix; this.domainOrHostName = checkNotNull(domainName, "domainOrHostName"); - this.tld = Optional.fromNullable(tld); } @Override public final WhoisResponse executeQuery(final DateTime now) throws WhoisException { - if (!tld.isPresent()) { - tld = findTldForName(domainOrHostName); - } - // Google Policy: Do not return records under TLDs for which we're not authoritative. + Optional tld = findTldForName(domainOrHostName); + // Google Registry Policy: Do not return records under TLDs for which we're not authoritative. if (tld.isPresent() && getTlds().contains(tld.get().toString())) { final Optional response = getResponse(domainOrHostName, now); if (response.isPresent()) { diff --git a/java/google/registry/whois/NameserverLookupByHostCommand.java b/java/google/registry/whois/NameserverLookupByHostCommand.java index 9dc39c735..d376a4108 100644 --- a/java/google/registry/whois/NameserverLookupByHostCommand.java +++ b/java/google/registry/whois/NameserverLookupByHostCommand.java @@ -19,18 +19,13 @@ import static google.registry.model.EppResourceUtils.loadByForeignKey; import com.google.common.base.Optional; import com.google.common.net.InternetDomainName; import google.registry.model.host.HostResource; -import javax.annotation.Nullable; import org.joda.time.DateTime; /** Represents a WHOIS lookup on a nameserver based on its hostname. */ public class NameserverLookupByHostCommand extends DomainOrHostLookupCommand { NameserverLookupByHostCommand(InternetDomainName hostName) { - this(hostName, null); - } - - NameserverLookupByHostCommand(InternetDomainName hostName, @Nullable InternetDomainName tld) { - super(hostName, tld, "Nameserver"); + super(hostName, "Nameserver"); } @Override diff --git a/java/google/registry/whois/WhoisCommandFactory.java b/java/google/registry/whois/WhoisCommandFactory.java index 0d3d9beb9..0067b42be 100644 --- a/java/google/registry/whois/WhoisCommandFactory.java +++ b/java/google/registry/whois/WhoisCommandFactory.java @@ -17,7 +17,6 @@ package google.registry.whois; import com.google.common.net.InternetDomainName; import google.registry.config.RegistryConfig.ConfigModule; import java.net.InetAddress; -import javax.annotation.Nullable; /** * A class used to configure WHOIS commands. @@ -28,17 +27,8 @@ import javax.annotation.Nullable; public class WhoisCommandFactory { /** Returns a new {@link WhoisCommand} to perform a domain lookup on the specified domain name. */ - public final WhoisCommand domainLookup(InternetDomainName domainName) { - return domainLookup(domainName, null); - } - - /** - * Returns a new {@link WhoisCommand} to perform a domain lookup on the specified domain name in - * the specified TLD. - */ - public WhoisCommand domainLookup( - InternetDomainName domainName, @Nullable InternetDomainName tld) { - return new DomainLookupCommand(domainName, tld); + public WhoisCommand domainLookup(InternetDomainName domainName) { + return new DomainLookupCommand(domainName); } /** @@ -51,17 +41,8 @@ public class WhoisCommandFactory { /** * Returns a new {@link WhoisCommand} to perform a nameserver lookup on the specified host name. */ - public final WhoisCommand nameserverLookupByHost(InternetDomainName hostName) { - return nameserverLookupByHost(hostName, null); - } - - /** - * Returns a new {@link WhoisCommand} to perform a nameserver lookup on the specified host name in - * the specified TLD. - */ - public WhoisCommand nameserverLookupByHost( - InternetDomainName hostName, @Nullable InternetDomainName tld) { - return new NameserverLookupByHostCommand(hostName, tld); + public WhoisCommand nameserverLookupByHost(InternetDomainName hostName) { + return new NameserverLookupByHostCommand(hostName); } /** diff --git a/java/google/registry/whois/WhoisReader.java b/java/google/registry/whois/WhoisReader.java index 3f5497161..244d64814 100644 --- a/java/google/registry/whois/WhoisReader.java +++ b/java/google/registry/whois/WhoisReader.java @@ -179,14 +179,14 @@ class WhoisReader { return new RegistrarLookupCommand(arg1); } - // If the target is exactly one level above the TLD, then this is an second level domain + // If the target is exactly one level above the TLD, then this is a second level domain // (SLD) and we should do a domain lookup on it. if (targetName.parent().equals(tld.get())) { - return commandFactory.domainLookup(targetName, tld.get()); + return commandFactory.domainLookup(targetName); } // The target is more than one level above the TLD, so we'll assume it's a nameserver. - return commandFactory.nameserverLookupByHost(targetName, tld.get()); + return commandFactory.nameserverLookupByHost(targetName); } catch (IllegalArgumentException e) { // Silently ignore this exception. }