Author: vincenzo
Date: Wed Aug 30 08:15:59 2006
New Revision: 438517

URL: http://svn.apache.org/viewvc?rev=438517&view=rev
Log:
Reduce the number of token.toLowerCase() calls in 
org.apache.james.util.BayesianAnalyzer.buildDegenerated().
See JAMES-600.

Modified:
    james/server/trunk/src/java/org/apache/james/util/BayesianAnalyzer.java

Modified: 
james/server/trunk/src/java/org/apache/james/util/BayesianAnalyzer.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/util/BayesianAnalyzer.java?rev=438517&r1=438516&r2=438517&view=diff
==============================================================================
--- james/server/trunk/src/java/org/apache/james/util/BayesianAnalyzer.java 
(original)
+++ james/server/trunk/src/java/org/apache/james/util/BayesianAnalyzer.java Wed 
Aug 30 08:15:59 2006
@@ -649,6 +649,7 @@
         ArrayList tokens = new ArrayList();
         String header;
         String token;
+        String tokenLower;
         
         // look for a header string termination
         int headerEnd = fullToken.indexOf(':');
@@ -660,18 +661,21 @@
             token = fullToken;
         }
         
+        // prepare a version of the token containing all lower case (for 
performance reasons)
+        tokenLower = token.toLowerCase();
+        
         int end = token.length();
         do {
-            if (!token.substring(0, end).equals(token.substring(0, 
end).toLowerCase())) {
-                tokens.add(header + token.substring(0, end).toLowerCase());
+            if (!token.substring(0, end).equals(tokenLower.substring(0, end))) 
{
+                tokens.add(header + tokenLower.substring(0, end));
                 if (header.length() > 0) {
-                    tokens.add(token.substring(0, end).toLowerCase());
+                    tokens.add(tokenLower.substring(0, end));
                 }
             }
             if (end > 1 && token.charAt(0) >= 'A' && token.charAt(0) <= 'Z') {
-                tokens.add(header + token.charAt(0) + token.substring(1, 
end).toLowerCase());
+                tokens.add(header + token.charAt(0) + tokenLower.substring(1, 
end));
                 if (header.length() > 0) {
-                    tokens.add(token.charAt(0) + token.substring(1, 
end).toLowerCase());
+                    tokens.add(token.charAt(0) + tokenLower.substring(1, end));
                 }
             }
             
@@ -718,7 +722,7 @@
             }
             p *= theDoubleValue;
             np *= (1.0 - theDoubleValue);
-            // System.out.println("Token:" + tps.token + ", p=" + 
theDoubleValue + ", overall p=" + p / (p + np));
+            //System.out.println("Token " + tps + ", p=" + theDoubleValue + ", 
overall p=" + p / (p + np));
         }
         
         return (p / (p + np));



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to