You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2020/04/22 20:21:53 UTC

[tomcat] branch 9.0.x updated: Few more places where parameterized collection constructors can be used

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

markt pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/9.0.x by this push:
     new c225860  Few more places where parameterized collection constructors can be used
c225860 is described below

commit c2258608674a4edd4517a130316ad135f0cca7e5
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Wed Apr 22 21:18:59 2020 +0100

    Few more places where parameterized collection constructors can be used
---
 java/org/apache/catalina/core/ApplicationContext.java              | 3 +--
 java/org/apache/catalina/core/StandardContext.java                 | 4 +---
 java/org/apache/catalina/ha/session/BackupManager.java             | 6 ++----
 java/org/apache/catalina/session/PersistentManagerBase.java        | 6 ++----
 java/org/apache/catalina/startup/ContextConfig.java                | 3 +--
 java/org/apache/coyote/http11/AbstractHttp11Protocol.java          | 7 +++----
 java/org/apache/coyote/http2/StreamStateMachine.java               | 4 ++--
 java/org/apache/jasper/compiler/PageInfo.java                      | 3 +--
 java/org/apache/jasper/servlet/JspCServletContext.java             | 3 +--
 java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java | 4 ++--
 java/org/apache/tomcat/util/net/jsse/JSSEUtil.java                 | 3 +--
 test/org/apache/catalina/users/MemoryUserDatabaseTests.java        | 6 ++----
 test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java | 3 +--
 test/org/apache/tomcat/websocket/server/TestClose.java             | 3 +--
 14 files changed, 21 insertions(+), 37 deletions(-)

