RegisterNewEmailSender is managed by Guice through AssistedInject.

Created inner factory interface for RegisterNewEmailSender class which
is created by Guice using technique described here:
http://code.google.com/p/google-guice/wiki/AssistedInject

In order to use that additional dependency has been added to pom.xml.
diff --git a/pom.xml b/pom.xml
index 372b4f0..c27a3b3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -547,6 +547,11 @@
       <version>2.0</version>
     </dependency>
     <dependency>
+      <groupId>com.google.code.guice</groupId>
+      <artifactId>guice-assistedinject</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
       <!-- required by Guice (whose POM is fake and lacks it) -->
       <groupId>aopalliance</groupId>
       <artifactId>aopalliance</artifactId>
diff --git a/src/main/java/com/google/gerrit/server/AccountSecurityImpl.java b/src/main/java/com/google/gerrit/server/AccountSecurityImpl.java
index 098d89b..cf9d685 100644
--- a/src/main/java/com/google/gerrit/server/AccountSecurityImpl.java
+++ b/src/main/java/com/google/gerrit/server/AccountSecurityImpl.java
@@ -30,7 +30,6 @@
 import com.google.gerrit.client.rpc.NoSuchEntityException;
 import com.google.gerrit.server.mail.EmailException;
 import com.google.gerrit.server.mail.RegisterNewEmailSender;
-import com.google.gerrit.server.mail.EmailSender;
 import com.google.gerrit.server.ssh.SshUtil;
 import com.google.gwt.user.client.rpc.AsyncCallback;
 import com.google.gwtjsonrpc.client.VoidResult;
@@ -65,15 +64,15 @@
   private final Logger log = LoggerFactory.getLogger(getClass());
   private final GerritServer server;
   private final ContactStore contactStore;
-  private final EmailSender emailSender;
+  private final RegisterNewEmailSender.Factory registerNewEmailFactory;
 
   @Inject
   AccountSecurityImpl(final SchemaFactory<ReviewDb> sf, final GerritServer gs,
-      final ContactStore cs, final EmailSender es) {
+      final ContactStore cs, final RegisterNewEmailSender.Factory esf) {
     super(sf);
     server = gs;
     contactStore = cs;
-    emailSender = es;
+    registerNewEmailFactory = esf;
   }
 
   public void mySshKeys(final AsyncCallback<List<AccountSshKey>> callback) {
@@ -289,7 +288,7 @@
         GerritJsonServlet.getCurrentCall().getHttpServletRequest();
     try {
       final RegisterNewEmailSender sender;
-      sender = new RegisterNewEmailSender(server, emailSender, address, req);
+      sender = registerNewEmailFactory.create(address);
       sender.send();
       cb.onSuccess(VoidResult.INSTANCE);
     } catch (EmailException e) {
diff --git a/src/main/java/com/google/gerrit/server/GerritServerModule.java b/src/main/java/com/google/gerrit/server/GerritServerModule.java
index d851bce..e737a71b 100644
--- a/src/main/java/com/google/gerrit/server/GerritServerModule.java
+++ b/src/main/java/com/google/gerrit/server/GerritServerModule.java
@@ -29,12 +29,14 @@
 import com.google.gerrit.server.config.SitePath;
 import com.google.gerrit.server.config.SitePathProvider;
 import com.google.gerrit.server.mail.EmailSender;
+import com.google.gerrit.server.mail.RegisterNewEmailSender;
 import com.google.gerrit.server.mail.SmtpEmailSender;
 import com.google.gwtorm.client.SchemaFactory;
 import com.google.gwtorm.jdbc.Database;
 import com.google.inject.AbstractModule;
 import com.google.inject.Key;
 import com.google.inject.TypeLiteral;
+import com.google.inject.assistedinject.FactoryProvider;
 import com.google.inject.name.Names;
 
 import org.spearce.jgit.lib.Config;
@@ -72,5 +74,9 @@
     bind(GerritConfig.class).toProvider(GerritConfigProvider.class).in(
         SINGLETON);
     bind(PatchSetInfoFactory.class);
+
+    bind(RegisterNewEmailSender.Factory.class).toProvider(
+        FactoryProvider.newFactory(RegisterNewEmailSender.Factory.class,
+            RegisterNewEmailSender.class));
   }
 }
diff --git a/src/main/java/com/google/gerrit/server/mail/RegisterNewEmailSender.java b/src/main/java/com/google/gerrit/server/mail/RegisterNewEmailSender.java
index 9c39978..d6c8e87 100644
--- a/src/main/java/com/google/gerrit/server/mail/RegisterNewEmailSender.java
+++ b/src/main/java/com/google/gerrit/server/mail/RegisterNewEmailSender.java
@@ -16,6 +16,8 @@
 
 import com.google.gerrit.server.GerritServer;
 import com.google.gwtjsonrpc.server.XsrfException;
+import com.google.inject.Inject;
+import com.google.inject.assistedinject.Assisted;
 
 import org.spearce.jgit.util.Base64;
 
@@ -24,11 +26,17 @@
 import javax.servlet.http.HttpServletRequest;
 
 public class RegisterNewEmailSender extends OutgoingEmail {
+
+  public static interface Factory {
+    public RegisterNewEmailSender create(String address);
+  }
+
   private final HttpServletRequest req;
   private final String addr;
 
+  @Inject
   public RegisterNewEmailSender(final GerritServer gs, final EmailSender sf,
-      final String address, final HttpServletRequest request) {
+      @Assisted final String address, final HttpServletRequest request) {
     super(gs, sf, null, "registernewemail");
     addr = address;
     req = request;