From: Simon Brandhof Date: Tue, 2 Aug 2016 07:11:44 +0000 (+0200) Subject: Refactor EsIndexerEnabler X-Git-Tag: 6.1-RC1~471 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=e9f71cf1c606731aeccb6120467699281254f2b4;p=sonarqube.git Refactor EsIndexerEnabler --- diff --git a/server/sonar-ce/src/main/java/org/sonar/ce/es/EsIndexerEnabler.java b/server/sonar-ce/src/main/java/org/sonar/ce/es/EsIndexerEnabler.java index 716567e9756..f5e210dd286 100644 --- a/server/sonar-ce/src/main/java/org/sonar/ce/es/EsIndexerEnabler.java +++ b/server/sonar-ce/src/main/java/org/sonar/ce/es/EsIndexerEnabler.java @@ -20,13 +20,8 @@ package org.sonar.ce.es; import org.picocontainer.Startable; -import org.sonar.server.activity.index.ActivityIndexer; +import org.sonar.server.es.BaseIndexer; import org.sonar.server.es.IndexerStartupTask; -import org.sonar.server.issue.index.IssueAuthorizationIndexer; -import org.sonar.server.issue.index.IssueIndexer; -import org.sonar.server.test.index.TestIndexer; -import org.sonar.server.user.index.UserIndexer; -import org.sonar.server.view.index.ViewIndexer; /** * Replaces the {@link IndexerStartupTask} to enable indexers but without triggering a full @@ -34,31 +29,17 @@ import org.sonar.server.view.index.ViewIndexer; */ public class EsIndexerEnabler implements Startable { - private final TestIndexer testIndexer; - private final IssueAuthorizationIndexer issueAuthorizationIndexer; - private final IssueIndexer issueIndexer; - private final UserIndexer userIndexer; - private final ViewIndexer viewIndexer; - private final ActivityIndexer activityIndexer; + private final BaseIndexer[] indexers; - public EsIndexerEnabler(TestIndexer testIndexer, IssueAuthorizationIndexer issueAuthorizationIndexer, - IssueIndexer issueIndexer, UserIndexer userIndexer, ViewIndexer viewIndexer, ActivityIndexer activityIndexer) { - this.testIndexer = testIndexer; - this.issueAuthorizationIndexer = issueAuthorizationIndexer; - this.issueIndexer = issueIndexer; - this.userIndexer = userIndexer; - this.viewIndexer = viewIndexer; - this.activityIndexer = activityIndexer; + public EsIndexerEnabler(BaseIndexer[] indexers) { + this.indexers = indexers; } @Override public void start() { - activityIndexer.setEnabled(true); - issueAuthorizationIndexer.setEnabled(true); - issueIndexer.setEnabled(true); - testIndexer.setEnabled(true); - userIndexer.setEnabled(true); - viewIndexer.setEnabled(true); + for (BaseIndexer indexer : indexers) { + indexer.setEnabled(true); + } } @Override diff --git a/server/sonar-ce/src/test/java/org/sonar/ce/es/EsIndexerEnablerTest.java b/server/sonar-ce/src/test/java/org/sonar/ce/es/EsIndexerEnablerTest.java index e0cae201d3c..984e9883f0b 100644 --- a/server/sonar-ce/src/test/java/org/sonar/ce/es/EsIndexerEnablerTest.java +++ b/server/sonar-ce/src/test/java/org/sonar/ce/es/EsIndexerEnablerTest.java @@ -19,8 +19,10 @@ */ package org.sonar.ce.es; +import org.junit.After; import org.junit.Test; import org.sonar.server.activity.index.ActivityIndexer; +import org.sonar.server.es.BaseIndexer; import org.sonar.server.issue.index.IssueAuthorizationIndexer; import org.sonar.server.issue.index.IssueIndexer; import org.sonar.server.test.index.TestIndexer; @@ -37,7 +39,13 @@ public class EsIndexerEnablerTest { private UserIndexer userIndexer = mock(UserIndexer.class); private ViewIndexer viewIndexer = mock(ViewIndexer.class); private ActivityIndexer activityIndexer = mock(ActivityIndexer.class); - private EsIndexerEnabler underTest = new EsIndexerEnabler(testIndexer, issueAuthorizationIndexer, issueIndexer, userIndexer, viewIndexer, activityIndexer); + private EsIndexerEnabler underTest = new EsIndexerEnabler(new BaseIndexer[]{testIndexer, issueAuthorizationIndexer, issueIndexer, userIndexer, viewIndexer, activityIndexer}); + + @After + public void tearDown() { + underTest.stop(); + + } @Test public void start_enables_all_indexers() {