Merge changes Ica887126,Ic5947f83
* changes:
Return 409 Conflict on submit type rule error
Add missing space to exception message for Prolog rule error
diff --git a/java/com/google/gerrit/common/data/SubmitTypeRecord.java b/java/com/google/gerrit/common/data/SubmitTypeRecord.java
index d16da96..afb3bac 100644
--- a/java/com/google/gerrit/common/data/SubmitTypeRecord.java
+++ b/java/com/google/gerrit/common/data/SubmitTypeRecord.java
@@ -65,7 +65,7 @@
StringBuilder sb = new StringBuilder();
sb.append(status);
if (status == Status.RULE_ERROR && errorMessage != null) {
- sb.append('(').append(errorMessage).append(")");
+ sb.append(" (").append(errorMessage).append(")");
}
if (type != null) {
sb.append('[');
diff --git a/java/com/google/gerrit/server/restapi/change/Mergeable.java b/java/com/google/gerrit/server/restapi/change/Mergeable.java
index 9b17ed6..cce8923 100644
--- a/java/com/google/gerrit/server/restapi/change/Mergeable.java
+++ b/java/com/google/gerrit/server/restapi/change/Mergeable.java
@@ -17,7 +17,6 @@
import com.google.gerrit.common.data.SubmitTypeRecord;
import com.google.gerrit.entities.Change;
import com.google.gerrit.entities.PatchSet;
-import com.google.gerrit.exceptions.StorageException;
import com.google.gerrit.extensions.client.SubmitType;
import com.google.gerrit.extensions.common.MergeableInfo;
import com.google.gerrit.extensions.restapi.AuthException;
@@ -133,10 +132,10 @@
return Response.ok(result);
}
- private SubmitType getSubmitType(ChangeData cd) {
+ private SubmitType getSubmitType(ChangeData cd) throws ResourceConflictException {
SubmitTypeRecord rec = submitRuleEvaluator.getSubmitType(cd);
if (rec.status != SubmitTypeRecord.Status.OK) {
- throw new StorageException("Submit type rule failed: " + rec);
+ throw new ResourceConflictException("submit type rule error: " + rec.errorMessage);
}
return rec.type;
}