SSH: Don't use singletons with providers
Change-Id: Id2c9b488950a9dd21dff92a960161f00b607695e
This commit is contained in:
@@ -42,7 +42,6 @@ import com.google.gerrit.util.cli.CmdLineParser;
|
||||
import com.google.gson.JsonSyntaxException;
|
||||
import com.google.gwtorm.server.OrmException;
|
||||
import com.google.inject.Inject;
|
||||
import com.google.inject.Provider;
|
||||
|
||||
import org.kohsuke.args4j.Argument;
|
||||
import org.kohsuke.args4j.Option;
|
||||
@@ -141,7 +140,7 @@ public class ReviewCommand extends SshCommand {
|
||||
private AllProjectsName allProjects;
|
||||
|
||||
@Inject
|
||||
private Provider<GerritApi> gApi;
|
||||
private GerritApi gApi;
|
||||
|
||||
@Inject
|
||||
private PatchSetParser psParser;
|
||||
@@ -251,7 +250,7 @@ public class ReviewCommand extends SshCommand {
|
||||
|
||||
private void applyReview(PatchSet patchSet,
|
||||
final ReviewInput review) throws RestApiException {
|
||||
gApi.get().changes()
|
||||
gApi.changes()
|
||||
.id(patchSet.getId().getParentKey().get())
|
||||
.revision(patchSet.getRevision().get())
|
||||
.review(review);
|
||||
@@ -326,7 +325,7 @@ public class ReviewCommand extends SshCommand {
|
||||
}
|
||||
|
||||
private ChangeApi changeApi(PatchSet patchSet) throws RestApiException {
|
||||
return gApi.get().changes().id(patchSet.getId().getParentKey().get());
|
||||
return gApi.changes().id(patchSet.getId().getParentKey().get());
|
||||
}
|
||||
|
||||
private RevisionApi revisionApi(PatchSet patchSet) throws RestApiException {
|
||||
|
@@ -34,7 +34,6 @@ import com.google.gerrit.server.group.GroupsCollection;
|
||||
import com.google.gerrit.sshd.CommandMetaData;
|
||||
import com.google.gerrit.sshd.SshCommand;
|
||||
import com.google.inject.Inject;
|
||||
import com.google.inject.Provider;
|
||||
|
||||
import org.kohsuke.args4j.Argument;
|
||||
import org.kohsuke.args4j.Option;
|
||||
@@ -62,16 +61,16 @@ public class SetMembersCommand extends SshCommand {
|
||||
private List<AccountGroup.UUID> groups = Lists.newArrayList();
|
||||
|
||||
@Inject
|
||||
private Provider<AddMembers> addMembers;
|
||||
private AddMembers addMembers;
|
||||
|
||||
@Inject
|
||||
private Provider<DeleteMembers> deleteMembers;
|
||||
private DeleteMembers deleteMembers;
|
||||
|
||||
@Inject
|
||||
private Provider<AddIncludedGroups> addIncludedGroups;
|
||||
private AddIncludedGroups addIncludedGroups;
|
||||
|
||||
@Inject
|
||||
private Provider<DeleteIncludedGroups> deleteIncludedGroups;
|
||||
private DeleteIncludedGroups deleteIncludedGroups;
|
||||
|
||||
@Inject
|
||||
private GroupsCollection groupsCollection;
|
||||
@@ -89,19 +88,19 @@ public class SetMembersCommand extends SshCommand {
|
||||
groupsCollection.parse(TopLevelResource.INSTANCE,
|
||||
IdString.fromUrl(groupUuid.get()));
|
||||
if (!accountsToRemove.isEmpty()) {
|
||||
deleteMembers.get().apply(resource, fromMembers(accountsToRemove));
|
||||
deleteMembers.apply(resource, fromMembers(accountsToRemove));
|
||||
reportMembersAction("removed from", resource, accountsToRemove);
|
||||
}
|
||||
if (!groupsToRemove.isEmpty()) {
|
||||
deleteIncludedGroups.get().apply(resource, fromGroups(groupsToRemove));
|
||||
deleteIncludedGroups.apply(resource, fromGroups(groupsToRemove));
|
||||
reportGroupsAction("excluded from", resource, groupsToRemove);
|
||||
}
|
||||
if (!accountsToAdd.isEmpty()) {
|
||||
addMembers.get().apply(resource, fromMembers(accountsToAdd));
|
||||
addMembers.apply(resource, fromMembers(accountsToAdd));
|
||||
reportMembersAction("added to", resource, accountsToAdd);
|
||||
}
|
||||
if (!groupsToInclude.isEmpty()) {
|
||||
addIncludedGroups.get().apply(resource, fromGroups(groupsToInclude));
|
||||
addIncludedGroups.apply(resource, fromGroups(groupsToInclude));
|
||||
reportGroupsAction("included to", resource, groupsToInclude);
|
||||
}
|
||||
}
|
||||
|
@@ -82,10 +82,10 @@ public class SetReviewersCommand extends SshCommand {
|
||||
private ReviewerResource.Factory reviewerFactory;
|
||||
|
||||
@Inject
|
||||
private Provider<PostReviewers> postReviewersProvider;
|
||||
private PostReviewers postReviewers;
|
||||
|
||||
@Inject
|
||||
private Provider<DeleteReviewer> deleteReviewerProvider;
|
||||
private DeleteReviewer deleteReviewer;
|
||||
|
||||
@Inject
|
||||
private Provider<CurrentUser> userProvider;
|
||||
@@ -123,12 +123,11 @@ public class SetReviewersCommand extends SshCommand {
|
||||
|
||||
// Remove reviewers
|
||||
//
|
||||
DeleteReviewer delete = deleteReviewerProvider.get();
|
||||
for (Account.Id reviewer : toRemove) {
|
||||
ReviewerResource rsrc = reviewerFactory.create(changeRsrc, reviewer);
|
||||
String error = null;
|
||||
try {
|
||||
delete.apply(rsrc, new DeleteReviewer.Input());
|
||||
deleteReviewer.apply(rsrc, new DeleteReviewer.Input());
|
||||
} catch (ResourceNotFoundException e) {
|
||||
error = String.format("could not remove %s: not found", reviewer);
|
||||
} catch (Exception e) {
|
||||
@@ -143,14 +142,13 @@ public class SetReviewersCommand extends SshCommand {
|
||||
|
||||
// Add reviewers
|
||||
//
|
||||
PostReviewers post = postReviewersProvider.get();
|
||||
for (String reviewer : toAdd) {
|
||||
AddReviewerInput input = new AddReviewerInput();
|
||||
input.reviewer = reviewer;
|
||||
input.confirmed = true;
|
||||
String error;
|
||||
try {
|
||||
error = post.apply(changeRsrc, input).error;
|
||||
error = postReviewers.apply(changeRsrc, input).error;
|
||||
} catch (Exception e) {
|
||||
error = String.format("could not add %s: %s", reviewer, e.getMessage());
|
||||
}
|
||||
|
Reference in New Issue
Block a user