diff --git a/java/google/registry/tools/DeleteDomainCommand.java b/java/google/registry/tools/DeleteDomainCommand.java
index 8ab855d12..35ee93b0d 100644
--- a/java/google/registry/tools/DeleteDomainCommand.java
+++ b/java/google/registry/tools/DeleteDomainCommand.java
@@ -35,6 +35,11 @@ final class DeleteDomainCommand extends MutatingEppToolCommand {
required = true)
private String domainName;
+ @Parameter(
+ names = {"--immediately"},
+ description = "Whether to bypass grace periods and delete the domain immediately.")
+ private boolean immediately = false;
+
@Parameter(
names = {"--reason"},
description = "Reason for the change.",
@@ -43,15 +48,19 @@ final class DeleteDomainCommand extends MutatingEppToolCommand {
@Parameter(
names = {"--registrar_request"},
- description = "Whether the change was requested by a registrar.",
- arity = 1)
+ description = "Whether the change was requested by a registrar.")
private boolean requestedByRegistrar = false;
@Override
protected void initMutatingEppToolCommand() {
+ if (immediately) {
+ // Immediate deletion is accomplished using the superuser extension.
+ superuser = true;
+ }
setSoyTemplate(DeleteDomainSoyInfo.getInstance(), DeleteDomainSoyInfo.DELETEDOMAIN);
addSoyRecord(clientId, new SoyMapData(
"domainName", domainName,
+ "immediately", immediately,
"reason", reason,
"requestedByRegistrar", requestedByRegistrar));
}
diff --git a/java/google/registry/tools/soy/DeleteDomain.soy b/java/google/registry/tools/soy/DeleteDomain.soy
index 0355ceb54..ceb66c11c 100644
--- a/java/google/registry/tools/soy/DeleteDomain.soy
+++ b/java/google/registry/tools/soy/DeleteDomain.soy
@@ -19,6 +19,7 @@
*/
{template .deletedomain stricthtml="false"}
{@param domainName: string}
+{@param immediately: bool}
{@param reason: string}
{@param requestedByRegistrar: any}
@@ -35,6 +36,12 @@
Deleted by registry administrator: {$reason}
{$requestedByRegistrar}
+ {if $immediately}
+
+ 0
+ 0
+
+ {/if}
RegistryTool
diff --git a/javatests/google/registry/tools/DeleteDomainCommandTest.java b/javatests/google/registry/tools/DeleteDomainCommandTest.java
index 7d56a2b39..60ed0f2e5 100644
--- a/javatests/google/registry/tools/DeleteDomainCommandTest.java
+++ b/javatests/google/registry/tools/DeleteDomainCommandTest.java
@@ -30,30 +30,31 @@ public class DeleteDomainCommandTest extends EppToolCommandTestCase
+
+
+
+ example.tld
+
+
+
+
+ Deleted by registry administrator: Test
+ false
+
+
+ 0
+ 0
+
+
+ RegistryTool
+
+