From 847ef12a4ff3c4e8bfac33a5178e5db598131f33 Mon Sep 17 00:00:00 2001 From: Ben McIlwain Date: Fri, 31 Oct 2025 11:52:10 -0400 Subject: [PATCH] Remove Tld.allowedRegistrantContactIds field (#2867) We no longer need this now that no contacts can be applied to any domains at all. A follow-up PR in subsequent weeks will delete the column from the DB schema. BUG= http://b/448619572 --- .../registry/config/files/tld/example.yaml | 1 - .../flows/domain/DomainCreateFlow.java | 1 - .../flows/domain/DomainFlowUtils.java | 19 ------ .../flows/domain/DomainUpdateFlow.java | 3 - .../java/google/registry/model/tld/Tld.java | 15 ----- .../flows/domain/DomainCreateFlowTest.java | 28 -------- .../flows/domain/DomainUpdateFlowTest.java | 66 ------------------- .../google/registry/model/tld/TldTest.java | 3 - .../google/registry/model/tld/tld.yaml | 1 - .../resources/google/registry/tools/1tld.yaml | 1 - .../google/registry/tools/badidn.yaml | 1 - .../google/registry/tools/badunicode.yaml | 1 - .../google/registry/tools/diffcostmap.yaml | 1 - .../google/registry/tools/extrafield.yaml | 1 - .../resources/google/registry/tools/idns.yaml | 1 - .../resources/google/registry/tools/jpy.yaml | 1 - .../registry/tools/missingnullablefields.yaml | 1 - .../registry/tools/nullablefieldsallnull.yaml | 1 - .../registry/tools/outoforderfields.yaml | 1 - .../resources/google/registry/tools/tld.yaml | 1 - .../google/registry/tools/wildcard.yaml | 1 - .../google/registry/tools/wrongcurrency.yaml | 1 - .../sql/schema/db-schema.sql.generated | 1 - 23 files changed, 151 deletions(-) diff --git a/core/src/main/java/google/registry/config/files/tld/example.yaml b/core/src/main/java/google/registry/config/files/tld/example.yaml index 8c5fbb76d..d51da68f3 100644 --- a/core/src/main/java/google/registry/config/files/tld/example.yaml +++ b/core/src/main/java/google/registry/config/files/tld/example.yaml @@ -5,7 +5,6 @@ addGracePeriodLength: "PT432000S" allowedFullyQualifiedHostNames: [] -allowedRegistrantContactIds: [] anchorTenantAddGracePeriodLength: "PT2592000S" autoRenewGracePeriodLength: "PT3888000S" automaticTransferLength: "PT432000S" diff --git a/core/src/main/java/google/registry/flows/domain/DomainCreateFlow.java b/core/src/main/java/google/registry/flows/domain/DomainCreateFlow.java index e8cc745cf..d29024645 100644 --- a/core/src/main/java/google/registry/flows/domain/DomainCreateFlow.java +++ b/core/src/main/java/google/registry/flows/domain/DomainCreateFlow.java @@ -195,7 +195,6 @@ import org.joda.time.Duration; * @error {@link DomainFlowUtils.NameserversNotAllowedForTldException} * @error {@link DomainFlowUtils.NameserversNotSpecifiedForTldWithNameserverAllowListException} * @error {@link DomainFlowUtils.PremiumNameBlockedException} - * @error {@link DomainFlowUtils.RegistrantNotAllowedException} * @error {@link RegistrantProhibitedException} * @error {@link DomainFlowUtils.RegistrarMustBeActiveForThisOperationException} * @error {@link DomainFlowUtils.TldDoesNotExistException} diff --git a/core/src/main/java/google/registry/flows/domain/DomainFlowUtils.java b/core/src/main/java/google/registry/flows/domain/DomainFlowUtils.java index 0f75637f3..0228126ed 100644 --- a/core/src/main/java/google/registry/flows/domain/DomainFlowUtils.java +++ b/core/src/main/java/google/registry/flows/domain/DomainFlowUtils.java @@ -553,17 +553,6 @@ public class DomainFlowUtils { } } - static void validateRegistrantAllowedOnTld(String tld, Optional registrantContactId) - throws RegistrantNotAllowedException { - ImmutableSet allowedRegistrants = Tld.get(tld).getAllowedRegistrantContactIds(); - // Empty allow list or null registrantContactId are ignored. - if (registrantContactId.isPresent() - && !allowedRegistrants.isEmpty() - && !allowedRegistrants.contains(registrantContactId.get())) { - throw new RegistrantNotAllowedException(registrantContactId.get()); - } - } - static void validateNameserversAllowedOnTld(String tld, Set fullyQualifiedHostNames) throws EppException { ImmutableSet allowedHostNames = Tld.get(tld).getAllowedFullyQualifiedHostNames(); @@ -1091,7 +1080,6 @@ public class DomainFlowUtils { command.getContacts(), command.getRegistrant(), command.getNameservers()); validateContactsHaveTypes(command.getContacts()); String tldStr = tld.getTldStr(); - validateRegistrantAllowedOnTld(tldStr, command.getRegistrantContactId()); validateNoDuplicateContacts(command.getContacts()); validateCreateContactData(command.getRegistrant(), command.getContacts()); ImmutableSet hostNames = command.getNameserverHostNames(); @@ -1630,13 +1618,6 @@ public class DomainFlowUtils { } } - /** Registrant is not allow-listed for this TLD. */ - public static class RegistrantNotAllowedException extends StatusProhibitsOperationException { - public RegistrantNotAllowedException(String contactId) { - super(String.format("Registrant with id %s is not allow-listed for this TLD", contactId)); - } - } - /** Nameservers are not allow-listed for this TLD. */ public static class NameserversNotAllowedForTldException extends StatusProhibitsOperationException { diff --git a/core/src/main/java/google/registry/flows/domain/DomainUpdateFlow.java b/core/src/main/java/google/registry/flows/domain/DomainUpdateFlow.java index f43ad5274..5a4981f83 100644 --- a/core/src/main/java/google/registry/flows/domain/DomainUpdateFlow.java +++ b/core/src/main/java/google/registry/flows/domain/DomainUpdateFlow.java @@ -36,7 +36,6 @@ import static google.registry.flows.domain.DomainFlowUtils.validateFeesAckedIfPr import static google.registry.flows.domain.DomainFlowUtils.validateNameserversAllowedOnTld; import static google.registry.flows.domain.DomainFlowUtils.validateNameserversCountForTld; import static google.registry.flows.domain.DomainFlowUtils.validateNoDuplicateContacts; -import static google.registry.flows.domain.DomainFlowUtils.validateRegistrantAllowedOnTld; import static google.registry.flows.domain.DomainFlowUtils.validateUpdateContactData; import static google.registry.flows.domain.DomainFlowUtils.verifyClientUpdateNotProhibited; import static google.registry.flows.domain.DomainFlowUtils.verifyNotInPendingDelete; @@ -131,7 +130,6 @@ import org.joda.time.DateTime; * @error {@link DomainFlowUtils.NameserversNotAllowedForTldException} * @error {@link NameserversNotSpecifiedForTldWithNameserverAllowListException} * @error {@link DomainFlowUtils.NotAuthorizedForTldException} - * @error {@link DomainFlowUtils.RegistrantNotAllowedException} * @error {@link RegistrantProhibitedException} * @error {@link DomainFlowUtils.SecDnsAllUsageException} * @error {@link DomainFlowUtils.TooManyDsRecordsException} @@ -248,7 +246,6 @@ public final class DomainUpdateFlow implements MutatingFlow { add.getNameservers()); validateContactsHaveTypes(add.getContacts()); validateContactsHaveTypes(remove.getContacts()); - validateRegistrantAllowedOnTld(tldStr, command.getInnerChange().getRegistrantContactId()); validateNameserversAllowedOnTld(tldStr, add.getNameserverHostNames()); } diff --git a/core/src/main/java/google/registry/model/tld/Tld.java b/core/src/main/java/google/registry/model/tld/Tld.java index 60b7403dc..75870bdaa 100644 --- a/core/src/main/java/google/registry/model/tld/Tld.java +++ b/core/src/main/java/google/registry/model/tld/Tld.java @@ -521,11 +521,6 @@ public class Tld extends ImmutableObject implements Buildable, UnsafeSerializabl @Column(nullable = false) DateTime claimsPeriodEnd = END_OF_TIME; - /** An allowlist of clients allowed to be used on domains on this TLD (ignored if empty). */ - @Nullable - @JsonSerialize(using = SortedSetSerializer.class) - Set allowedRegistrantContactIds; - /** An allowlist of hosts allowed to be used on domains on this TLD (ignored if empty). */ @Nullable @JsonSerialize(using = SortedSetSerializer.class) @@ -786,10 +781,6 @@ public class Tld extends ImmutableObject implements Buildable, UnsafeSerializabl return tldUnicode; } - public ImmutableSet getAllowedRegistrantContactIds() { - return nullToEmptyImmutableCopy(allowedRegistrantContactIds); - } - public ImmutableSet getAllowedFullyQualifiedHostNames() { return nullToEmptyImmutableCopy(allowedFullyQualifiedHostNames); } @@ -1077,12 +1068,6 @@ public class Tld extends ImmutableObject implements Buildable, UnsafeSerializabl return this; } - public Builder setAllowedRegistrantContactIds( - ImmutableSet allowedRegistrantContactIds) { - getInstance().allowedRegistrantContactIds = allowedRegistrantContactIds; - return this; - } - public Builder setAllowedFullyQualifiedHostNames( ImmutableSet allowedFullyQualifiedHostNames) { getInstance().allowedFullyQualifiedHostNames = allowedFullyQualifiedHostNames; diff --git a/core/src/test/java/google/registry/flows/domain/DomainCreateFlowTest.java b/core/src/test/java/google/registry/flows/domain/DomainCreateFlowTest.java index 04c7d1926..daddc745b 100644 --- a/core/src/test/java/google/registry/flows/domain/DomainCreateFlowTest.java +++ b/core/src/test/java/google/registry/flows/domain/DomainCreateFlowTest.java @@ -133,7 +133,6 @@ import google.registry.flows.domain.DomainFlowUtils.NameserversNotAllowedForTldE import google.registry.flows.domain.DomainFlowUtils.NameserversNotSpecifiedForTldWithNameserverAllowListException; import google.registry.flows.domain.DomainFlowUtils.NotAuthorizedForTldException; import google.registry.flows.domain.DomainFlowUtils.PremiumNameBlockedException; -import google.registry.flows.domain.DomainFlowUtils.RegistrantNotAllowedException; import google.registry.flows.domain.DomainFlowUtils.RegistrantProhibitedException; import google.registry.flows.domain.DomainFlowUtils.RegistrarMustBeActiveForThisOperationException; import google.registry.flows.domain.DomainFlowUtils.TldDoesNotExistException; @@ -2839,20 +2838,6 @@ class DomainCreateFlowTest extends ResourceFlowTestCase