You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by mg...@apache.org on 2020/12/09 09:03:24 UTC

[tomcat] branch 8.5.x updated: Micro optimization: Use String#[last]indexOf(int) instead of #indexOf(String) where possible

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

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


The following commit(s) were added to refs/heads/8.5.x by this push:
     new 70421ec  Micro optimization: Use String#[last]indexOf(int) instead of #indexOf(String) where possible
70421ec is described below

commit 70421ec208ea723da67b8007235328cba48b43be
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
AuthorDate: Wed Dec 9 10:59:10 2020 +0200

    Micro optimization: Use String#[last]indexOf(int) instead of #indexOf(String) where possible
    
    (cherry picked from commit f41c7d91e2d33f4d09254f7a46df63960238bbc4)
---
 java/org/apache/catalina/mbeans/MBeanDumper.java                    | 6 ++++--
 java/org/apache/catalina/util/NetMask.java                          | 4 ++--
 java/org/apache/catalina/valves/RemoteCIDRValve.java                | 2 +-
 java/org/apache/catalina/valves/rewrite/ResolverImpl.java           | 2 +-
 java/org/apache/catalina/valves/rewrite/RewriteValve.java           | 2 +-
 java/org/apache/jasper/servlet/JspCServletContext.java              | 2 +-
 .../tomcat/util/http/fileupload/util/mime/RFC2231Utility.java       | 4 ++--
 java/org/apache/tomcat/util/modeler/Registry.java                   | 4 ++--
 java/org/apache/tomcat/util/net/IPv6Utils.java                      | 4 ++--
 test/org/apache/coyote/http11/TestHttp11InputBufferCRLF.java        | 4 ++--
 10 files changed, 18 insertions(+), 16 deletions(-)

