Author: sebb
Date: Sat Mar  3 18:01:58 2007
New Revision: 514324

URL: http://svn.apache.org/viewvc?view=rev&rev=514324
Log:
Use JMeterUtils pattern Cache

Modified:
    
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/parser/RegexpHTMLParser.java

Modified: 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/parser/RegexpHTMLParser.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/parser/RegexpHTMLParser.java?view=diff&rev=514324&r1=514323&r2=514324
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/parser/RegexpHTMLParser.java
 (original)
+++ 
jakarta/jmeter/branches/rel-2-2/src/protocol/http/org/apache/jmeter/protocol/http/parser/RegexpHTMLParser.java
 Sat Mar  3 18:01:58 2007
@@ -35,7 +35,6 @@
 import org.apache.oro.text.regex.PatternMatcherInput;
 import org.apache.oro.text.regex.Perl5Compiler;
 import org.apache.oro.text.regex.Perl5Matcher;
-import org.apache.oro.text.regex.MalformedPatternException;
 
 /**
  * HtmlParser implementation using regular expressions.
@@ -114,11 +113,6 @@
        private static final int NUM_BASE_GROUPS = 3;
 
        /**
-        * Compiled regular expression.
-        */
-       static Pattern pattern;
-
-       /**
         * Thread-local input:
         */
        private static ThreadLocal localInput = new ThreadLocal() {
@@ -136,17 +130,6 @@
         */
        protected RegexpHTMLParser() {
                super();
-
-               // Compile the regular expression:
-               try {
-                       Perl5Compiler c = new Perl5Compiler();
-                       pattern = c.compile(REGEXP, 
Perl5Compiler.CASE_INSENSITIVE_MASK | Perl5Compiler.SINGLELINE_MASK
-                                       | Perl5Compiler.READ_ONLY_MASK);
-               } catch (MalformedPatternException mpe) {
-                       log.error("Internal error compiling regular expression 
in ParseRegexp.");
-                       log.error("MalformedPatternException - " + mpe);
-                       throw new Error(mpe);
-               }
        }
 
        /*
@@ -163,6 +146,12 @@
                // probably a new PatternMatcherInput working on a byte[] would 
do
                // better.
                input.setInput(new String(html));
+               Pattern pattern=JMeterUtils.getPatternCache().getPattern(
+                               REGEXP, 
+                               Perl5Compiler.CASE_INSENSITIVE_MASK 
+                               | Perl5Compiler.SINGLELINE_MASK
+                               | Perl5Compiler.READ_ONLY_MASK);
+               
                while (matcher.contains(input, pattern)) {
                        MatchResult match = matcher.getMatch();
                        String s;



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

Reply via email to