DefaultUrlFormatter: add Module

Install this module alongside CanonicalWebUrlModule.

Change-Id: I3f6f201ee501996e1aa7561a210a58eafa02b9c9
This commit is contained in:
Han-Wen Nienhuys
2018-10-01 17:47:59 +02:00
parent a09732a191
commit ed9c8f3376
7 changed files with 18 additions and 5 deletions

View File

@@ -55,6 +55,7 @@ import com.google.gerrit.server.change.ChangeCleanupRunner;
import com.google.gerrit.server.config.AuthConfig;
import com.google.gerrit.server.config.AuthConfigModule;
import com.google.gerrit.server.config.CanonicalWebUrlModule;
import com.google.gerrit.server.config.DefaultUrlFormatter;
import com.google.gerrit.server.config.DownloadConfig;
import com.google.gerrit.server.config.GerritGlobalModule;
import com.google.gerrit.server.config.GerritInstanceNameModule;
@@ -376,6 +377,8 @@ public class WebAppInitializer extends GuiceServletContextListener implements Fi
return HttpCanonicalWebUrlProvider.class;
}
});
modules.add(new DefaultUrlFormatter.Module());
modules.add(SshKeyCacheImpl.module());
modules.add(
new AbstractModule() {

View File

@@ -65,6 +65,7 @@ import com.google.gerrit.server.config.AuthConfig;
import com.google.gerrit.server.config.AuthConfigModule;
import com.google.gerrit.server.config.CanonicalWebUrlModule;
import com.google.gerrit.server.config.CanonicalWebUrlProvider;
import com.google.gerrit.server.config.DefaultUrlFormatter;
import com.google.gerrit.server.config.DownloadConfig;
import com.google.gerrit.server.config.GerritGlobalModule;
import com.google.gerrit.server.config.GerritInstanceNameModule;
@@ -459,6 +460,7 @@ public class Daemon extends SiteProgram {
}
});
}
modules.add(new DefaultUrlFormatter.Module());
if (sshd) {
modules.add(SshKeyCacheImpl.module());
} else {

View File

@@ -54,7 +54,6 @@ import com.google.gerrit.server.config.GerritServerConfig;
import com.google.gerrit.server.config.GitReceivePackGroups;
import com.google.gerrit.server.config.GitUploadPackGroups;
import com.google.gerrit.server.config.SysExecutorModule;
import com.google.gerrit.server.config.UrlFormatter;
import com.google.gerrit.server.extensions.events.EventUtil;
import com.google.gerrit.server.extensions.events.GitReferenceUpdated;
import com.google.gerrit.server.extensions.events.RevisionCreated;
@@ -114,6 +113,7 @@ public class BatchProgramModule extends FactoryModule {
install(new SysExecutorModule());
install(BatchUpdate.module());
install(PatchListCacheImpl.module());
install(new DefaultUrlFormatter.Module());
// There is the concept of LifecycleModule, in Gerrit's own extension to Guice, which has these:
// listener().to(SomeClassImplementingLifecycleListener.class);
@@ -140,7 +140,6 @@ public class BatchProgramModule extends FactoryModule {
bind(String.class)
.annotatedWith(CanonicalWebUrl.class)
.toProvider(CanonicalWebUrlProvider.class);
bind(UrlFormatter.class).to(DefaultUrlFormatter.class);
bind(Boolean.class)
.annotatedWith(DisableReverseDnsLookup.class)
.toProvider(DisableReverseDnsLookupProvider.class)

View File

@@ -30,7 +30,6 @@ public abstract class CanonicalWebUrlModule extends AbstractModule {
//
final Class<? extends Provider<String>> provider = provider();
bind(String.class).annotatedWith(CanonicalWebUrl.class).toProvider(provider);
bind(UrlFormatter.class).to(DefaultUrlFormatter.class);
}
protected abstract Class<? extends Provider<String>> provider();

View File

@@ -14,6 +14,7 @@
package com.google.gerrit.server.config;
import com.google.inject.AbstractModule;
import java.util.Optional;
import javax.inject.Inject;
import javax.inject.Provider;
@@ -23,6 +24,13 @@ import javax.inject.Singleton;
public class DefaultUrlFormatter implements UrlFormatter {
private final Provider<String> canonicalWebUrlProvider;
public static class Module extends AbstractModule {
@Override
protected void configure() {
bind(UrlFormatter.class).to(DefaultUrlFormatter.class);
}
}
@Inject
DefaultUrlFormatter(@CanonicalWebUrl Provider<String> canonicalWebUrlProvider) {
this.canonicalWebUrlProvider = canonicalWebUrlProvider;

View File

@@ -47,6 +47,7 @@ import com.google.gerrit.server.config.AnonymousCowardNameProvider;
import com.google.gerrit.server.config.CanonicalWebUrlModule;
import com.google.gerrit.server.config.CanonicalWebUrlProvider;
import com.google.gerrit.server.config.ChangeUpdateExecutor;
import com.google.gerrit.server.config.DefaultUrlFormatter;
import com.google.gerrit.server.config.GerritGlobalModule;
import com.google.gerrit.server.config.GerritInstanceNameModule;
import com.google.gerrit.server.config.GerritOptions;
@@ -223,6 +224,7 @@ public class InMemoryModule extends FactoryModule {
return CanonicalWebUrlProvider.class;
}
});
install(new DefaultUrlFormatter.Module());
// Replacement of DiffExecutorModule to not use thread pool in the tests
install(
new AbstractModule() {

View File

@@ -46,7 +46,6 @@ import com.google.gerrit.server.config.DefaultUrlFormatter;
import com.google.gerrit.server.config.DisableReverseDnsLookup;
import com.google.gerrit.server.config.GerritServerConfig;
import com.google.gerrit.server.config.GerritServerId;
import com.google.gerrit.server.config.UrlFormatter;
import com.google.gerrit.server.extensions.events.GitReferenceUpdated;
import com.google.gerrit.server.git.GitModule;
import com.google.gerrit.server.git.GitRepositoryManager;
@@ -136,6 +135,8 @@ public abstract class AbstractChangeNotesTest extends GerritBaseTests {
@Override
public void configure() {
install(new GitModule());
install(new DefaultUrlFormatter.Module());
install(NoteDbModule.forTest(testConfig));
bind(AllUsersName.class).toProvider(AllUsersNameProvider.class);
bind(String.class).annotatedWith(GerritServerId.class).toInstance("gerrit");
@@ -164,7 +165,6 @@ public abstract class AbstractChangeNotesTest extends GerritBaseTests {
migration.setFrom(NotesMigrationState.FINAL);
bind(MutableNotesMigration.class).toInstance(migration);
bind(NotesMigration.class).to(MutableNotesMigration.class);
bind(UrlFormatter.class).to(DefaultUrlFormatter.class);
// Tests don't support ReviewDb at all, but bindings are required via NoteDbModule.
bind(new TypeLiteral<SchemaFactory<ReviewDb>>() {})