diff --git a/java/org/apache/catalina/core/ApplicationContext.java b/java/org/apache/catalina/core/ApplicationContext.java
index 1ee44df..cce739b 100644
--- a/java/org/apache/catalina/core/ApplicationContext.java
+++ b/java/org/apache/catalina/core/ApplicationContext.java
@@ -1362,8 +1362,7 @@ public class ApplicationContext implements ServletContext {
     protected void clearAttributes() {
 
         // Create list of attributes to be removed
-        List<String> list = new ArrayList<>();
-        list.addAll(attributes.keySet());
+        List<String> list = new ArrayList<>(attributes.keySet());
 
         // Remove application originated attributes
         // (read only attributes will be left in place)
diff --git a/java/org/apache/catalina/core/StandardContext.java b/java/org/apache/catalina/core/StandardContext.java
index 400cbe9..c012064 100644
--- a/java/org/apache/catalina/core/StandardContext.java
+++ b/java/org/apache/catalina/core/StandardContext.java
@@ -3538,9 +3538,7 @@ public class StandardContext extends ContainerBase
      */
     @Override
     public String[] findParameters() {
-        List<String> parameterNames = new ArrayList<>(parameters.size());
-        parameterNames.addAll(parameters.keySet());
-        return parameterNames.toArray(new String[0]);
+        return parameters.keySet().toArray(new String[0]);
     }
 
 
diff --git a/java/org/apache/catalina/ha/session/BackupManager.java b/java/org/apache/catalina/ha/session/BackupManager.java
index 77cb503..bd3ac83 100644
--- a/java/org/apache/catalina/ha/session/BackupManager.java
+++ b/java/org/apache/catalina/ha/session/BackupManager.java
@@ -269,10 +269,8 @@ public class BackupManager extends ClusterManagerBase
 
     @Override
     public Set<String> getSessionIdsFull() {
-        Set<String> sessionIds = new HashSet<>();
-        LazyReplicatedMap<String,Session> map =
-                (LazyReplicatedMap<String,Session>)sessions;
-        sessionIds.addAll(map.keySetFull());
+        LazyReplicatedMap<String,Session> map = (LazyReplicatedMap<String,Session>)sessions;
+        Set<String> sessionIds = new HashSet<>(map.keySetFull());
         return sessionIds;
     }
 
diff --git a/java/org/apache/catalina/session/PersistentManagerBase.java b/java/org/apache/catalina/session/PersistentManagerBase.java
index b3badf4..bb669ac 100644
--- a/java/org/apache/catalina/session/PersistentManagerBase.java
+++ b/java/org/apache/catalina/session/PersistentManagerBase.java
@@ -650,11 +650,9 @@ public abstract class PersistentManagerBase extends ManagerBase
     public Set<String> getSessionIdsFull() {
         // In memory session ID list
         Set<String> sessionIds = new HashSet<>(sessions.keySet());
-        // Store session ID list
-        String[] storeKeys;
         try {
-            storeKeys = getStore().keys();
-            sessionIds.addAll(Arrays.asList(storeKeys));
+            // Store session ID list
+            sessionIds.addAll(Arrays.asList(getStore().keys()));
         } catch (IOException e) {
             log.warn(sm.getString("persistentManager.storeKeysException"));
         }
diff --git a/java/org/apache/catalina/startup/ContextConfig.java b/java/org/apache/catalina/startup/ContextConfig.java
index e4ee221..82db594 100644
--- a/java/org/apache/catalina/startup/ContextConfig.java
+++ b/java/org/apache/catalina/startup/ContextConfig.java
@@ -1183,8 +1183,7 @@ public class ContextConfig implements LifecycleListener {
         if (ok) {
             // Spec does not define an order.
             // Use ordered JARs followed by remaining JARs
-            Set<WebXml> resourceJars = new LinkedHashSet<>();
-            resourceJars.addAll(orderedFragments);
+            Set<WebXml> resourceJars = new LinkedHashSet<>(orderedFragments);
             for (WebXml fragment : fragments.values()) {
                 if (!resourceJars.contains(fragment)) {
                     resourceJars.add(fragment);
diff --git a/java/org/apache/coyote/http11/AbstractHttp11Protocol.java b/java/org/apache/coyote/http11/AbstractHttp11Protocol.java
index a73a781..4ec5faa 100644
--- a/java/org/apache/coyote/http11/AbstractHttp11Protocol.java
+++ b/java/org/apache/coyote/http11/AbstractHttp11Protocol.java
@@ -453,10 +453,9 @@ public abstract class AbstractHttp11Protocol<S> extends AbstractProtocol<S> {
         return allowedTrailerHeaders;
     }
     public String getAllowedTrailerHeaders() {
-        // Chances of a size change between these lines are small enough that a
-        // sync is unnecessary.
-        List<String> copy = new ArrayList<>(allowedTrailerHeaders.size());
-        copy.addAll(allowedTrailerHeaders);
+        // Chances of a change during execution of this line are small enough
+        // that a sync is unnecessary.
+        List<String> copy = new ArrayList<>(allowedTrailerHeaders);
         return StringUtils.join(copy);
     }
     public void addAllowedTrailerHeader(String header) {
diff --git a/java/org/apache/coyote/http2/StreamStateMachine.java b/java/org/apache/coyote/http2/StreamStateMachine.java
index 596b670..948e7cd 100644
--- a/java/org/apache/coyote/http2/StreamStateMachine.java
+++ b/java/org/apache/coyote/http2/StreamStateMachine.java
@@ -215,7 +215,7 @@ class StreamStateMachine {
         private final boolean canReset;
         private final boolean connectionErrorForInvalidFrame;
         private final Http2Error errorCodeForInvalidFrame;
-        private final Set<FrameType> frameTypesPermitted = new HashSet<>();
+        private final Set<FrameType> frameTypesPermitted;
 
         private State(boolean canRead, boolean canWrite, boolean canReset,
                 boolean connectionErrorForInvalidFrame, Http2Error errorCode,
@@ -225,7 +225,7 @@ class StreamStateMachine {
             this.canReset = canReset;
             this.connectionErrorForInvalidFrame = connectionErrorForInvalidFrame;
             this.errorCodeForInvalidFrame = errorCode;
-            frameTypesPermitted.addAll(Arrays.asList(frameTypes));
+            frameTypesPermitted = new HashSet<>(Arrays.asList(frameTypes));
         }
 
         public boolean isActive() {
diff --git a/java/org/apache/jasper/compiler/PageInfo.java b/java/org/apache/jasper/compiler/PageInfo.java
index 9aed5ba..ecc35fe 100644
--- a/java/org/apache/jasper/compiler/PageInfo.java
+++ b/java/org/apache/jasper/compiler/PageInfo.java
@@ -110,7 +110,6 @@ class PageInfo {
         this.jspPrefixMapper = new HashMap<>();
         this.xmlPrefixMapper = new HashMap<>();
         this.nonCustomTagPrefixMap = new HashMap<>();
-        this.imports = new Vector<>();
         this.dependants = new HashMap<>();
         this.includePrelude = new Vector<>();
         this.includeCoda = new Vector<>();
@@ -118,7 +117,7 @@ class PageInfo {
         this.prefixes = new HashSet<>();
 
         // Enter standard imports
-        imports.addAll(Constants.STANDARD_IMPORTS);
+        this.imports = new Vector<>(Constants.STANDARD_IMPORTS);
     }
 
     public boolean isTagFile() {
diff --git a/java/org/apache/jasper/servlet/JspCServletContext.java b/java/org/apache/jasper/servlet/JspCServletContext.java
index 8f5816d..498cf54 100644
--- a/java/org/apache/jasper/servlet/JspCServletContext.java
+++ b/java/org/apache/jasper/servlet/JspCServletContext.java
@@ -190,8 +190,7 @@ public class JspCServletContext implements ServletContext {
             throws JasperException {
         List<URL> resourceJars = new ArrayList<>();
         // Build list of potential resource JARs. Use same ordering as ContextConfig
-        Set<WebXml> resourceFragments = new LinkedHashSet<>();
-        resourceFragments.addAll(orderedFragments);
+        Set<WebXml> resourceFragments = new LinkedHashSet<>(orderedFragments);
         for (WebXml fragment : fragments) {
             if (!resourceFragments.contains(fragment)) {
                 resourceFragments.add(fragment);
diff --git a/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java b/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java
index 796faa2..5762962 100644
--- a/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java
+++ b/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java
@@ -873,11 +873,11 @@ public class GenericKeyedObjectPool<K, T> extends BaseGenericObjectPool<T>
                 if(evictionIterator == null || !evictionIterator.hasNext()) {
                     if (evictionKeyIterator == null ||
                             !evictionKeyIterator.hasNext()) {
-                        final List<K> keyCopy = new ArrayList<>();
+                        final List<K> keyCopy;
                         final Lock readLock = keyLock.readLock();
                         readLock.lock();
                         try {
-                            keyCopy.addAll(poolKeyList);
+                            keyCopy = new ArrayList<>(poolKeyList);
                         } finally {
                             readLock.unlock();
                         }
diff --git a/java/org/apache/tomcat/util/net/jsse/JSSEUtil.java b/java/org/apache/tomcat/util/net/jsse/JSSEUtil.java
index 5f662de..918aa79 100644
--- a/java/org/apache/tomcat/util/net/jsse/JSSEUtil.java
+++ b/java/org/apache/tomcat/util/net/jsse/JSSEUtil.java
@@ -147,8 +147,7 @@ public class JSSEUtil extends SSLUtilBase {
                             }
                         }
                     } else {
-                        implementedCiphers = new HashSet<>(implementedCipherSuiteArray.length);
-                        implementedCiphers.addAll(Arrays.asList(implementedCipherSuiteArray));
+                        implementedCiphers = new HashSet<>(Arrays.asList(implementedCipherSuiteArray));
                     }
                     initialized = true;
                 }
diff --git a/test/org/apache/catalina/users/MemoryUserDatabaseTests.java b/test/org/apache/catalina/users/MemoryUserDatabaseTests.java
index bd73e28..9786238 100644
--- a/test/org/apache/catalina/users/MemoryUserDatabaseTests.java
+++ b/test/org/apache/catalina/users/MemoryUserDatabaseTests.java
@@ -176,10 +176,8 @@ public class MemoryUserDatabaseTests {
         assertPrincipalNames(new String[] { "testgroup", "othergroup"}, user.getGroups());
     }
 
-    private void assertPrincipalNames(String[] expectedNames, Iterator<? extends Principal> i)
-    {
-        HashSet<String> names = new HashSet<>(expectedNames.length);
-        names.addAll(Arrays.asList(expectedNames));
+    private void assertPrincipalNames(String[] expectedNames, Iterator<? extends Principal> i) {
+        HashSet<String> names = new HashSet<>(Arrays.asList(expectedNames));
 
         int j=0;
         while(i.hasNext()) {
diff --git a/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java b/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
index 5ff2a5c..a5ce647 100644
--- a/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
+++ b/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
@@ -366,8 +366,7 @@ public class TesterOpenSSL {
 
     public static Set<String> getOpenSSLCiphersAsSet(String specification) throws Exception {
         String[] ciphers = getOpenSSLCiphersAsExpression(specification).trim().split(":");
-        Set<String> result = new HashSet<>(ciphers.length);
-        result.addAll(Arrays.asList(ciphers));
+        Set<String> result = new HashSet<>(Arrays.asList(ciphers));
         return result;
     }
 
diff --git a/test/org/apache/tomcat/websocket/server/TestClose.java b/test/org/apache/tomcat/websocket/server/TestClose.java
index 60e9aa5..b1e28a3 100644
--- a/test/org/apache/tomcat/websocket/server/TestClose.java
+++ b/test/org/apache/tomcat/websocket/server/TestClose.java
@@ -86,8 +86,7 @@ public class TestClose extends WebSocketBaseTest {
 
 
     public static void awaitOnClose(CloseCode... codes) {
-        Set<CloseCode> set = new HashSet<>();
-        set.addAll(Arrays.asList(codes));
+        Set<CloseCode> set = new HashSet<>(Arrays.asList(codes));
         awaitOnClose(set);
     }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org