You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@apache.org on 2007/02/10 02:32:11 UTC

svn commit: r505604 - in /tomcat/tc6.0.x/trunk/java/org/apache: catalina/connector/ coyote/ajp/ coyote/http11/ jk/common/ tomcat/util/http/

Author: remm
Date: Fri Feb  9 17:32:10 2007
New Revision: 505604

URL: http://svn.apache.org/viewvc?view=rev&rev=505604
Log:
- Set of minor optimizations.
- Use getLength() less often.
- Submitted by Arvind Srinivasan.

Modified:
    tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
    tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
    tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpProcessor.java
    tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java
    tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalNioOutputBuffer.java
    tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalOutputBuffer.java
    tomcat/tc6.0.x/trunk/java/org/apache/jk/common/MsgAjp.java
    tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/http/Parameters.java

Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java?view=diff&rev=505604&r1=505603&r2=505604
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java Fri Feb  9 17:32:10 2007
@@ -505,8 +505,9 @@
         throws Exception {
 
         ByteChunk bc = uri.getByteChunk();
+        int length = bc.getLength();
         CharChunk cc = uri.getCharChunk();
-        cc.allocate(bc.getLength(), -1);
+        cc.allocate(length, -1);
 
         String enc = connector.getURIEncoding();
         if (enc != null) {
@@ -540,10 +541,10 @@
         byte[] bbuf = bc.getBuffer();
         char[] cbuf = cc.getBuffer();
         int start = bc.getStart();
-        for (int i = 0; i < bc.getLength(); i++) {
+        for (int i = 0; i < length; i++) {
             cbuf[i] = (char) (bbuf[i + start] & 0xff);
         }
-        uri.setChars(cbuf, 0, bc.getLength());
+        uri.setChars(cbuf, 0, length);
 
     }
 
@@ -559,16 +560,17 @@
         
         ByteChunk bc = mb.getByteChunk();
         CharChunk cc = mb.getCharChunk();
-        cc.allocate(bc.getLength(), -1);
+        int length = bc.getLength();
+        cc.allocate(length, -1);
 
         // Default encoding: fast conversion
         byte[] bbuf = bc.getBuffer();
         char[] cbuf = cc.getBuffer();
         int start = bc.getStart();
-        for (int i = 0; i < bc.getLength(); i++) {
+        for (int i = 0; i < length; i++) {
             cbuf[i] = (char) (bbuf[i + start] & 0xff);
         }
-        mb.setChars(cbuf, 0, bc.getLength());
+        mb.setChars(cbuf, 0, length);
 
     }
 

Modified: tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java?view=diff&rev=505604&r1=505603&r2=505604
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java Fri Feb  9 17:32:10 2007
@@ -598,8 +598,9 @@
 
             // Set the given bytes as the content
             ByteChunk bc = (ByteChunk) param;
-            bodyBytes.setBytes(bc.getBytes(), bc.getStart(), bc.getLength());
-            request.setContentLength(bc.getLength());
+            int length = bc.getLength();
+            bodyBytes.setBytes(bc.getBytes(), bc.getStart(), length);
+            request.setContentLength(length);
             first = false;
             empty = false;
             replay = true;

Modified: tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpProcessor.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpProcessor.java?view=diff&rev=505604&r1=505603&r2=505604
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpProcessor.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/coyote/ajp/AjpProcessor.java Fri Feb  9 17:32:10 2007
@@ -586,8 +586,9 @@
 
             // Set the given bytes as the content
             ByteChunk bc = (ByteChunk) param;
-            bodyBytes.setBytes(bc.getBytes(), bc.getStart(), bc.getLength());
-            request.setContentLength(bc.getLength());
+            int length = bc.getLength();
+            bodyBytes.setBytes(bc.getBytes(), bc.getStart(), length);
+            request.setContentLength(length);
             first = false;
             empty = false;
             replay = true;

Modified: tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java?view=diff&rev=505604&r1=505603&r2=505604
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalAprOutputBuffer.java Fri Feb  9 17:32:10 2007
@@ -585,9 +585,9 @@
     protected void write(ByteChunk bc) {
 
         // Writing the byte chunk to the output buffer
-        System.arraycopy(bc.getBytes(), bc.getStart(), buf, pos,
-                         bc.getLength());
-        pos = pos + bc.getLength();
+        int length = bc.getLength();
+        System.arraycopy(bc.getBytes(), bc.getStart(), buf, pos, length);
+        pos = pos + length;
 
     }
 

Modified: tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalNioOutputBuffer.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalNioOutputBuffer.java?view=diff&rev=505604&r1=505603&r2=505604
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalNioOutputBuffer.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalNioOutputBuffer.java Fri Feb  9 17:32:10 2007
@@ -644,9 +644,9 @@
     protected void write(ByteChunk bc) {
 
         // Writing the byte chunk to the output buffer
-        System.arraycopy(bc.getBytes(), bc.getStart(), buf, pos,
-                         bc.getLength());
-        pos = pos + bc.getLength();
+        int length = bc.getLength();
+        System.arraycopy(bc.getBytes(), bc.getStart(), buf, pos, length);
+        pos = pos + length;
 
     }
 

Modified: tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalOutputBuffer.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalOutputBuffer.java?view=diff&rev=505604&r1=505603&r2=505604
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalOutputBuffer.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/InternalOutputBuffer.java Fri Feb  9 17:32:10 2007
@@ -631,9 +631,9 @@
     protected void write(ByteChunk bc) {
 
         // Writing the byte chunk to the output buffer
-        System.arraycopy(bc.getBytes(), bc.getStart(), buf, pos,
-                         bc.getLength());
-        pos = pos + bc.getLength();
+        int length = bc.getLength();
+        System.arraycopy(bc.getBytes(), bc.getStart(), buf, pos, length);
+        pos = pos + length;
 
     }
 
@@ -756,14 +756,15 @@
         public int doWrite(ByteChunk chunk, Response res) 
             throws IOException {
 
+            int length = chunk.getLength();
             if (useSocketBuffer) {
                 socketBuffer.append(chunk.getBuffer(), chunk.getStart(), 
-                                   chunk.getLength());
+                                    length);
             } else {
                 outputStream.write(chunk.getBuffer(), chunk.getStart(), 
-                                   chunk.getLength());
+                                   length);
             }
-            return chunk.getLength();
+            return length;
 
         }
 

