]> source.dussan.org Git - sonarqube.git/commitdiff
remove redundant superclass BaseIndex
authorDaniel Schwarz <daniel.schwarz@sonarsource.com>
Mon, 27 Mar 2017 09:07:26 +0000 (11:07 +0200)
committerDaniel Schwarz <bartfastiel@users.noreply.github.com>
Thu, 30 Mar 2017 10:22:01 +0000 (12:22 +0200)
server/sonar-server/src/main/java/org/sonar/server/es/BaseIndex.java [deleted file]
server/sonar-server/src/main/java/org/sonar/server/issue/index/IssueIndex.java
server/sonar-server/src/main/java/org/sonar/server/measure/index/ProjectMeasuresIndex.java
server/sonar-server/src/main/java/org/sonar/server/rule/index/RuleIndex.java
server/sonar-server/src/main/java/org/sonar/server/test/index/TestIndex.java

diff --git a/server/sonar-server/src/main/java/org/sonar/server/es/BaseIndex.java b/server/sonar-server/src/main/java/org/sonar/server/es/BaseIndex.java
deleted file mode 100644 (file)
index 1fdcbab..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * SonarQube
- * Copyright (C) 2009-2017 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- */
-package org.sonar.server.es;
-
-import org.sonar.api.ce.ComputeEngineSide;
-import org.sonar.api.server.ServerSide;
-
-@ServerSide
-@ComputeEngineSide
-public abstract class BaseIndex {
-
-  private final EsClient client;
-
-  public BaseIndex(EsClient client) {
-    this.client = client;
-  }
-
-  protected EsClient getClient() {
-    return client;
-  }
-
-}
index 6e48547e22676f63cd4ff606240eb0a0b333d880..08dde7f513b4590b0ad5f7e07118267af30896e0 100644 (file)
@@ -67,7 +67,6 @@ import org.sonar.api.utils.System2;
 import org.sonar.core.util.NonNullInputFunction;
 import org.sonar.core.util.stream.Collectors;
 import org.sonar.db.component.ComponentDto;
-import org.sonar.server.es.BaseIndex;
 import org.sonar.server.es.EsClient;
 import org.sonar.server.es.EsUtils;
 import org.sonar.server.es.SearchOptions;
@@ -111,7 +110,7 @@ import static org.sonarqube.ws.client.issue.IssuesWsParameters.PARAM_TYPES;
  * The unique entry-point to interact with Elasticsearch index "issues".
  * All the requests are listed here.
  */
