Align ElasticIndexModule with LuceneIndexModule
Align them by introducing nested MultiVersionModule in Elastic one. This
will make it easier to refactor them to remove duplication.
Change-Id: I4c76828bc41a954f4a78eb6a8a8325f9e2817fa3
diff --git a/gerrit-elasticsearch/src/main/java/com/google/gerrit/elasticsearch/ElasticIndexModule.java b/gerrit-elasticsearch/src/main/java/com/google/gerrit/elasticsearch/ElasticIndexModule.java
index d7f7df6..9573fd5 100644
--- a/gerrit-elasticsearch/src/main/java/com/google/gerrit/elasticsearch/ElasticIndexModule.java
+++ b/gerrit-elasticsearch/src/main/java/com/google/gerrit/elasticsearch/ElasticIndexModule.java
@@ -64,8 +64,7 @@
install(new IndexModule(threads));
if (singleVersions == null) {
- bind(AbstractVersionManager.class).to(ElasticVersionManager.class);
- listener().to(ElasticVersionManager.class);
+ install(new MultiVersionModule());
} else {
install(new SingleVersionModule(singleVersions));
}
@@ -76,4 +75,12 @@
IndexConfig getIndexConfig(@GerritServerConfig Config cfg) {
return IndexConfig.fromConfig(cfg);
}
+
+ private static class MultiVersionModule extends LifecycleModule {
+ @Override
+ public void configure() {
+ bind(AbstractVersionManager.class).to(ElasticVersionManager.class);
+ listener().to(ElasticVersionManager.class);
+ }
+ }
}