Adapt to removal of ProjectControl from ProjectResource interface
Since change I204d7cae3816 ProjectResource takes a ProjectState rather
than a ProjectControl
Change-Id: Ie3d1b9a75278b0579253b79bd03c3e145fd509bb
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteAction.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteAction.java
index 26d2418..f9b0b5e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteAction.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteAction.java
@@ -72,6 +72,6 @@
}
private boolean isAllProjects(ProjectResource rsrc) {
- return (rsrc.getControl().getProject().getNameKey().equals(allProjectsName));
+ return (rsrc.getProjectState().getProject().getNameKey().equals(allProjectsName));
}
}
\ No newline at end of file
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteCommand.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteCommand.java
index e62634a..9fb912e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteCommand.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteCommand.java
@@ -17,8 +17,9 @@
import com.google.gerrit.extensions.restapi.AuthException;
import com.google.gerrit.extensions.restapi.ResourceConflictException;
import com.google.gerrit.extensions.restapi.ResourceNotFoundException;
-import com.google.gerrit.server.project.ProjectControl;
+import com.google.gerrit.server.CurrentUser;
import com.google.gerrit.server.project.ProjectResource;
+import com.google.gerrit.server.project.ProjectState;
import com.google.gerrit.sshd.CommandMetaData;
import com.google.gerrit.sshd.SshCommand;
import com.google.gwtorm.server.OrmException;
@@ -31,7 +32,7 @@
@CommandMetaData(name = "delete", description = "Delete specific project")
public final class DeleteCommand extends SshCommand {
@Argument(index = 0, required = true, metaVar = "NAME", usage = "project to delete")
- private ProjectControl projectControl;
+ private ProjectState projectState;
@Option(name = "--yes-really-delete", usage = "confirmation to delete the project")
private boolean yesReallyDelete;
@@ -44,9 +45,12 @@
private final DeleteProject deleteProject;
+ private final CurrentUser user;
+
@Inject
- protected DeleteCommand(DeleteProject deleteProject) {
+ protected DeleteCommand(DeleteProject deleteProject, CurrentUser user) {
this.deleteProject = deleteProject;
+ this.user = user;
}
@Override
@@ -56,7 +60,7 @@
input.force = force;
input.preserve = preserveGitRepository;
- ProjectResource rsrc = new ProjectResource(projectControl);
+ ProjectResource rsrc = new ProjectResource(projectState, user);
deleteProject.assertDeletePermission(rsrc);
deleteProject.assertCanDelete(rsrc, input);
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteProject.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteProject.java
index b2326ed..a6c09f1 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteProject.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/DeleteProject.java
@@ -131,7 +131,7 @@
public void assertCanDelete(ProjectResource rsrc, Input input) throws ResourceConflictException {
try {
pcHandler.assertCanDelete(rsrc);
- dbHandler.assertCanDelete(rsrc.getControl().getProject());
+ dbHandler.assertCanDelete(rsrc.getProjectState().getProject());
fsHandler.assertCanDelete(rsrc, input == null ? false : input.preserve);
} catch (CannotDeleteProjectException e) {
throw new ResourceConflictException(e.getMessage());
@@ -139,12 +139,12 @@
}
public Collection<String> getWarnings(ProjectResource rsrc) throws OrmException {
- return dbHandler.getWarnings(rsrc.getControl().getProject());
+ return dbHandler.getWarnings(rsrc.getProjectState().getProject());
}
public void doDelete(ProjectResource rsrc, Input input)
throws OrmException, IOException, ResourceNotFoundException, ResourceConflictException {
- Project project = rsrc.getControl().getProject();
+ Project project = rsrc.getProjectState().getProject();
boolean preserve = input != null && input.preserve;
Exception ex = null;
try {
diff --git a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/projectconfig/ProjectConfigDeleteHandler.java b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/projectconfig/ProjectConfigDeleteHandler.java
index 30486da..cea65c6 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/deleteproject/projectconfig/ProjectConfigDeleteHandler.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/deleteproject/projectconfig/ProjectConfigDeleteHandler.java
@@ -53,7 +53,7 @@
}
private void assertIsNotAllProjects(ProjectResource rsrc) throws CannotDeleteProjectException {
- Project project = rsrc.getControl().getProject();
+ Project project = rsrc.getProjectState().getProject();
if (project.getNameKey().equals(allProjectsName)) {
throw new CannotDeleteProjectException("Perhaps you meant to rm -fR " + site.site_path);
}