-public class IssueIndex extends BaseIndex {
+public class IssueIndex {
 
   private static final String SUBSTRING_MATCH_REGEXP = ".*%s.*";
 
@@ -160,13 +159,13 @@ public class IssueIndex extends BaseIndex {
   };
 
   private final Sorting sorting;
+  private final EsClient client;
   private final System2 system;
   private final UserSession userSession;
   private final AuthorizationTypeSupport authorizationTypeSupport;
 
   public IssueIndex(EsClient client, System2 system, UserSession userSession, AuthorizationTypeSupport authorizationTypeSupport) {
-    super(client);
-
+    this.client = client;
     this.system = system;
     this.userSession = userSession;
     this.authorizationTypeSupport = authorizationTypeSupport;
@@ -192,7 +191,7 @@ public class IssueIndex extends BaseIndex {
   }
 
   public SearchResult<IssueDoc> search(IssueQuery query, SearchOptions options) {
-    SearchRequestBuilder requestBuilder = getClient()
+    SearchRequestBuilder requestBuilder = client
       .prepareSearch(IssueIndexDefinition.INDEX_TYPE_ISSUE);
 
     configureSorting(query, requestBuilder);
@@ -477,7 +476,7 @@ public class IssueIndex extends BaseIndex {
 
   private Optional<Long> getMinCreatedAt(Map<String, QueryBuilder> filters, QueryBuilder esQuery) {
     String facetNameAndField = IssueIndexDefinition.FIELD_ISSUE_FUNC_CREATED_AT;
-    SearchRequestBuilder esRequest = getClient()
+    SearchRequestBuilder esRequest = client
       .prepareSearch(IssueIndexDefinition.INDEX_TYPE_ISSUE)
       .setSize(0);
     BoolQueryBuilder esFilter = boolQuery();
@@ -588,7 +587,7 @@ public class IssueIndex extends BaseIndex {
   }
 
   public List<String> listTags(@Nullable String textQuery, int maxNumberOfTags) {
-    SearchRequestBuilder requestBuilder = getClient()
+    SearchRequestBuilder requestBuilder = client
       .prepareSearch(IssueIndexDefinition.INDEX_TYPE_ISSUE, RuleIndexDefinition.INDEX_TYPE_RULE);
 
     requestBuilder.setQuery(boolQuery().must(matchAllQuery()).filter(createBoolFilter(
@@ -636,7 +635,7 @@ public class IssueIndex extends BaseIndex {
   }
 
   private Terms listTermsMatching(String fieldName, IssueQuery query, @Nullable String textQuery, Terms.Order termsOrder, int maxNumberOfTags) {
-    SearchRequestBuilder requestBuilder = getClient()
+    SearchRequestBuilder requestBuilder = client
       .prepareSearch(IssueIndexDefinition.INDEX_TYPE_ISSUE)
       // Avoids returning search hits
       .setSize(0);
@@ -686,7 +685,7 @@ public class IssueIndex extends BaseIndex {
         throw new IllegalStateException(format("Component of scope '%s' is not allowed", component.scope()));
     }
 
-    SearchRequestBuilder requestBuilder = getClient()
+    SearchRequestBuilder requestBuilder = client
       .prepareSearch(IssueIndexDefinition.INDEX_TYPE_ISSUE)
       .setSearchType(SearchType.SCAN)
       .setScroll(TimeValue.timeValueMinutes(EsUtils.SCROLL_TIME_IN_MINUTES))
@@ -701,6 +700,6 @@ public class IssueIndex extends BaseIndex {
       .setQuery(boolQuery().must(matchAllQuery()).filter(filter));
     SearchResponse response = requestBuilder.get();
 
-    return EsUtils.scroll(getClient(), response.getScrollId(), DOC_CONVERTER);
+    return EsUtils.scroll(client, response.getScrollId(), DOC_CONVERTER);
   }
 }
index 9892a11d5c8d967118102a0e2ea56b580ba12fe8..b62c5ddee27aff6400931b7376790f93ef2f6fd9 100644 (file)
@@ -42,7 +42,6 @@ import org.elasticsearch.search.aggregations.bucket.terms.Terms;
 import org.elasticsearch.search.aggregations.bucket.terms.TermsBuilder;
 import org.elasticsearch.search.sort.FieldSortBuilder;
 import org.sonar.core.util.stream.Collectors;
-import org.sonar.server.es.BaseIndex;
 import org.sonar.server.es.DefaultIndexSettingsElement;
 import org.sonar.server.es.EsClient;
 import org.sonar.server.es.SearchIdResult;
@@ -85,7 +84,7 @@ import static org.sonar.server.measure.index.ProjectMeasuresQuery.SORT_BY_NAME;
 import static org.sonarqube.ws.client.project.ProjectsWsParameters.FILTER_LANGUAGES;
 import static org.sonarqube.ws.client.project.ProjectsWsParameters.FILTER_TAGS;
 
-public class ProjectMeasuresIndex extends BaseIndex {
+public class ProjectMeasuresIndex {
 
   public static final List<String> SUPPORTED_FACETS = ImmutableList.of(
     NCLOC_KEY,
@@ -113,15 +112,16 @@ public class ProjectMeasuresIndex extends BaseIndex {
     .put(FIELD_TAGS, ProjectMeasuresIndex::addTagsFacet)
     .build();
 
+  private final EsClient client;
   private final AuthorizationTypeSupport authorizationTypeSupport;
 
   public ProjectMeasuresIndex(EsClient client, AuthorizationTypeSupport authorizationTypeSupport) {
-    super(client);
+    this.client = client;
     this.authorizationTypeSupport = authorizationTypeSupport;
   }
 
   public SearchIdResult<String> search(ProjectMeasuresQuery query, SearchOptions searchOptions) {
-    SearchRequestBuilder requestBuilder = getClient()
+    SearchRequestBuilder requestBuilder = client
       .prepareSearch(INDEX_TYPE_PROJECT_MEASURES)
       .setFetchSource(false)
       .setFrom(searchOptions.getOffset())
@@ -321,7 +321,7 @@ public class ProjectMeasuresIndex extends BaseIndex {
       tagFacet.include(".*" + escapeSpecialRegexChars(textQuery) + ".*");
     }
 
-    SearchRequestBuilder searchQuery = getClient()
+    SearchRequestBuilder searchQuery = client
       .prepareSearch(INDEX_TYPE_PROJECT_MEASURES)
       .setQuery(authorizationTypeSupport.createQueryFilter())
       .setFetchSource(false)
index 87143b5c30364770285beb7a37abd10acfea40a5..ab8afb57ae632cfe24c9ebcaf979edb81b9530df 100644 (file)
@@ -54,7 +54,6 @@ import org.sonar.api.rule.RuleKey;
 import org.sonar.api.rule.RuleStatus;
 import org.sonar.api.rule.Severity;
 import org.sonar.api.rules.RuleType;
-import org.sonar.server.es.BaseIndex;
 import org.sonar.server.es.EsClient;
 import org.sonar.server.es.SearchIdResult;
 import org.sonar.server.es.SearchOptions;
@@ -94,7 +93,7 @@ import static org.sonar.server.rule.index.RuleIndexDefinition.INDEX_TYPE_RULE;
  * The unique entry-point to interact with Elasticsearch index "rules".
  * All the requests are listed here.
  */
-public class RuleIndex extends BaseIndex {
+public class RuleIndex {
 
   public static final String FACET_LANGUAGES = "languages";
   public static final String FACET_TAGS = "tags";
@@ -109,13 +108,14 @@ public class RuleIndex extends BaseIndex {
     Collections2.filter(
       Collections2.transform(Arrays.asList(RuleStatus.values()), RuleStatus::toString),
       input -> !RuleStatus.REMOVED.toString().equals(input)));
+  private final EsClient client;
 
   public RuleIndex(EsClient client) {
-    super(client);
+    this.client = client;
   }
 
   public SearchIdResult<RuleKey> search(RuleQuery query, SearchOptions options) {
-    SearchRequestBuilder esSearch = getClient()
+    SearchRequestBuilder esSearch = client
       .prepareSearch(INDEX_TYPE_RULE);
 
     QueryBuilder qb = buildQuery(query);
@@ -143,7 +143,7 @@ public class RuleIndex extends BaseIndex {
    * Return all keys matching the search query, without pagination nor facets
    */
   public Iterator<RuleKey> searchAll(RuleQuery query) {
-    SearchRequestBuilder esSearch = getClient()
+    SearchRequestBuilder esSearch = client
       .prepareSearch(INDEX_TYPE_RULE)
       .setSearchType(SearchType.SCAN)
       .setScroll(TimeValue.timeValueMinutes(SCROLL_TIME_IN_MINUTES));
@@ -159,7 +159,7 @@ public class RuleIndex extends BaseIndex {
 
     esSearch.setQuery(boolQuery().must(qb).filter(fb));
     SearchResponse response = esSearch.get();
-    return scrollIds(getClient(), response.getScrollId(), RuleKey::parse);
+    return scrollIds(client, response.getScrollId(), RuleKey::parse);
   }
 
   /* Build main query (search based) */
@@ -478,7 +478,7 @@ public class RuleIndex extends BaseIndex {
     if (query != null) {
       termsAggregation.include(".*" + escapeSpecialRegexChars(query) + ".*");
     }
-    SearchRequestBuilder request = getClient()
+    SearchRequestBuilder request = client
       .prepareSearch(INDEX_TYPE_RULE, INDEX_TYPE_ACTIVE_RULE)
       .setQuery(matchAllQuery())
       .setSize(0)
index c6c6eee5af712a36eab14ec363f9fb3b2808e922..11680251905bac66e105e8abcacd49932c307f1e 100644 (file)
@@ -27,7 +27,6 @@ import java.util.Map;
 import org.elasticsearch.action.search.SearchRequestBuilder;
 import org.elasticsearch.search.SearchHit;
 import org.sonar.core.util.NonNullInputFunction;
-import org.sonar.server.es.BaseIndex;
 import org.sonar.server.es.EsClient;
 import org.sonar.server.es.SearchOptions;
 import org.sonar.server.es.SearchResult;
@@ -42,22 +41,23 @@ import static org.sonar.server.test.index.TestIndexDefinition.FIELD_COVERED_FILE
 import static org.sonar.server.test.index.TestIndexDefinition.FIELD_FILE_UUID;
 import static org.sonar.server.test.index.TestIndexDefinition.FIELD_TEST_UUID;
 
-public class TestIndex extends BaseIndex {
+public class TestIndex {
   private static final Function<Map<String, Object>, TestDoc> CONVERTER = new NonNullInputFunction<Map<String, Object>, TestDoc>() {
     @Override
     protected TestDoc doApply(Map<String, Object> fields) {
       return new TestDoc(fields);
     }
   };
+  private final EsClient client;
 
   public TestIndex(EsClient client) {
-    super(client);
+    this.client = client;
   }
 
   public List<CoveredFileDoc> coveredFiles(String testUuid) {
     List<CoveredFileDoc> coveredFiles = new ArrayList<>();
 
-    for (SearchHit hit : getClient().prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
+    for (SearchHit hit : client.prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
       .setSize(1)
       .setQuery(boolQuery().must(matchAllQuery()).filter(termQuery(FIELD_TEST_UUID, testUuid)))
       .get().getHits().getHits()) {
@@ -68,7 +68,7 @@ public class TestIndex extends BaseIndex {
   }
 
   public SearchResult<TestDoc> searchByTestFileUuid(String testFileUuid, SearchOptions searchOptions) {
-    SearchRequestBuilder searchRequest = getClient().prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
+    SearchRequestBuilder searchRequest = client.prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
       .setSize(searchOptions.getLimit())
       .setFrom(searchOptions.getOffset())
       .setQuery(boolQuery().must(matchAllQuery()).filter(termQuery(FIELD_FILE_UUID, testFileUuid)));
@@ -77,7 +77,7 @@ public class TestIndex extends BaseIndex {
   }
 
   public SearchResult<TestDoc> searchBySourceFileUuidAndLineNumber(String sourceFileUuid, int lineNumber, SearchOptions searchOptions) {
-    SearchRequestBuilder searchRequest = getClient().prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
+    SearchRequestBuilder searchRequest = client.prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
       .setSize(searchOptions.getLimit())
       .setFrom(searchOptions.getOffset())
       .setQuery(nestedQuery(FIELD_COVERED_FILES, boolQuery()
@@ -97,7 +97,7 @@ public class TestIndex extends BaseIndex {
   }
 
   public Optional<TestDoc> getNullableByTestUuid(String testUuid) {
-    for (SearchHit hit : getClient().prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
+    for (SearchHit hit : client.prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
       .setSize(1)
       .setQuery(boolQuery().must(matchAllQuery()).filter(termQuery(FIELD_TEST_UUID, testUuid)))
       .get().getHits().getHits()) {
@@ -108,7 +108,7 @@ public class TestIndex extends BaseIndex {
   }
 
   public SearchResult<TestDoc> searchByTestUuid(String testUuid, SearchOptions searchOptions) {
-    SearchRequestBuilder searchRequest = getClient().prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
+    SearchRequestBuilder searchRequest = client.prepareSearch(TestIndexDefinition.INDEX_TYPE_TEST)
       .setSize(searchOptions.getLimit())
       .setFrom(searchOptions.getOffset())
       .setQuery(boolQuery().must(matchAllQuery()).filter(termQuery(FIELD_TEST_UUID, testUuid)));