diff --git a/java/org/apache/catalina/mbeans/MBeanDumper.java b/java/org/apache/catalina/mbeans/MBeanDumper.java
index 83a43a0..23377ac 100644
--- a/java/org/apache/catalina/mbeans/MBeanDumper.java
+++ b/java/org/apache/catalina/mbeans/MBeanDumper.java
@@ -158,8 +158,10 @@ public class MBeanDumper {
         // The only invalid char is \n
         // We also need to keep the string short and split it with \nSPACE
         // XXX TODO
-        int idx=value.indexOf( "\n" );
-        if( idx < 0 ) return value;
+        int idx = value.indexOf('\n');
+        if (idx < 0) {
+            return value;
+        }
 
         int prev=0;
         StringBuilder sb=new StringBuilder();
diff --git a/java/org/apache/catalina/util/NetMask.java b/java/org/apache/catalina/util/NetMask.java
index fa34065..bdad9f9 100644
--- a/java/org/apache/catalina/util/NetMask.java
+++ b/java/org/apache/catalina/util/NetMask.java
@@ -96,7 +96,7 @@ public final class NetMask {
 
         expression = input;
 
-        final int portIdx = input.indexOf(";");
+        final int portIdx = input.indexOf(';');
         final String nonPortPart;
 
         if (portIdx == -1) {
@@ -116,7 +116,7 @@ public final class NetMask {
             }
         }
 
-        final int idx = nonPortPart.indexOf("/");
+        final int idx = nonPortPart.indexOf('/');
 
         /*
          * Handle the "IP only" case first
diff --git a/java/org/apache/catalina/valves/RemoteCIDRValve.java b/java/org/apache/catalina/valves/RemoteCIDRValve.java
index 0675679..0bdf450 100644
--- a/java/org/apache/catalina/valves/RemoteCIDRValve.java
+++ b/java/org/apache/catalina/valves/RemoteCIDRValve.java
@@ -140,7 +140,7 @@ public final class RemoteCIDRValve extends RequestFilterValve {
     @Override
     public boolean isAllowed(final String property) {
 
-        final int portIdx = property.indexOf(";");
+        final int portIdx = property.indexOf(';');
         final int port;
         final String nonPortPart;
 
diff --git a/java/org/apache/catalina/valves/rewrite/ResolverImpl.java b/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
index f4c38e1..a909b5c 100644
--- a/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
+++ b/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
@@ -276,7 +276,7 @@ public class ResolverImpl extends Resolver {
         StringTokenizer tokenizer = new StringTokenizer(fullDN, ",");
         while (tokenizer.hasMoreElements()) {
             String token = tokenizer.nextToken().trim();
-            int pos = token.indexOf("=");
+            int pos = token.indexOf('=');
             if (pos > 0 && (pos + 1) < token.length()) {
                 components.put(token.substring(0, pos), token.substring(pos + 1));
             }
diff --git a/java/org/apache/catalina/valves/rewrite/RewriteValve.java b/java/org/apache/catalina/valves/rewrite/RewriteValve.java
index 88f17f3..3266092 100644
--- a/java/org/apache/catalina/valves/rewrite/RewriteValve.java
+++ b/java/org/apache/catalina/valves/rewrite/RewriteValve.java
@@ -380,7 +380,7 @@ public class RewriteValve extends ValveBase {
                     // Append the query string to the url if there is one and it
                     // hasn't been rewritten
                     String urlStringDecoded = urlDecoded.toString();
-                    int index = urlStringDecoded.indexOf("?");
+                    int index = urlStringDecoded.indexOf('?');
                     String rewrittenQueryStringDecoded;
                     if (index == -1) {
                         rewrittenQueryStringDecoded = null;
diff --git a/java/org/apache/jasper/servlet/JspCServletContext.java b/java/org/apache/jasper/servlet/JspCServletContext.java
index 7298708..2f2ad1f 100644
--- a/java/org/apache/jasper/servlet/JspCServletContext.java
+++ b/java/org/apache/jasper/servlet/JspCServletContext.java
@@ -472,7 +472,7 @@ public class JspCServletContext implements ServletContext {
                         if (entryName.startsWith(jarPath) &&
                                 entryName.length() > jarPath.length()) {
                             // Let the Set implementation handle duplicates
-                            int sep = entryName.indexOf("/", jarPath.length());
+                            int sep = entryName.indexOf('/', jarPath.length());
                             if (sep < 0) {
                                 // This is a file - strip leading "META-INF/resources"
                                 thePaths.add(entryName.substring(18));
diff --git a/java/org/apache/tomcat/util/http/fileupload/util/mime/RFC2231Utility.java b/java/org/apache/tomcat/util/http/fileupload/util/mime/RFC2231Utility.java
index 386b228..a30f34e 100644
--- a/java/org/apache/tomcat/util/http/fileupload/util/mime/RFC2231Utility.java
+++ b/java/org/apache/tomcat/util/http/fileupload/util/mime/RFC2231Utility.java
@@ -51,7 +51,7 @@ public final class RFC2231Utility {
      */
     public static boolean hasEncodedValue(String paramName) {
         if (paramName != null) {
-            return paramName.lastIndexOf("*") == (paramName.length() - 1);
+            return paramName.lastIndexOf('*') == (paramName.length() - 1);
         }
         return false;
     }
@@ -65,7 +65,7 @@ public final class RFC2231Utility {
     public static String stripDelimiter(String paramName) {
         if (hasEncodedValue(paramName)) {
             StringBuilder paramBuilder = new StringBuilder(paramName);
-            paramBuilder.deleteCharAt(paramName.lastIndexOf("*"));
+            paramBuilder.deleteCharAt(paramName.lastIndexOf('*'));
             return paramBuilder.toString();
         }
         return paramName;
diff --git a/java/org/apache/tomcat/util/modeler/Registry.java b/java/org/apache/tomcat/util/modeler/Registry.java
index 7ce734e..545a5ca 100644
--- a/java/org/apache/tomcat/util/modeler/Registry.java
+++ b/java/org/apache/tomcat/util/modeler/Registry.java
@@ -695,8 +695,8 @@ public class Registry implements RegistryMBean, MBeanRegistration {
 
         String className = type;
         String pkg = className;
-        while (pkg.indexOf(".") > 0) {
-            int lastComp = pkg.lastIndexOf(".");
+        while (pkg.indexOf('.') > 0) {
+            int lastComp = pkg.lastIndexOf('.');
             if (lastComp <= 0)
                 return;
             pkg = pkg.substring(0, lastComp);
diff --git a/java/org/apache/tomcat/util/net/IPv6Utils.java b/java/org/apache/tomcat/util/net/IPv6Utils.java
index bccc0a2..19b5d83 100644
--- a/java/org/apache/tomcat/util/net/IPv6Utils.java
+++ b/java/org/apache/tomcat/util/net/IPv6Utils.java
@@ -60,7 +60,7 @@ public class IPv6Utils {
         if (ipv6Address.contains(".")) {
             // IPv4 in IPv6
             // e.g. 0:0:0:0:0:FFFF:127.0.0.1
-            int lastColonPos = ipv6Address.lastIndexOf(":");
+            int lastColonPos = ipv6Address.lastIndexOf(':');
             int lastColonsPos = ipv6Address.lastIndexOf("::");
             if (lastColonsPos >= 0 && lastColonPos == lastColonsPos + 1) {
                 /*
@@ -80,7 +80,7 @@ public class IPv6Utils {
         } else if (ipv6Address.contains("%")) {
             // Zone ID
             // e.g. fe80:0:0:0:f0f0:c0c0:1919:1234%4
-            ipv6AddressLength = ipv6Address.lastIndexOf("%");
+            ipv6AddressLength = ipv6Address.lastIndexOf('%');
         }
 
         StringBuilder result = new StringBuilder();
diff --git a/test/org/apache/coyote/http11/TestHttp11InputBufferCRLF.java b/test/org/apache/coyote/http11/TestHttp11InputBufferCRLF.java
index 786a95a..829912b 100644
--- a/test/org/apache/coyote/http11/TestHttp11InputBufferCRLF.java
+++ b/test/org/apache/coyote/http11/TestHttp11InputBufferCRLF.java
@@ -117,11 +117,11 @@ public class TestHttp11InputBufferCRLF extends TomcatBaseTest {
         // Add with all CRLF split between the CR and LF
         List<String> parts = new ArrayList<>();
         int lastPos = 0;
-        int pos = request.indexOf("\n");
+        int pos = request.indexOf('\n');
         while (pos > -1) {
             parts.add(request.substring(lastPos, pos));
             lastPos = pos;
-            pos = request.indexOf("\n", lastPos + 1);
+            pos = request.indexOf('\n', lastPos + 1);
         }
         parts.add(request.substring(lastPos));
         parameterSets.add(new Object[] { isHttp09, parts.toArray(new String[0]), valid });


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