Modified: tomcat/tc6.0.x/trunk/java/org/apache/jk/common/MsgAjp.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/jk/common/MsgAjp.java?view=diff&rev=505604&r1=505603&r2=505604
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/jk/common/MsgAjp.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/jk/common/MsgAjp.java Fri Feb  9 17:32:10 2007
@@ -165,8 +165,9 @@
 
         byte[] bytes = bc.getBytes();
         int start=bc.getStart();
-        appendInt( bc.getLength() );
-        cpBytes(bytes, start, bc.getLength());
+        int length = bc.getLength();
+        appendInt( length );
+        cpBytes(bytes, start, length);
         appendByte(0);
     }
 

Modified: tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/http/Parameters.java
URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/http/Parameters.java?view=diff&rev=505604&r1=505603&r2=505604
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/http/Parameters.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/http/Parameters.java Fri Feb  9 17:32:10 2007
@@ -414,15 +414,16 @@
             result = bc.toString();
         } else {
             CharChunk cc = tmpNameC;
-            cc.allocate(bc.getLength(), -1);
+            int length = bc.getLength();
+            cc.allocate(length, -1);
             // Default encoding: fast conversion
             byte[] bbuf = bc.getBuffer();
             char[] cbuf = cc.getBuffer();
             int start = bc.getStart();
-            for (int i = 0; i < bc.getLength(); i++) {
+            for (int i = 0; i < length; i++) {
                 cbuf[i] = (char) (bbuf[i + start] & 0xff);
             }
-            cc.setChars(cbuf, 0, bc.getLength());
+            cc.setChars(cbuf, 0, length);
             result = cc.toString();
             cc.recycle();
         }



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