Implement receiver class structure and bindings

This commit implements the basic class structure for receiving emails,
all required config parameters, all necessary bindings depending on
which protocol the administrator has configured and updates the
documentation accordingly.

It also adds test-only dependencies to Greenmail and javax.mail. These
will be used to create integration tests.

It's the first change in a topic of changes to implement email ingestion
for Gerrit.

Change-Id: I0edec7ca2655fcd70284bb75ca8eb94ce2491d7a
This commit is contained in:
Patrick Hiesel
2016-10-21 16:43:13 +02:00
parent fd0a87d5e6
commit 328b761528
21 changed files with 517 additions and 8 deletions

View File

@@ -53,6 +53,7 @@ import com.google.gerrit.server.git.WorkQueue;
import com.google.gerrit.server.index.IndexModule;
import com.google.gerrit.server.index.IndexModule.IndexType;
import com.google.gerrit.server.mail.SignedTokenEmailTokenVerifier;
import com.google.gerrit.server.mail.receive.MailReceiver;
import com.google.gerrit.server.mail.send.SmtpEmailSender;
import com.google.gerrit.server.mime.MimeUtil2Module;
import com.google.gerrit.server.notedb.ConfigNotesMigration;
@@ -310,6 +311,7 @@ public class WebAppInitializer extends GuiceServletContextListener
modules.add(new SearchingChangeCacheImpl.Module());
modules.add(new InternalAccountDirectory.Module());
modules.add(new DefaultCacheFactory.Module());
modules.add(cfgInjector.getInstance(MailReceiver.Module.class));
modules.add(new SmtpEmailSender.Module());
modules.add(new SignedTokenEmailTokenVerifier.Module());
modules.add(new PluginRestApiModule());