You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jp...@apache.org on 2019/10/14 17:57:33 UTC

[lucene-solr] 04/05: LUCENE-8994: Code Cleanup - Pass values to list constructor instead of empty constructor followed by addAll(). (#919)

This is an automated email from the ASF dual-hosted git repository.

jpountz pushed a commit to branch branch_8x
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit 575f8a6ad8f462b0a61f0ea0d092bfebab1afce2
Author: Koen De Groote <kd...@gmail.com>
AuthorDate: Mon Oct 14 18:45:47 2019 +0200

    LUCENE-8994: Code Cleanup - Pass values to list constructor instead of empty constructor followed by addAll(). (#919)
---
 lucene/CHANGES.txt                                            |  3 +++
 .../lucene/codecs/blocktreeords/OrdsBlockTreeTermsReader.java |  3 +--
 .../lucene/codecs/bloom/BloomFilteringPostingsFormat.java     |  3 +--
 .../org/apache/lucene/codecs/memory/FSTOrdTermsReader.java    |  3 +--
 .../java/org/apache/lucene/codecs/memory/FSTTermsReader.java  |  3 +--
 .../apache/lucene/codecs/blocktree/BlockTreeTermsReader.java  |  3 +--
 .../org/apache/lucene/replicator/IndexReplicationHandler.java |  3 +--
 .../lucene/codecs/idversion/VersionBlockTreeTermsReader.java  |  3 +--
 .../apache/lucene/dependencies/GetMavenDependenciesTask.java  |  3 +--
 .../org/apache/solr/handler/dataimport/RegexTransformer.java  |  3 +--
 solr/core/src/java/org/apache/solr/cloud/ZkController.java    |  3 +--
 .../solr/cloud/api/collections/ReindexCollectionCmd.java      |  3 +--
 .../solr/cloud/autoscaling/sim/SimNodeStateProvider.java      |  3 +--
 solr/core/src/java/org/apache/solr/core/SolrCores.java        | 11 +++++------
 .../apache/solr/handler/admin/SegmentsInfoRequestHandler.java |  3 +--
 .../java/org/apache/solr/handler/component/SearchHandler.java |  3 +--
 .../rest/schema/analysis/ManagedSynonymFilterFactory.java     |  8 +++-----
 .../schema/analysis/ManagedSynonymGraphFilterFactory.java     |  6 ++----
 solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java  |  3 +--
 solr/core/src/java/org/apache/solr/util/SolrCLI.java          |  3 +--
 .../apache/solr/client/solrj/impl/BaseCloudSolrClient.java    |  3 +--
 .../solrj/src/java/org/apache/solr/client/solrj/io/Tuple.java |  3 +--
 .../apache/solr/client/solrj/io/eval/SetValueEvaluator.java   |  3 +--
 .../solr/client/solrj/io/eval/TermVectorsEvaluator.java       |  3 +--
 .../apache/solr/client/solrj/io/graph/ShortestPathStream.java |  3 +--
 .../org/apache/solr/client/solrj/io/ops/GroupOperation.java   |  6 ++----
 .../solr/client/solrj/response/schema/SchemaResponse.java     |  9 +++------
 .../org/apache/solr/cloud/AbstractFullDistribZkTestBase.java  |  3 +--
 28 files changed, 40 insertions(+), 69 deletions(-)

diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt
index 251432a..16ad6a4 100644
--- a/lucene/CHANGES.txt
+++ b/lucene/CHANGES.txt
@@ -35,6 +35,8 @@ Other
 * LUCENE-8746: Refactor EdgeTree - Introduce a Component tree that represents the tree of components (e.g polygons).
   Edge tree is now just a tree of edges. (Ignacio Vera)
 
+* LUCENE-8994: Code Cleanup - Pass values to list constructor instead of empty constructor followed by addAll(). (Koen De Groote)
+
 Build
 
 * Upgrade forbiddenapis to version 2.7; upgrade Groovy to 2.4.17.  (Uwe Schindler)
@@ -171,6 +173,7 @@ Other
 * LUCENE-8999: LuceneTestCase.expectThrows now propogates assert/assumption failures up to the test
   w/o wrapping in a new assertion failure unless the caller has explicitly expected them (hossman)
 
+
 ======================= Lucene 8.2.0 =======================
 
 API Changes
diff --git a/lucene/codecs/src/java/org/apache/lucene/codecs/blocktreeords/OrdsBlockTreeTermsReader.java b/lucene/codecs/src/java/org/apache/lucene/codecs/blocktreeords/OrdsBlockTreeTermsReader.java
index e07cee0..3350e46 100644
--- a/lucene/codecs/src/java/org/apache/lucene/codecs/blocktreeords/OrdsBlockTreeTermsReader.java
+++ b/lucene/codecs/src/java/org/apache/lucene/codecs/blocktreeords/OrdsBlockTreeTermsReader.java
@@ -237,8 +237,7 @@ public final class OrdsBlockTreeTermsReader extends FieldsProducer {
   
   @Override
   public Collection<Accountable> getChildResources() {
-    List<Accountable> resources = new ArrayList<>();
-    resources.addAll(Accountables.namedAccountables("field", fields));
+    List<Accountable> resources = new ArrayList<>(Accountables.namedAccountables("field", fields));
     resources.add(Accountables.namedAccountable("delegate", postingsReader));
     return Collections.unmodifiableList(resources);
   }
diff --git a/lucene/codecs/src/java/org/apache/lucene/codecs/bloom/BloomFilteringPostingsFormat.java b/lucene/codecs/src/java/org/apache/lucene/codecs/bloom/BloomFilteringPostingsFormat.java
index b9a2399..0bb09f3 100644
--- a/lucene/codecs/src/java/org/apache/lucene/codecs/bloom/BloomFilteringPostingsFormat.java
+++ b/lucene/codecs/src/java/org/apache/lucene/codecs/bloom/BloomFilteringPostingsFormat.java
@@ -392,8 +392,7 @@ public final class BloomFilteringPostingsFormat extends PostingsFormat {
 
     @Override
     public Collection<Accountable> getChildResources() {
-      List<Accountable> resources = new ArrayList<>();
-      resources.addAll(Accountables.namedAccountables("field", bloomsByFieldName));
+      List<Accountable> resources = new ArrayList<>(Accountables.namedAccountables("field", bloomsByFieldName));
       if (delegateFieldsProducer != null) {
         resources.add(Accountables.namedAccountable("delegate", delegateFieldsProducer));
       }
diff --git a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java
index 12110d9..0064c24 100644
--- a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java
+++ b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java
@@ -864,8 +864,7 @@ public class FSTOrdTermsReader extends FieldsProducer {
   
   @Override
   public Collection<Accountable> getChildResources() {
-    List<Accountable> resources = new ArrayList<>();
-    resources.addAll(Accountables.namedAccountables("field", fields));
+    List<Accountable> resources = new ArrayList<>(Accountables.namedAccountables("field", fields));
     resources.add(Accountables.namedAccountable("delegate", postingsReader));
     return Collections.unmodifiableList(resources);
   }
diff --git a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java
index 43528ce..a79d21c 100644
--- a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java
+++ b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java
@@ -765,8 +765,7 @@ public class FSTTermsReader extends FieldsProducer {
   
   @Override
   public Collection<Accountable> getChildResources() {
-    List<Accountable> resources = new ArrayList<>();
-    resources.addAll(Accountables.namedAccountables("field", fields));
+    List<Accountable> resources = new ArrayList<>(Accountables.namedAccountables("field", fields));
     resources.add(Accountables.namedAccountable("delegate", postingsReader));
     return Collections.unmodifiableCollection(resources);
   }
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/blocktree/BlockTreeTermsReader.java b/lucene/core/src/java/org/apache/lucene/codecs/blocktree/BlockTreeTermsReader.java
index 0e9fe6b..3713452 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/blocktree/BlockTreeTermsReader.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/blocktree/BlockTreeTermsReader.java
@@ -336,8 +336,7 @@ public final class BlockTreeTermsReader extends FieldsProducer {
 
   @Override
   public Collection<Accountable> getChildResources() {
-    List<Accountable> resources = new ArrayList<>();
-    resources.addAll(Accountables.namedAccountables("field", fields));
+    List<Accountable> resources = new ArrayList<>(Accountables.namedAccountables("field", fields));
     resources.add(Accountables.namedAccountable("delegate", postingsReader));
     return Collections.unmodifiableList(resources);
   }
diff --git a/lucene/replicator/src/java/org/apache/lucene/replicator/IndexReplicationHandler.java b/lucene/replicator/src/java/org/apache/lucene/replicator/IndexReplicationHandler.java
index fbb4a26..b666db0 100644
--- a/lucene/replicator/src/java/org/apache/lucene/replicator/IndexReplicationHandler.java
+++ b/lucene/replicator/src/java/org/apache/lucene/replicator/IndexReplicationHandler.java
@@ -144,8 +144,7 @@ public class IndexReplicationHandler implements ReplicationHandler {
       // if there were any IO errors reading the expected commit point (i.e.
       // segments files mismatch), then ignore that commit either.
       if (commit != null && commit.getSegmentsFileName().equals(segmentsFile)) {
-        Set<String> commitFiles = new HashSet<>();
-        commitFiles.addAll(commit.getFileNames());
+        Set<String> commitFiles = new HashSet<>(commit.getFileNames());
         Matcher matcher = IndexFileNames.CODEC_FILE_PATTERN.matcher("");
         for (String file : dir.listAll()) {
           if (!commitFiles.contains(file)
diff --git a/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/VersionBlockTreeTermsReader.java b/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/VersionBlockTreeTermsReader.java
index b33b258..8001a22 100644
--- a/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/VersionBlockTreeTermsReader.java
+++ b/lucene/sandbox/src/java/org/apache/lucene/codecs/idversion/VersionBlockTreeTermsReader.java
@@ -233,8 +233,7 @@ public final class VersionBlockTreeTermsReader extends FieldsProducer {
   
   @Override
   public Collection<Accountable> getChildResources() {
-    List<Accountable> resources = new ArrayList<>();
-    resources.addAll(Accountables.namedAccountables("field", fields));
+    List<Accountable> resources = new ArrayList<>(Accountables.namedAccountables("field", fields));
     resources.add(Accountables.namedAccountable("delegate", postingsReader));
     return Collections.unmodifiableList(resources);
   }
diff --git a/lucene/tools/src/java/org/apache/lucene/dependencies/GetMavenDependenciesTask.java b/lucene/tools/src/java/org/apache/lucene/dependencies/GetMavenDependenciesTask.java
index df3668d..570016c 100644
--- a/lucene/tools/src/java/org/apache/lucene/dependencies/GetMavenDependenciesTask.java
+++ b/lucene/tools/src/java/org/apache/lucene/dependencies/GetMavenDependenciesTask.java
@@ -443,8 +443,7 @@ public class GetMavenDependenciesTask extends Task {
   private void appendAllInternalDependencies(StringBuilder builder) {
     for (Map.Entry<String, SortedSet<String>> entry : internalCompileScopeDependencies.entrySet()) {
       String artifactId = entry.getKey();
-      List<String> exclusions = new ArrayList<>();
-      exclusions.addAll(entry.getValue());
+      List<String> exclusions = new ArrayList<>(entry.getValue());
       SortedSet<ExternalDependency> extDeps = allExternalDependencies.get(artifactId);
       if (null != extDeps) {
         for (ExternalDependency externalDependency : extDeps) {
diff --git a/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/RegexTransformer.java b/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/RegexTransformer.java
index 7a919de..719deca 100644
--- a/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/RegexTransformer.java
+++ b/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/RegexTransformer.java
@@ -131,8 +131,7 @@ public class RegexTransformer extends Transformer {
   @SuppressWarnings("unchecked")
   private List<String> readBySplit(String splitBy, String value) {
     String[] vals = value.split(splitBy);
-    List<String> l = new ArrayList<>();
-    l.addAll(Arrays.asList(vals));
+    List<String> l = new ArrayList<>(Arrays.asList(vals));
     return l;
   }
 
diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkController.java b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
index ecad280..6ff2d5f 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ZkController.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
@@ -2017,8 +2017,7 @@ public class ZkController implements Closeable {
     ZkNodeProps props = null;
     if (data != null) {
       props = ZkNodeProps.load(data);
-      Map<String, Object> newProps = new HashMap<>();
-      newProps.putAll(props.getProperties());
+      Map<String, Object> newProps = new HashMap<>(props.getProperties());
       newProps.put(CONFIGNAME_PROP, confSetName);
       props = new ZkNodeProps(newProps);
     } else {
diff --git a/solr/core/src/java/org/apache/solr/cloud/api/collections/ReindexCollectionCmd.java b/solr/core/src/java/org/apache/solr/cloud/api/collections/ReindexCollectionCmd.java
index da9bacb..6059d3b 100644
--- a/solr/core/src/java/org/apache/solr/cloud/api/collections/ReindexCollectionCmd.java
+++ b/solr/core/src/java/org/apache/solr/cloud/api/collections/ReindexCollectionCmd.java
@@ -521,11 +521,10 @@ public class ReindexCollectionCmd implements OverseerCollectionMessageHandler.Cm
   private Map<String, Object> setReindexingState(String collection, State state, Map<String, Object> props) throws Exception {
     String path = ZkStateReader.COLLECTIONS_ZKNODE + "/" + collection + REINDEXING_STATE_PATH;
     DistribStateManager stateManager = ocmh.cloudManager.getDistribStateManager();
-    Map<String, Object> copyProps = new HashMap<>();
     if (props == null) { // retrieve existing props, if any
       props = Utils.getJson(stateManager, path);
     }
-    copyProps.putAll(props);
+    Map<String, Object> copyProps = new HashMap<>(props);
     copyProps.put("state", state.toLower());
     if (stateManager.hasData(path)) {
       stateManager.setData(path, Utils.toJSON(copyProps), -1);
diff --git a/solr/core/src/java/org/apache/solr/cloud/autoscaling/sim/SimNodeStateProvider.java b/solr/core/src/java/org/apache/solr/cloud/autoscaling/sim/SimNodeStateProvider.java
index e1df6fd..3a9d775 100644
--- a/solr/core/src/java/org/apache/solr/cloud/autoscaling/sim/SimNodeStateProvider.java
+++ b/solr/core/src/java/org/apache/solr/cloud/autoscaling/sim/SimNodeStateProvider.java
@@ -313,9 +313,8 @@ public class SimNodeStateProvider implements NodeStateProvider {
     if (tags.isEmpty()) {
       return new HashMap<>();
     }
-    Map<String, Object> result = new HashMap<>();
     Map<String, Object> metrics = getReplicaMetricsValues(node, tags.stream().filter(s -> s.startsWith("metrics:solr.core.")).collect(Collectors.toList()));
-    result.putAll(metrics);
+    Map<String, Object> result = new HashMap<>(metrics);
     Map<String, Object> values = nodeValues.get(node);
     if (values == null) {
       return result;
diff --git a/solr/core/src/java/org/apache/solr/core/SolrCores.java b/solr/core/src/java/org/apache/solr/core/SolrCores.java
index 1347830..3fdb618 100644
--- a/solr/core/src/java/org/apache/solr/core/SolrCores.java
+++ b/solr/core/src/java/org/apache/solr/core/SolrCores.java
@@ -182,10 +182,9 @@ class SolrCores {
    */
 
   List<SolrCore> getCores() {
-    List<SolrCore> lst = new ArrayList<>();
 
     synchronized (modifyLock) {
-      lst.addAll(cores.values());
+      List<SolrCore> lst = new ArrayList<>(cores.values());
       return lst;
     }
   }
@@ -201,10 +200,10 @@ class SolrCores {
    * @return List of currently loaded cores.
    */
   Set<String> getLoadedCoreNames() {
-    Set<String> set = new TreeSet<>();
+    Set<String> set;
 
     synchronized (modifyLock) {
-      set.addAll(cores.keySet());
+      set = new TreeSet<>(cores.keySet());
       if (getTransientCacheHandler() != null) {
         set.addAll(getTransientCacheHandler().getLoadedCoreNames());
       }
@@ -239,9 +238,9 @@ class SolrCores {
    * @return all cores names, whether loaded or unloaded, transient or permanent.
    */
   public Collection<String> getAllCoreNames() {
-    Set<String> set = new TreeSet<>();
+    Set<String> set;
     synchronized (modifyLock) {
-      set.addAll(cores.keySet());
+      set = new TreeSet<>(cores.keySet());
       if (getTransientCacheHandler() != null) {
         set.addAll(getTransientCacheHandler().getAllCoreNames());
       }
diff --git a/solr/core/src/java/org/apache/solr/handler/admin/SegmentsInfoRequestHandler.java b/solr/core/src/java/org/apache/solr/handler/admin/SegmentsInfoRequestHandler.java
index a7b044e..90ac7ce 100644
--- a/solr/core/src/java/org/apache/solr/handler/admin/SegmentsInfoRequestHandler.java
+++ b/solr/core/src/java/org/apache/solr/handler/admin/SegmentsInfoRequestHandler.java
@@ -170,8 +170,7 @@ public class SegmentsInfoRequestHandler extends RequestHandlerBase {
       }
     }
     SimpleOrderedMap<Object> segmentInfo = null;
-    List<SegmentCommitInfo> sortable = new ArrayList<>();
-    sortable.addAll(infos.asList());
+    List<SegmentCommitInfo> sortable = new ArrayList<>(infos.asList());
     // Order by the number of live docs. The display is logarithmic so it is a little jumbled visually
     sortable.sort((s1, s2) ->
       (s2.info.maxDoc() - s2.getDelCount()) - (s1.info.maxDoc() - s1.getDelCount())
diff --git a/solr/core/src/java/org/apache/solr/handler/component/SearchHandler.java b/solr/core/src/java/org/apache/solr/handler/component/SearchHandler.java
index ecdc0ec..64b8c9a 100644
--- a/solr/core/src/java/org/apache/solr/handler/component/SearchHandler.java
+++ b/solr/core/src/java/org/apache/solr/handler/component/SearchHandler.java
@@ -116,9 +116,8 @@ public class SearchHandler extends RequestHandlerBase implements SolrCoreAware ,
   public void inform(SolrCore core)
   {
     this.core = core;
-    Set<String> missing = new HashSet<>();
     List<String> c = (List<String>) initArgs.get(INIT_COMPONENTS);
-    missing.addAll(core.getSearchComponents().checkContains(c));
+    Set<String> missing = new HashSet<>(core.getSearchComponents().checkContains(c));
     List<String> first = (List<String>) initArgs.get(INIT_FIRST_COMPONENTS);
     missing.addAll(core.getSearchComponents().checkContains(first));
     List<String> last = (List<String>) initArgs.get(INIT_LAST_COMPONENTS);
diff --git a/solr/core/src/java/org/apache/solr/rest/schema/analysis/ManagedSynonymFilterFactory.java b/solr/core/src/java/org/apache/solr/rest/schema/analysis/ManagedSynonymFilterFactory.java
index 87878ce..fb4cc04 100644
--- a/solr/core/src/java/org/apache/solr/rest/schema/analysis/ManagedSynonymFilterFactory.java
+++ b/solr/core/src/java/org/apache/solr/rest/schema/analysis/ManagedSynonymFilterFactory.java
@@ -160,9 +160,8 @@ public class ManagedSynonymFilterFactory extends BaseManagedTokenFilterFactory {
                 "Invalid synonym file format! Expected a list of synonyms for "+key+
                 " but got "+mapping.getClass().getName());
           }
-                    
-          Set<String> sortedVals = new TreeSet<>();
-          sortedVals.addAll((List<String>) entry.getValue());
+
+          Set<String> sortedVals = new TreeSet<>((List<String>) entry.getValue());
           cpsm.mappings.put(key, sortedVals);        
         }
       }
@@ -195,8 +194,7 @@ public class ManagedSynonymFilterFactory extends BaseManagedTokenFilterFactory {
         if (cpsm == null)
           cpsm = new CasePreservedSynonymMappings();
 
-        Set<String> treeTerms = new TreeSet<>();
-        treeTerms.addAll(jsonList);
+        Set<String> treeTerms = new TreeSet<>(jsonList);
         cpsm.mappings.put(origTerm, treeTerms);
         madeChanges = true;
         // only add the cpsm to the synonymMappings if it has valid data
diff --git a/solr/core/src/java/org/apache/solr/rest/schema/analysis/ManagedSynonymGraphFilterFactory.java b/solr/core/src/java/org/apache/solr/rest/schema/analysis/ManagedSynonymGraphFilterFactory.java
index 6d7c1f5..b6472fe 100644
--- a/solr/core/src/java/org/apache/solr/rest/schema/analysis/ManagedSynonymGraphFilterFactory.java
+++ b/solr/core/src/java/org/apache/solr/rest/schema/analysis/ManagedSynonymGraphFilterFactory.java
@@ -156,8 +156,7 @@ public class ManagedSynonymGraphFilterFactory extends BaseManagedTokenFilterFact
                     " but got "+mapping.getClass().getName());
           }
 
-          Set<String> sortedVals = new TreeSet<>();
-          sortedVals.addAll((List<String>) entry.getValue());
+          Set<String> sortedVals = new TreeSet<>((List<String>) entry.getValue());
           cpsm.mappings.put(key, sortedVals);
         }
       }
@@ -190,8 +189,7 @@ public class ManagedSynonymGraphFilterFactory extends BaseManagedTokenFilterFact
         if (cpsm == null)
           cpsm = new CasePreservedSynonymMappings();
 
-        Set<String> treeTerms = new TreeSet<>();
-        treeTerms.addAll(jsonList);
+        Set<String> treeTerms = new TreeSet<>(jsonList);
         cpsm.mappings.put(origTerm, treeTerms);
         madeChanges = true;
         // only add the cpsm to the synonymMappings if it has valid data
diff --git a/solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java b/solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java
index 546a195..042c392 100644
--- a/solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java
+++ b/solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java
@@ -1012,8 +1012,7 @@ public class HttpSolrCall {
     Collections.shuffle(slices, random);
 
     for (Slice slice : slices) {
-      List<Replica> randomizedReplicas = new ArrayList<>();
-      randomizedReplicas.addAll(slice.getReplicas());
+      List<Replica> randomizedReplicas = new ArrayList<>(slice.getReplicas());
       Collections.shuffle(randomizedReplicas, random);
 
       for (Replica replica : randomizedReplicas) {
diff --git a/solr/core/src/java/org/apache/solr/util/SolrCLI.java b/solr/core/src/java/org/apache/solr/util/SolrCLI.java
index a958316..1e7c691 100755
--- a/solr/core/src/java/org/apache/solr/util/SolrCLI.java
+++ b/solr/core/src/java/org/apache/solr/util/SolrCLI.java
@@ -987,8 +987,7 @@ public class SolrCLI {
         cloudManager.saveSnapshot(targetDir, true, redact);
         System.err.println("- saved autoscaling snapshot to " + targetDir.getAbsolutePath());
       }
-      HashSet<String> liveNodes = new HashSet<>();
-      liveNodes.addAll(cloudManager.getClusterStateProvider().getLiveNodes());
+      HashSet<String> liveNodes = new HashSet<>(cloudManager.getClusterStateProvider().getLiveNodes());
       boolean withSuggestions = cli.hasOption("s");
       boolean withDiagnostics = cli.hasOption("d") || cli.hasOption("n");
       boolean withSortedNodes = cli.hasOption("n");
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/BaseCloudSolrClient.java b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/BaseCloudSolrClient.java
index f00e20d..0461e67 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/BaseCloudSolrClient.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/BaseCloudSolrClient.java
@@ -587,8 +587,7 @@ public abstract class BaseCloudSolrClient extends SolrClient {
       }
       nonRoutableRequest.setParams(nonRoutableParams);
       nonRoutableRequest.setBasicAuthCredentials(request.getBasicAuthUser(), request.getBasicAuthPassword());
-      List<String> urlList = new ArrayList<>();
-      urlList.addAll(routes.keySet());
+      List<String> urlList = new ArrayList<>(routes.keySet());
       Collections.shuffle(urlList, rand);
       LBSolrClient.Req req = new LBSolrClient.Req(nonRoutableRequest, urlList);
       try {
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/Tuple.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/Tuple.java
index 1af5f08..56d86fe 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/Tuple.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/Tuple.java
@@ -194,8 +194,7 @@ public class Tuple implements Cloneable, MapWriter {
   }
 
   public Tuple clone() {
-    HashMap m = new HashMap();
-    m.putAll(fields);
+    HashMap m = new HashMap(fields);
     Tuple clone = new Tuple(m);
     return clone;
   }
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SetValueEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SetValueEvaluator.java
index 9ffc32f..8ded259 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SetValueEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SetValueEvaluator.java
@@ -47,8 +47,7 @@ public class SetValueEvaluator extends RecursiveObjectEvaluator implements ManyV
         value = ((String)value).replace("\"", "");
       }
       key = key.replace("\"", "");
-      Map map = new HashMap();
-      map.putAll(tuple.fields);
+      Map map = new HashMap(tuple.fields);
       map.put(key, value);
       return new Tuple(map);
     } else {
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java
index 7c09712..5d6dba9 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java
@@ -87,7 +87,6 @@ public class TermVectorsEvaluator extends RecursiveObjectEvaluator implements Ma
 
       List<Tuple> tuples = (List<Tuple>) objects[0];
       TreeMap<String, Integer> docFreqs = new TreeMap();
-      List<String> features = new ArrayList();
       List<String> rowLabels = new ArrayList();
 
       for (Tuple tuple : tuples) {
@@ -148,7 +147,7 @@ public class TermVectorsEvaluator extends RecursiveObjectEvaluator implements Ma
       }
       int totalTerms = docFreqs.size();
       Set<String> keys = docFreqs.keySet();
-      features.addAll(keys);
+      List<String> features = new ArrayList(keys);
       double[][] docVec = new double[tuples.size()][];
       for (int t = 0; t < tuples.size(); t++) {
         Tuple tuple = tuples.get(t);
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/graph/ShortestPathStream.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/graph/ShortestPathStream.java
index c1dcceb..611417c 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/graph/ShortestPathStream.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/graph/ShortestPathStream.java
@@ -391,8 +391,7 @@ public class ShortestPathStream extends TupleStream implements Expressible {
             List<String> parents = v.get(p.peekFirst());
             if (parents != null) {
               for(String parent : parents) {
-                LinkedList newPath = new LinkedList();
-                newPath.addAll(p);
+                LinkedList newPath = new LinkedList(p);
                 newPath.addFirst(parent);
                 newPaths.add(newPath);
               }
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/ops/GroupOperation.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/ops/GroupOperation.java
index a2bd8c9..3db76ec 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/ops/GroupOperation.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/ops/GroupOperation.java
@@ -106,17 +106,15 @@ public class GroupOperation implements ReduceOperation {
   }
 
   public Tuple reduce() {
-    Map map = new HashMap();
-    List<Map> list = new ArrayList();
     LinkedList ll = new LinkedList();
     while(priorityQueue.size() > 0) {
       ll.addFirst(priorityQueue.poll().getMap());
       //This will clear priority queue and so it will be ready for the next group.
     }
 
-    list.addAll(ll);
+    List<Map> list = new ArrayList(ll);
     Map groupHead = list.get(0);
-    map.putAll(groupHead);
+    Map map = new HashMap(groupHead);
     map.put("group", list);
     return new Tuple(map);
   }
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/response/schema/SchemaResponse.java b/solr/solrj/src/java/org/apache/solr/client/solrj/response/schema/SchemaResponse.java
index 50a715c..eb9fdd5 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/response/schema/SchemaResponse.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/response/schema/SchemaResponse.java
@@ -169,8 +169,7 @@ public class SchemaResponse extends SolrResponseBase {
     List<Map<String, Object>> fieldsAttributes = new LinkedList<>();
     List<NamedList<Object>> fieldsResponse = (List<NamedList<Object>>) schemaNamedList.get("fields");
     for (NamedList<Object> fieldNamedList : fieldsResponse) {
-      Map<String, Object> fieldAttributes = new LinkedHashMap<>();
-      fieldAttributes.putAll(extractAttributeMap(fieldNamedList));
+      Map<String, Object> fieldAttributes = new LinkedHashMap<>(extractAttributeMap(fieldNamedList));
       fieldsAttributes.add(fieldAttributes);
     }
 
@@ -182,8 +181,7 @@ public class SchemaResponse extends SolrResponseBase {
     List<Map<String, Object>> dynamicFieldsAttributes = new LinkedList<>();
     List<NamedList<Object>> dynamicFieldsResponse = (List<NamedList<Object>>) schemaNamedList.get("dynamicFields");
     for (NamedList<Object> fieldNamedList : dynamicFieldsResponse) {
-      Map<String, Object> dynamicFieldAttributes = new LinkedHashMap<>();
-      dynamicFieldAttributes.putAll(extractAttributeMap(fieldNamedList));
+      Map<String, Object> dynamicFieldAttributes = new LinkedHashMap<>(extractAttributeMap(fieldNamedList));
       dynamicFieldsAttributes.add(dynamicFieldAttributes);
     }
 
@@ -195,8 +193,7 @@ public class SchemaResponse extends SolrResponseBase {
     List<Map<String, Object>> copyFieldsAttributes = new LinkedList<>();
     List<NamedList<Object>> copyFieldsResponse = (List<NamedList<Object>>) schemaNamedList.get("copyFields");
     for (NamedList<Object> copyFieldNamedList : copyFieldsResponse) {
-      Map<String, Object> copyFieldAttributes = new LinkedHashMap<>();
-      copyFieldAttributes.putAll(extractAttributeMap(copyFieldNamedList));
+      Map<String, Object> copyFieldAttributes = new LinkedHashMap<>(extractAttributeMap(copyFieldNamedList));
       copyFieldsAttributes.add(copyFieldAttributes);
     }
 
diff --git a/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java b/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
index d9de129..f2bd410 100644
--- a/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
+++ b/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
@@ -2158,8 +2158,7 @@ public abstract class AbstractFullDistribZkTestBase extends AbstractDistribZkTes
 
     log.info("Took {} ms to see all replicas become active.", timer.getTime());
 
-    List<Replica> replicas = new ArrayList<>();
-    replicas.addAll(notLeaders.values());
+    List<Replica> replicas = new ArrayList<>(notLeaders.values());
     return replicas;
   }