Merge change 10858
* changes: AddReviewerSender class is managed by Guice through AssistedInject.
This commit is contained in:
@@ -28,6 +28,7 @@ import com.google.gerrit.server.config.GerritServerConfig;
|
|||||||
import com.google.gerrit.server.config.GerritServerConfigProvider;
|
import com.google.gerrit.server.config.GerritServerConfigProvider;
|
||||||
import com.google.gerrit.server.config.SitePath;
|
import com.google.gerrit.server.config.SitePath;
|
||||||
import com.google.gerrit.server.config.SitePathProvider;
|
import com.google.gerrit.server.config.SitePathProvider;
|
||||||
|
import com.google.gerrit.server.mail.AddReviewerSender;
|
||||||
import com.google.gerrit.server.mail.EmailSender;
|
import com.google.gerrit.server.mail.EmailSender;
|
||||||
import com.google.gerrit.server.mail.RegisterNewEmailSender;
|
import com.google.gerrit.server.mail.RegisterNewEmailSender;
|
||||||
import com.google.gerrit.server.mail.SmtpEmailSender;
|
import com.google.gerrit.server.mail.SmtpEmailSender;
|
||||||
@@ -78,5 +79,8 @@ public class GerritServerModule extends AbstractModule {
|
|||||||
bind(RegisterNewEmailSender.Factory.class).toProvider(
|
bind(RegisterNewEmailSender.Factory.class).toProvider(
|
||||||
FactoryProvider.newFactory(RegisterNewEmailSender.Factory.class,
|
FactoryProvider.newFactory(RegisterNewEmailSender.Factory.class,
|
||||||
RegisterNewEmailSender.class));
|
RegisterNewEmailSender.class));
|
||||||
|
bind(AddReviewerSender.Factory.class).toProvider(
|
||||||
|
FactoryProvider.newFactory(AddReviewerSender.Factory.class,
|
||||||
|
AddReviewerSender.class));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,10 +16,18 @@ package com.google.gerrit.server.mail;
|
|||||||
|
|
||||||
import com.google.gerrit.client.reviewdb.Change;
|
import com.google.gerrit.client.reviewdb.Change;
|
||||||
import com.google.gerrit.server.GerritServer;
|
import com.google.gerrit.server.GerritServer;
|
||||||
|
import com.google.inject.Inject;
|
||||||
|
import com.google.inject.assistedinject.Assisted;
|
||||||
|
|
||||||
/** Asks a user to review a change. */
|
/** Asks a user to review a change. */
|
||||||
public class AddReviewerSender extends NewChangeSender {
|
public class AddReviewerSender extends NewChangeSender {
|
||||||
public AddReviewerSender(GerritServer gs, EmailSender sf, Change c) {
|
|
||||||
|
public static interface Factory {
|
||||||
|
AddReviewerSender create(Change change);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
public AddReviewerSender(GerritServer gs, EmailSender sf, @Assisted Change c) {
|
||||||
super(gs, sf, c);
|
super(gs, sf, c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -72,14 +72,17 @@ public class PatchDetailServiceImpl extends BaseServiceImplementation implements
|
|||||||
private final GerritServer server;
|
private final GerritServer server;
|
||||||
private final FileTypeRegistry registry;
|
private final FileTypeRegistry registry;
|
||||||
private final EmailSender emailSender;
|
private final EmailSender emailSender;
|
||||||
|
private final AddReviewerSender.Factory addReviewerSenderFactory;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
PatchDetailServiceImpl(final SchemaFactory<ReviewDb> sf,
|
PatchDetailServiceImpl(final SchemaFactory<ReviewDb> sf,
|
||||||
final GerritServer gs, final FileTypeRegistry ftr, final EmailSender es) {
|
final GerritServer gs, final FileTypeRegistry ftr, final EmailSender es,
|
||||||
|
final AddReviewerSender.Factory arsf) {
|
||||||
super(sf);
|
super(sf);
|
||||||
server = gs;
|
server = gs;
|
||||||
registry = ftr;
|
registry = ftr;
|
||||||
emailSender = es;
|
emailSender = es;
|
||||||
|
addReviewerSenderFactory = arsf;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void patchScript(final Patch.Key patchKey, final PatchSet.Id psa,
|
public void patchScript(final Patch.Key patchKey, final PatchSet.Id psa,
|
||||||
@@ -362,7 +365,7 @@ public class PatchDetailServiceImpl extends BaseServiceImplementation implements
|
|||||||
// Email the reviewer
|
// Email the reviewer
|
||||||
try {
|
try {
|
||||||
final AddReviewerSender cm;
|
final AddReviewerSender cm;
|
||||||
cm = new AddReviewerSender(server, emailSender, change);
|
cm = addReviewerSenderFactory.create(change);
|
||||||
cm.setFrom(Common.getAccountId());
|
cm.setFrom(Common.getAccountId());
|
||||||
cm.setReviewDb(db);
|
cm.setReviewDb(db);
|
||||||
cm.addReviewers(reviewerIds);
|
cm.addReviewers(reviewerIds);
|
||||||
|
|||||||
Reference in New Issue
Block a user