From afac2555e225a76049f019a9baa2598a618645cb Mon Sep 17 00:00:00 2001 From: Dave Borowitz Date: Thu, 19 Nov 2015 08:59:43 -0500 Subject: [PATCH] ChangeInserter: Propagate ResourceConflictExceptions Same issue as in b03dd905: ResourceConflictException is passed through by BatchUpdate where InvalidChangeOperationException is not. Change-Id: I800c28eec87743546c8320f0ff74092fda01496d --- .../com/google/gerrit/server/change/ChangeInserter.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/change/ChangeInserter.java b/gerrit-server/src/main/java/com/google/gerrit/server/change/ChangeInserter.java index 83ccf3c195..99cef4b155 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/change/ChangeInserter.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/change/ChangeInserter.java @@ -21,6 +21,7 @@ import static com.google.gerrit.reviewdb.client.Change.INITIAL_PATCH_SET_ID; import com.google.gerrit.common.ChangeHooks; import com.google.gerrit.common.data.LabelTypes; +import com.google.gerrit.extensions.restapi.ResourceConflictException; import com.google.gerrit.reviewdb.client.Account; import com.google.gerrit.reviewdb.client.Change; import com.google.gerrit.reviewdb.client.ChangeMessage; @@ -46,7 +47,6 @@ import com.google.gerrit.server.mail.CreateChangeSender; import com.google.gerrit.server.notedb.ChangeUpdate; import com.google.gerrit.server.patch.PatchSetInfoFactory; import com.google.gerrit.server.project.ChangeControl; -import com.google.gerrit.server.project.InvalidChangeOperationException; import com.google.gerrit.server.project.RefControl; import com.google.gerrit.server.ssh.NoSshInfo; import com.google.gerrit.server.util.RequestScopePropagator; @@ -228,7 +228,7 @@ public class ChangeInserter extends BatchUpdate.InsertChangeOp { @Override public void updateRepo(RepoContext ctx) - throws InvalidChangeOperationException, IOException { + throws ResourceConflictException, IOException { validate(ctx); patchSetInfo = patchSetInfoFactory.get( ctx.getRevWalk(), commit, patchSet.getId()); @@ -307,7 +307,7 @@ public class ChangeInserter extends BatchUpdate.InsertChangeOp { } private void validate(RepoContext ctx) - throws IOException, InvalidChangeOperationException { + throws IOException, ResourceConflictException { if (validatePolicy == CommitValidators.Policy.NONE) { return; } @@ -339,7 +339,7 @@ public class ChangeInserter extends BatchUpdate.InsertChangeOp { break; } } catch (CommitValidationException e) { - throw new InvalidChangeOperationException(e.getFullMessage()); + throw new ResourceConflictException(e.getFullMessage()); } } }