CreateChangeSender class is managed by Guice through AssistedInject.
Signed-off-by: Grzegorz Kossakowski <grek@google.com>
This commit is contained in:
@@ -29,6 +29,7 @@ import com.google.gerrit.server.config.GerritServerConfigProvider;
|
||||
import com.google.gerrit.server.config.SitePath;
|
||||
import com.google.gerrit.server.config.SitePathProvider;
|
||||
import com.google.gerrit.server.mail.AddReviewerSender;
|
||||
import com.google.gerrit.server.mail.CreateChangeSender;
|
||||
import com.google.gerrit.server.mail.EmailSender;
|
||||
import com.google.gerrit.server.mail.RegisterNewEmailSender;
|
||||
import com.google.gerrit.server.mail.SmtpEmailSender;
|
||||
@@ -82,5 +83,8 @@ public class GerritServerModule extends AbstractModule {
|
||||
bind(AddReviewerSender.Factory.class).toProvider(
|
||||
FactoryProvider.newFactory(AddReviewerSender.Factory.class,
|
||||
AddReviewerSender.class));
|
||||
bind(CreateChangeSender.Factory.class).toProvider(
|
||||
FactoryProvider.newFactory(CreateChangeSender.Factory.class,
|
||||
CreateChangeSender.class));
|
||||
}
|
||||
}
|
||||
|
@@ -22,13 +22,21 @@ import com.google.gerrit.client.reviewdb.Change;
|
||||
import com.google.gerrit.client.reviewdb.Project;
|
||||
import com.google.gerrit.server.GerritServer;
|
||||
import com.google.gwtorm.client.OrmException;
|
||||
import com.google.inject.Inject;
|
||||
import com.google.inject.assistedinject.Assisted;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
/** Notify interested parties of a brand new change. */
|
||||
public class CreateChangeSender extends NewChangeSender {
|
||||
public CreateChangeSender(GerritServer gs, EmailSender sf, Change c) {
|
||||
|
||||
public static interface Factory {
|
||||
public CreateChangeSender create(Change change);
|
||||
}
|
||||
|
||||
@Inject
|
||||
public CreateChangeSender(GerritServer gs, EmailSender sf, @Assisted Change c) {
|
||||
super(gs, sf, c);
|
||||
}
|
||||
|
||||
|
@@ -132,6 +132,9 @@ class Receive extends AbstractGitCommand {
|
||||
@Inject
|
||||
private EmailSender emailSender;
|
||||
|
||||
@Inject
|
||||
private CreateChangeSender.Factory createChangeSenderFactory;
|
||||
|
||||
@Inject
|
||||
private ReplicationQueue replication;
|
||||
|
||||
@@ -769,7 +772,7 @@ class Receive extends AbstractGitCommand {
|
||||
|
||||
try {
|
||||
final CreateChangeSender cm;
|
||||
cm = new CreateChangeSender(server, emailSender, change);
|
||||
cm = createChangeSenderFactory.create(change);
|
||||
cm.setFrom(me);
|
||||
cm.setPatchSet(ps, imp.getPatchSetInfo());
|
||||
cm.setReviewDb(db);
|
||||
|
Reference in New Issue
Block a user