Allow throwing RestApiException from all create methods in REST root collections
Internally at Google we need to subclass the REST root collections and
we want to be able to reject the creation of new resources in the root
collections with any REST exception.
Change-Id: I30688e5ae11f0631d61a875ab03afddce42de67b
Signed-off-by: Edwin Kempin <ekempin@google.com>
diff --git a/java/com/google/gerrit/server/restapi/account/AccountsCollection.java b/java/com/google/gerrit/server/restapi/account/AccountsCollection.java
index 6878c36..6cec565 100644
--- a/java/com/google/gerrit/server/restapi/account/AccountsCollection.java
+++ b/java/com/google/gerrit/server/restapi/account/AccountsCollection.java
@@ -20,6 +20,7 @@
import com.google.gerrit.extensions.restapi.AuthException;
import com.google.gerrit.extensions.restapi.IdString;
import com.google.gerrit.extensions.restapi.ResourceNotFoundException;
+import com.google.gerrit.extensions.restapi.RestApiException;
import com.google.gerrit.extensions.restapi.RestCollection;
import com.google.gerrit.extensions.restapi.RestView;
import com.google.gerrit.extensions.restapi.TopLevelResource;
@@ -160,7 +161,7 @@
}
@Override
- public CreateAccount create(TopLevelResource parent, IdString username) {
+ public CreateAccount create(TopLevelResource parent, IdString username) throws RestApiException {
return createAccountFactory.create(username.get());
}
}
diff --git a/java/com/google/gerrit/server/restapi/group/GroupsCollection.java b/java/com/google/gerrit/server/restapi/group/GroupsCollection.java
index d05194f..fba1f1f 100644
--- a/java/com/google/gerrit/server/restapi/group/GroupsCollection.java
+++ b/java/com/google/gerrit/server/restapi/group/GroupsCollection.java
@@ -24,6 +24,7 @@
import com.google.gerrit.extensions.restapi.IdString;
import com.google.gerrit.extensions.restapi.NeedsParams;
import com.google.gerrit.extensions.restapi.ResourceNotFoundException;
+import com.google.gerrit.extensions.restapi.RestApiException;
import com.google.gerrit.extensions.restapi.RestCollection;
import com.google.gerrit.extensions.restapi.RestView;
import com.google.gerrit.extensions.restapi.TopLevelResource;
@@ -199,7 +200,7 @@
}
@Override
- public CreateGroup create(TopLevelResource root, IdString name) {
+ public CreateGroup create(TopLevelResource root, IdString name) throws RestApiException {
return createGroup.create(name.get());
}
diff --git a/java/com/google/gerrit/server/restapi/project/ProjectsCollection.java b/java/com/google/gerrit/server/restapi/project/ProjectsCollection.java
index 03e3e53..1ba993c 100644
--- a/java/com/google/gerrit/server/restapi/project/ProjectsCollection.java
+++ b/java/com/google/gerrit/server/restapi/project/ProjectsCollection.java
@@ -181,7 +181,7 @@
}
@Override
- public CreateProject create(TopLevelResource parent, IdString name) {
+ public CreateProject create(TopLevelResource parent, IdString name) throws RestApiException {
return createProjectFactory.create(name.get());
}
}