diff --git a/BUILD b/BUILD
index 0dc7769..1f7aabb 100644
--- a/BUILD
+++ b/BUILD
@@ -12,7 +12,7 @@
     srcs = glob(["src/main/java/**/*.java"]),
     manifest_entries = [
         "Gerrit-PluginName: delete-project",
-        "Gerrit-Module: com.googlesource.gerrit.plugins.deleteproject.Module",
+        "Gerrit-Module: com.googlesource.gerrit.plugins.deleteproject.PluginModule",
         "Gerrit-HttpModule: com.googlesource.gerrit.plugins.deleteproject.HttpModule",
         "Gerrit-SshModule: com.googlesource.gerrit.plugins.deleteproject.SshModule",
     ],
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/Module.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/PluginModule.java
similarity index 96%
rename from src/main/java/com/googlesource/gerrit/plugins/deleteproject/Module.java
rename to src/main/java/com/googlesource/gerrit/plugins/deleteproject/PluginModule.java
index 7a91b29..4d0a802 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/Module.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/PluginModule.java
@@ -30,12 +30,12 @@
 import com.googlesource.gerrit.plugins.deleteproject.fs.DeleteTrashFolders;
 import com.googlesource.gerrit.plugins.deleteproject.fs.FilesystemDeleteHandler;
 
-public class Module extends AbstractModule {
+public class PluginModule extends AbstractModule {
 
   private final boolean scheduleCleaning;
 
   @Inject
-  Module(Configuration config) {
+  PluginModule(Configuration config) {
     this.scheduleCleaning = config.getArchiveDuration() > 0;
   }
 
diff --git a/src/test/java/com/googlesource/gerrit/plugins/deleteproject/DeleteProjectIT.java b/src/test/java/com/googlesource/gerrit/plugins/deleteproject/DeleteProjectIT.java
index 5e05041..bfc44a1 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/deleteproject/DeleteProjectIT.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/deleteproject/DeleteProjectIT.java
@@ -58,7 +58,7 @@
 @UseSsh
 @TestPlugin(
     name = "delete-project",
-    sysModule = "com.googlesource.gerrit.plugins.deleteproject.Module",
+    sysModule = "com.googlesource.gerrit.plugins.deleteproject.PluginModule",
     sshModule = "com.googlesource.gerrit.plugins.deleteproject.SshModule",
     httpModule = "com.googlesource.gerrit.plugins.deleteproject.HttpModule")
 public class DeleteProjectIT extends LightweightPluginDaemonTest {
@@ -259,7 +259,12 @@
     String projectName = createProjectOverAPI(name, null, true, null).get();
     File projectDir = verifyProjectRepoExists(Project.NameKey.parse(projectName));
 
-    Path parentFolder = projectDir.toPath().getParent().resolve(PARENT_FOLDER).resolve(projectName + Constants.DOT_GIT);
+    Path parentFolder =
+        projectDir
+            .toPath()
+            .getParent()
+            .resolve(PARENT_FOLDER)
+            .resolve(projectName + Constants.DOT_GIT);
     parentFolder.toFile().mkdirs();
     assertThat(parentFolder.toFile().exists()).isTrue();
     assertThat(isEmpty(parentFolder)).isTrue();
