Extract interfaces for Index and IndexCollection
Add another type argument for the key type, e.g. Change.Id. Keep subinterfaces ChangeIndex and ChangeIndexCollection to avoid having to pass around lots of type arguments; Schema<ChangeData> was bad enough, adding one more would be tortuous. Change-Id: Id54b985692ca41ffcaabe9793d8b9035cb1d4e82
This commit is contained in:
@@ -45,6 +45,7 @@ import com.google.gerrit.server.index.FieldDef;
|
||||
import com.google.gerrit.server.index.FieldDef.FillArgs;
|
||||
import com.google.gerrit.server.index.FieldType;
|
||||
import com.google.gerrit.server.index.IndexExecutor;
|
||||
import com.google.gerrit.server.index.QueryOptions;
|
||||
import com.google.gerrit.server.index.Schema;
|
||||
import com.google.gerrit.server.index.Schema.Values;
|
||||
import com.google.gerrit.server.index.change.ChangeField;
|
||||
@@ -57,7 +58,6 @@ import com.google.gerrit.server.query.Predicate;
|
||||
import com.google.gerrit.server.query.QueryParseException;
|
||||
import com.google.gerrit.server.query.change.ChangeData;
|
||||
import com.google.gerrit.server.query.change.ChangeDataSource;
|
||||
import com.google.gerrit.server.query.change.QueryOptions;
|
||||
import com.google.gwtorm.protobuf.ProtobufCodec;
|
||||
import com.google.gwtorm.server.OrmException;
|
||||
import com.google.gwtorm.server.ResultSet;
|
||||
|
@@ -17,10 +17,10 @@ package com.google.gerrit.lucene;
|
||||
import com.google.gerrit.extensions.events.LifecycleListener;
|
||||
import com.google.gerrit.lifecycle.LifecycleModule;
|
||||
import com.google.gerrit.server.config.GerritServerConfig;
|
||||
import com.google.gerrit.server.index.IndexCollection;
|
||||
import com.google.gerrit.server.index.IndexConfig;
|
||||
import com.google.gerrit.server.index.IndexModule;
|
||||
import com.google.gerrit.server.index.Schema;
|
||||
import com.google.gerrit.server.index.change.ChangeIndexCollection;
|
||||
import com.google.gerrit.server.index.change.ChangeSchemas;
|
||||
import com.google.gerrit.server.query.change.ChangeData;
|
||||
import com.google.inject.Inject;
|
||||
@@ -88,11 +88,11 @@ public class LuceneIndexModule extends LifecycleModule {
|
||||
|
||||
@Singleton
|
||||
static class SingleVersionListener implements LifecycleListener {
|
||||
private final IndexCollection indexes;
|
||||
private final ChangeIndexCollection indexes;
|
||||
private final LuceneChangeIndex index;
|
||||
|
||||
@Inject
|
||||
SingleVersionListener(IndexCollection indexes,
|
||||
SingleVersionListener(ChangeIndexCollection indexes,
|
||||
LuceneChangeIndex index) {
|
||||
this.indexes = indexes;
|
||||
this.index = index;
|
||||
|
@@ -22,8 +22,8 @@ import com.google.common.primitives.Ints;
|
||||
import com.google.gerrit.extensions.events.LifecycleListener;
|
||||
import com.google.gerrit.server.config.GerritServerConfig;
|
||||
import com.google.gerrit.server.config.SitePaths;
|
||||
import com.google.gerrit.server.index.IndexCollection;
|
||||
import com.google.gerrit.server.index.Schema;
|
||||
import com.google.gerrit.server.index.change.ChangeIndexCollection;
|
||||
import com.google.gerrit.server.index.change.ChangeSchemas;
|
||||
import com.google.gerrit.server.query.change.ChangeData;
|
||||
import com.google.inject.Inject;
|
||||
@@ -92,7 +92,7 @@ public class LuceneVersionManager implements LifecycleListener {
|
||||
|
||||
private final SitePaths sitePaths;
|
||||
private final LuceneChangeIndex.Factory indexFactory;
|
||||
private final IndexCollection indexes;
|
||||
private final ChangeIndexCollection indexes;
|
||||
private final OnlineReindexer.Factory reindexerFactory;
|
||||
private final boolean onlineUpgrade;
|
||||
private OnlineReindexer reindexer;
|
||||
@@ -102,7 +102,7 @@ public class LuceneVersionManager implements LifecycleListener {
|
||||
@GerritServerConfig Config cfg,
|
||||
SitePaths sitePaths,
|
||||
LuceneChangeIndex.Factory indexFactory,
|
||||
IndexCollection indexes,
|
||||
ChangeIndexCollection indexes,
|
||||
OnlineReindexer.Factory reindexerFactory) {
|
||||
this.sitePaths = sitePaths;
|
||||
this.indexFactory = indexFactory;
|
||||
|
@@ -17,9 +17,10 @@ package com.google.gerrit.lucene;
|
||||
import static com.google.common.base.Preconditions.checkNotNull;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.gerrit.server.index.IndexCollection;
|
||||
import com.google.gerrit.server.index.Index;
|
||||
import com.google.gerrit.server.index.SiteIndexer;
|
||||
import com.google.gerrit.server.index.change.ChangeIndex;
|
||||
import com.google.gerrit.server.index.change.ChangeIndexCollection;
|
||||
import com.google.gerrit.server.project.ProjectCache;
|
||||
import com.google.inject.Inject;
|
||||
import com.google.inject.assistedinject.Assisted;
|
||||
@@ -39,7 +40,7 @@ public class OnlineReindexer {
|
||||
OnlineReindexer create(int version);
|
||||
}
|
||||
|
||||
private final IndexCollection indexes;
|
||||
private final ChangeIndexCollection indexes;
|
||||
private final SiteIndexer batchIndexer;
|
||||
private final ProjectCache projectCache;
|
||||
private final int version;
|
||||
@@ -48,7 +49,7 @@ public class OnlineReindexer {
|
||||
|
||||
@Inject
|
||||
OnlineReindexer(
|
||||
IndexCollection indexes,
|
||||
ChangeIndexCollection indexes,
|
||||
SiteIndexer batchIndexer,
|
||||
ProjectCache projectCache,
|
||||
@Assisted int version) {
|
||||
@@ -84,7 +85,7 @@ public class OnlineReindexer {
|
||||
return version;
|
||||
}
|
||||
|
||||
private static int version(ChangeIndex i) {
|
||||
private static int version(Index<?, ?> i) {
|
||||
return i.getSchema().getVersion();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user