Merge "Remove unnecessary handling of NoSuchChangeException in PostReviewers"

This commit is contained in:
Shawn Pearce
2013-03-13 04:33:25 +00:00
committed by Gerrit Code Review

View File

@@ -48,7 +48,6 @@ import com.google.gerrit.server.config.GerritServerConfig;
import com.google.gerrit.server.group.GroupsCollection; import com.google.gerrit.server.group.GroupsCollection;
import com.google.gerrit.server.mail.AddReviewerSender; import com.google.gerrit.server.mail.AddReviewerSender;
import com.google.gerrit.server.project.ChangeControl; import com.google.gerrit.server.project.ChangeControl;
import com.google.gerrit.server.project.NoSuchChangeException;
import com.google.gerrit.server.project.NoSuchProjectException; import com.google.gerrit.server.project.NoSuchProjectException;
import com.google.gwtorm.server.OrmException; import com.google.gwtorm.server.OrmException;
import com.google.inject.Inject; import com.google.inject.Inject;
@@ -125,19 +124,15 @@ public class PostReviewers implements RestModifyView<ChangeResource, Input> {
throw new BadRequestException("missing reviewer field"); throw new BadRequestException("missing reviewer field");
} }
Account.Id accountId = parser.parse(rsrc, input.reviewer); Account.Id accountId = parser.parse(rsrc, input.reviewer);
try {
if (accountId != null) { if (accountId != null) {
return putAccount(reviewerFactory.create(rsrc, accountId)); return putAccount(reviewerFactory.create(rsrc, accountId));
} else { } else {
return putGroup(rsrc, input); return putGroup(rsrc, input);
} }
} catch (NoSuchChangeException e) {
throw new ResourceNotFoundException(e.getMessage());
}
} }
private PostResult putAccount(ReviewerResource rsrc) throws OrmException, private PostResult putAccount(ReviewerResource rsrc) throws OrmException,
EmailException, NoSuchChangeException { EmailException {
PostResult result = new PostResult(); PostResult result = new PostResult();
addReviewers(rsrc, result, ImmutableSet.of(rsrc.getUser())); addReviewers(rsrc, result, ImmutableSet.of(rsrc.getUser()));
return result; return result;
@@ -145,8 +140,7 @@ public class PostReviewers implements RestModifyView<ChangeResource, Input> {
private PostResult putGroup(ChangeResource rsrc, Input input) private PostResult putGroup(ChangeResource rsrc, Input input)
throws ResourceNotFoundException, AuthException, BadRequestException, throws ResourceNotFoundException, AuthException, BadRequestException,
UnprocessableEntityException, OrmException, NoSuchChangeException, UnprocessableEntityException, OrmException, EmailException {
EmailException {
GroupDescription.Basic group = groupsCollection.get().parseInternal(input.reviewer); GroupDescription.Basic group = groupsCollection.get().parseInternal(input.reviewer);
PostResult result = new PostResult(); PostResult result = new PostResult();
if (!isLegalReviewerGroup(group.getGroupUUID())) { if (!isLegalReviewerGroup(group.getGroupUUID())) {
@@ -206,8 +200,7 @@ public class PostReviewers implements RestModifyView<ChangeResource, Input> {
} }
private void addReviewers(ChangeResource rsrc, PostResult result, private void addReviewers(ChangeResource rsrc, PostResult result,
Set<IdentifiedUser> reviewers) throws OrmException, EmailException, Set<IdentifiedUser> reviewers) throws OrmException, EmailException {
NoSuchChangeException {
if (reviewers.isEmpty()) { if (reviewers.isEmpty()) {
result.reviewers = ImmutableList.of(); result.reviewers = ImmutableList.of();
return; return;