]> source.dussan.org Git - sonarqube.git/commitdiff
Refactor EsIndexerEnabler
authorSimon Brandhof <simon.brandhof@sonarsource.com>
Tue, 2 Aug 2016 07:11:44 +0000 (09:11 +0200)
committerSimon Brandhof <simon.brandhof@sonarsource.com>
Tue, 2 Aug 2016 08:03:30 +0000 (10:03 +0200)
server/sonar-ce/src/main/java/org/sonar/ce/es/EsIndexerEnabler.java
server/sonar-ce/src/test/java/org/sonar/ce/es/EsIndexerEnablerTest.java

index 716567e9756b3b99aa59118e92c0028185881a94..f5e210dd2865db5cb6281e0b9973df201f6dc93a 100644 (file)
 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
index e0cae201d3c1a077e8bfdf4db79d41c9f6197921..984e9883f0bc1a04fa2aaf8193986dd753d160bd 100644 (file)
  */
 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() {