You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by ms...@apache.org on 2003/05/07 17:23:16 UTC

cvs commit: jakarta-jmeter/src/functions/org/apache/jmeter/functions CSVRead.java FileDataContainer.java

mstover1    2003/05/07 08:23:16

  Modified:    .        build.bat
               docs     bugs.html changes.html contributing.html
                        extending.html how_to_use_jmeter.html index.html
                        installing.html jmeter_irc.html license.html
                        running.html todo.html
               src/components/org/apache/jmeter/modifiers
                        UserParameters.java
               src/components/org/apache/jmeter/modifiers/gui
                        UserParametersGui.java
               src/core/org/apache/jmeter/engine/util CompoundVariable.java
               src/core/org/apache/jmeter/functions AbstractFunction.java
                        Function.java
               src/core/org/apache/jmeter/gui
                        AbstractJMeterGuiComponent.java
               src/core/org/apache/jmeter/resources messages.properties
                        messages_de.properties messages_ja.properties
                        messages_no.properties
               src/core/org/apache/jmeter/save DataSource.java
               src/core/org/apache/jmeter/testelement
                        AbstractTestElement.java
  Added:       lib      jdom-b8.jar velocity-1.4-dev.jar
               src/functions/org/apache/jmeter/functions CSVRead.java
                        FileDataContainer.java
  Log:
  Adding new CSV file reader function
  build docs now should work without checking out jakarta-site2
  
  Revision  Changes    Path
  1.9       +0 -2      jakarta-jmeter/build.bat
  
  Index: build.bat
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/build.bat,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- build.bat	7 Apr 2003 14:35:16 -0000	1.8
  +++ build.bat	7 May 2003 15:23:14 -0000	1.9
  @@ -12,8 +12,6 @@
   for %%i in (".\lib\*.jar") do if not "%%i" == ".\lib\jorphan.jar" CALL lcp %%i
   for %%i in (".\ext\*.jar") do CALL lcp %%i
   
  -for %%i in (..\jakarta-site2\lib\*.jar) do CALL lcp %%i
  -
   SET BUILDFILE=build.xml
   echo %LOCALCLASSPATH%
   java -classpath %LOCALCLASSPATH% org.apache.tools.ant.Main -buildfile %BUILDFILE% %1 %2 %3 %4 %5 %6
  
  
  
  1.32      +50 -6     jakarta-jmeter/docs/bugs.html
  
  Index: bugs.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/bugs.html,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- bugs.html	24 Apr 2003 19:59:28 -0000	1.31
  +++ bugs.html	7 May 2003 15:23:14 -0000	1.32
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -55,10 +100,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -67,7 +112,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.51      +50 -6     jakarta-jmeter/docs/changes.html
  
  Index: changes.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/changes.html,v
  retrieving revision 1.50
  retrieving revision 1.51
  diff -u -r1.50 -r1.51
  --- changes.html	24 Apr 2003 19:59:28 -0000	1.50
  +++ changes.html	7 May 2003 15:23:14 -0000	1.51
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -946,10 +991,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -958,7 +1003,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.35      +50 -6     jakarta-jmeter/docs/contributing.html
  
  Index: contributing.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/contributing.html,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- contributing.html	24 Apr 2003 19:59:28 -0000	1.34
  +++ contributing.html	7 May 2003 15:23:14 -0000	1.35
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -198,10 +243,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -210,7 +255,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.32      +50 -6     jakarta-jmeter/docs/extending.html
  
  Index: extending.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/extending.html,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- extending.html	24 Apr 2003 19:59:28 -0000	1.31
  +++ extending.html	7 May 2003 15:23:14 -0000	1.32
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -513,10 +558,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -525,7 +570,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.28      +50 -6     jakarta-jmeter/docs/how_to_use_jmeter.html
  
  Index: how_to_use_jmeter.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/how_to_use_jmeter.html,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- how_to_use_jmeter.html	24 Apr 2003 19:59:28 -0000	1.27
  +++ how_to_use_jmeter.html	7 May 2003 15:23:14 -0000	1.28
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -399,10 +444,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -411,7 +456,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.45      +50 -6     jakarta-jmeter/docs/index.html
  
  Index: index.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/index.html,v
  retrieving revision 1.44
  retrieving revision 1.45
  diff -u -r1.44 -r1.45
  --- index.html	24 Apr 2003 19:59:28 -0000	1.44
  +++ index.html	7 May 2003 15:23:14 -0000	1.45
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -180,10 +225,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -192,7 +237,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.37      +50 -6     jakarta-jmeter/docs/installing.html
  
  Index: installing.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/installing.html,v
  retrieving revision 1.36
  retrieving revision 1.37
  diff -u -r1.36 -r1.37
  --- installing.html	24 Apr 2003 19:59:28 -0000	1.36
  +++ installing.html	7 May 2003 15:23:14 -0000	1.37
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -228,10 +273,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -240,7 +285,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.3       +50 -6     jakarta-jmeter/docs/jmeter_irc.html
  
  Index: jmeter_irc.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/jmeter_irc.html,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- jmeter_irc.html	24 Apr 2003 19:59:28 -0000	1.2
  +++ jmeter_irc.html	7 May 2003 15:23:14 -0000	1.3
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -68,10 +113,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -80,7 +125,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.25      +50 -6     jakarta-jmeter/docs/license.html
  
  Index: license.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/license.html,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- license.html	24 Apr 2003 19:59:28 -0000	1.24
  +++ license.html	7 May 2003 15:23:14 -0000	1.25
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -74,10 +119,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -86,7 +131,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.61      +50 -6     jakarta-jmeter/docs/running.html
  
  Index: running.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/running.html,v
  retrieving revision 1.60
  retrieving revision 1.61
  diff -u -r1.60 -r1.61
  --- running.html	24 Apr 2003 19:59:29 -0000	1.60
  +++ running.html	7 May 2003 15:23:14 -0000	1.61
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -229,10 +274,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -241,7 +286,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.34      +50 -6     jakarta-jmeter/docs/todo.html
  
  Index: todo.html
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/docs/todo.html,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- todo.html	24 Apr 2003 19:59:29 -0000	1.33
  +++ todo.html	7 May 2003 15:23:14 -0000	1.34
  @@ -26,13 +26,58 @@
   </td>
   					 </tr>
   				</table>
  -				<table border="0" width="600" cellspacing="4">
  -					 <tr><td>
  +				<table border="0" width="100%" cellspacing="4">
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
   
   					 <tr>
  -						  <td align="left" valign="top">
  +						  <!-- LEFT SIDE NAVIGATION -->
  +						  <td width="20%" valign="top" nowrap="true">
  +						  	 		  <p><strong>About</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./index.html">Overview</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/builds/jakarta-jmeter/">Download Releases</a>
  +</li>
  +		  				<li>	 <a href="http://cvs.apache.org/builds/jakarta-jmeter/nightly">Download Nightly Tarball</a>
  +</li>
  +		  				<li>	 <a href="./changes.html">Changes</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=JMeter&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time">Known Bugs</a>
  +</li>
  +		  				<li>	 <a href="./license.html">License</a>
  +</li>
  +		  				<li>	 <a href="./contributing.html">Contributors</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Documentation</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="./usermanual/index.html">User Manual</a>
  +</li>
  +		  				<li>	 <a href="./extending/index.html">Developer Manual</a>
  +</li>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterProjectPages">JMeter Wiki</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>JMeter Resources</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?JMeterLinks">JMeter Articles</a>
  +</li>
  +		  				<li>	 <a href="./jmeter_irc.html">JMeter on IRC</a>
  +</li>
  +		  		  </ul>
  +	 		  <p><strong>Community</strong></p>
  +		  <ul>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  +</li>
  +		  				<li>	 <a href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
  +</li>
  +		  		  </ul>
  +	 						  </td>
  +						  <td width="80%" align="left" valign="top">
   						  						  									 <table border="0" cellspacing="0" cellpadding="2" width="100%">
   		<tr><td bgcolor="#525D76">
   		  <font color="#ffffff" face="arial,helvetica,sanserif">
  @@ -65,10 +110,10 @@
   					 </tr>
   
   					 <!-- FOOTER -->
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <hr noshade="" size="1"/>
   					 </td></tr>
  -					 <tr><td>
  +					 <tr><td colspan="2">
   						  <div align="center"><font color="#525D76" size="-1"><em>
   						  Copyright &#169; 1999-2001, Apache Software Foundation
   						  </em></font></div>
  @@ -77,7 +122,6 @@
   		  </body>
   	 </html>
   <!-- end the processing -->
  -
   
   
   
  
  
  
  1.1                  jakarta-jmeter/lib/jdom-b8.jar
  
  	<<Binary file>>
  
  
  1.1                  jakarta-jmeter/lib/velocity-1.4-dev.jar
  
  	<<Binary file>>
  
  
  1.14      +28 -14    jakarta-jmeter/src/components/org/apache/jmeter/modifiers/UserParameters.java
  
  Index: UserParameters.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/modifiers/UserParameters.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- UserParameters.java	3 May 2003 16:24:16 -0000	1.13
  +++ UserParameters.java	7 May 2003 15:23:15 -0000	1.14
  @@ -20,13 +20,14 @@
    * To change this generated comment edit the template variable "typecomment":
    * Window>Preferences>Java>Templates.
    */
  -public class UserParameters extends ConfigTestElement implements Serializable, PreProcessor,LoopIterationListener
  +public class UserParameters extends ConfigTestElement implements Serializable, PreProcessor, LoopIterationListener
   {
   
       public static final String NAMES = "UserParameters.names";
       public static final String THREAD_VALUES = "UserParameters.thread_values";
       public static final String PER_ITERATION = "UserParameters.per_iteration";
       private int counter = 0;
  +    transient private Object lock = new Object();
   
       public CollectionProperty getNames()
       {
  @@ -78,7 +79,7 @@
           setProperty(threadLists);
       }
   
  -    private synchronized CollectionProperty getValues()
  +    private CollectionProperty getValues()
       {
           CollectionProperty threadValues = (CollectionProperty) getProperty(THREAD_VALUES);
           if (threadValues.size() > 0)
  @@ -90,20 +91,20 @@
               return new CollectionProperty("noname", new LinkedList());
           }
       }
  -    
  +
       public boolean isPerIteration()
       {
           return getPropertyAsBoolean(PER_ITERATION);
       }
  -    
  +
       public void setPerIteration(boolean perIter)
       {
  -        setProperty(new BooleanProperty(PER_ITERATION,perIter));
  +        setProperty(new BooleanProperty(PER_ITERATION, perIter));
       }
   
       public void process()
       {
  -        if(!isPerIteration())
  +        if (!isPerIteration())
           {
               setValues();
           }
  @@ -111,14 +112,17 @@
   
       private void setValues()
       {
  -        PropertyIterator namesIter = getNames().iterator();
  -        PropertyIterator valueIter = getValues().iterator();
  -        JMeterVariables jmvars = JMeterContextService.getContext().getVariables();
  -        while (namesIter.hasNext() && valueIter.hasNext())
  +        synchronized (lock)
           {
  -            String name = namesIter.next().getStringValue();
  -            String value = valueIter.next().getStringValue();
  -            jmvars.put(name, value);
  +            PropertyIterator namesIter = getNames().iterator();
  +            PropertyIterator valueIter = getValues().iterator();
  +            JMeterVariables jmvars = JMeterContextService.getContext().getVariables();
  +            while (namesIter.hasNext() && valueIter.hasNext())
  +            {
  +                String name = namesIter.next().getStringValue();
  +                String value = valueIter.next().getStringValue();
  +                jmvars.put(name, value);
  +            }
           }
       }
   
  @@ -127,7 +131,7 @@
        */
       public void iterationStart(LoopIterationEvent event)
       {
  -        if(isPerIteration())
  +        if (isPerIteration())
           {
               setValues();
           }
  @@ -140,5 +144,15 @@
       public void setJMeterVariables(JMeterVariables jmVars)
       {}
        */
  +
  +    /* (non-Javadoc)
  +     * @see java.lang.Object#clone()
  +     */
  +    public Object clone()
  +    {
  +        UserParameters up = (UserParameters) super.clone();
  +        up.lock = lock;
  +        return up;
  +    }
   
   }
  
  
  
  1.9       +8 -6      jakarta-jmeter/src/components/org/apache/jmeter/modifiers/gui/UserParametersGui.java
  
  Index: UserParametersGui.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/modifiers/gui/UserParametersGui.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- UserParametersGui.java	20 Apr 2003 18:13:11 -0000	1.8
  +++ UserParametersGui.java	7 May 2003 15:23:15 -0000	1.9
  @@ -9,7 +9,6 @@
   import java.util.List;
   
   import javax.swing.Box;
  -import javax.swing.BoxLayout;
   import javax.swing.JButton;
   import javax.swing.JCheckBox;
   import javax.swing.JLabel;
  @@ -22,6 +21,7 @@
   
   import org.apache.jmeter.config.gui.AbstractConfigGui;
   import org.apache.jmeter.gui.util.PowerTableModel;
  +import org.apache.jmeter.gui.util.VerticalPanel;
   import org.apache.jmeter.modifiers.UserParameters;
   import org.apache.jmeter.testelement.TestElement;
   import org.apache.jmeter.testelement.property.CollectionProperty;
  @@ -113,16 +113,18 @@
   
   	private void init() {
           setBorder(makeBorder());
  -		setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
  -        add(makeTitlePanel());
  +		setLayout(new BorderLayout());
  +        JPanel vertPanel = new VerticalPanel();
  +        vertPanel.add(makeTitlePanel());
   
           perIterationCheck = new JCheckBox(JMeterUtils.getResString("update_per_iter"), true);
           Box perIterationPanel = Box.createHorizontalBox();
           perIterationPanel.add(perIterationCheck);
           perIterationPanel.add(Box.createHorizontalGlue());
  -        add(perIterationPanel);
  -
  -		add(makeParameterPanel());
  +        vertPanel.add(perIterationPanel);
  +        add(vertPanel,BorderLayout.NORTH);
  +        
  +       add(makeParameterPanel(),BorderLayout.CENTER);
   	}
       
   	private JPanel makeParameterPanel() {
  
  
  
  1.10      +2 -17     jakarta-jmeter/src/core/org/apache/jmeter/engine/util/CompoundVariable.java
  
  Index: CompoundVariable.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/engine/util/CompoundVariable.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- CompoundVariable.java	3 May 2003 15:34:33 -0000	1.9
  +++ CompoundVariable.java	7 May 2003 15:23:15 -0000	1.10
  @@ -144,7 +144,6 @@
   	public String execute() 
   	{
   		JMeterContext context = JMeterContextService.getContext();
  -		setJMeterVariables( context.getVariables() );
   		SampleResult previousResult = context.getPreviousResult();
   		Sampler currentSampler = context.getCurrentSampler();
   		return execute( previousResult, currentSampler );
  @@ -220,20 +219,6 @@
           staticSubstitution = "";
       }
   
  -    public void setJMeterVariables(JMeterVariables threadVars)
  -    {
  -        Iterator iter = compiledComponents.iterator();
  -        while (iter.hasNext())
  -        {
  -            Object item = iter.next();
  -            if (item instanceof Function)
  -            {
  -                ((Function) item).setJMeterVariables(threadVars);
  -            }
  -        }
  -        this.threadVars = threadVars;
  -    }
  -
   	public void setParameters(String parameters)
   		throws InvalidVariableException
   	{
  @@ -513,7 +498,7 @@
          
   	private JMeterVariables getVariables()
   	{
  -		return (JMeterVariables)varMap.get(Thread.currentThread().getName());
  +		return JMeterContextService.getContext().getVariables();
   	}
   
   
  
  
  
  1.5       +1 -9      jakarta-jmeter/src/core/org/apache/jmeter/functions/AbstractFunction.java
  
  Index: AbstractFunction.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/functions/AbstractFunction.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- AbstractFunction.java	10 Mar 2003 17:27:58 -0000	1.4
  +++ AbstractFunction.java	7 May 2003 15:23:15 -0000	1.5
  @@ -32,7 +32,6 @@
   	public String execute() throws InvalidVariableException
   	{
   		JMeterContext context = JMeterContextService.getContext();
  -		setJMeterVariables( context.getVariables() );
   		SampleResult previousResult = context.getPreviousResult();
   		Sampler currentSampler = context.getCurrentSampler();
   		return execute( previousResult, currentSampler );
  @@ -124,14 +123,7 @@
   	
   	protected JMeterVariables getVariables()
   	{
  -		return (JMeterVariables)threadVariables.get(Thread.currentThread().getName());
  -	}
  -	
  -	/**
  -	 * @see org.apache.jmeter.functions.Function#setJMeterVariables(JMeterVariables)
  -	 */
  -	public void setJMeterVariables(JMeterVariables jmv) {
  -		threadVariables.put(jmv.getThreadName(),jmv);
  +		return JMeterContextService.getContext().getVariables();
   	}
   
   }
  
  
  
  1.3       +1 -8      jakarta-jmeter/src/core/org/apache/jmeter/functions/Function.java
  
  Index: Function.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/functions/Function.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Function.java	10 Mar 2003 17:27:58 -0000	1.2
  +++ Function.java	7 May 2003 15:23:15 -0000	1.3
  @@ -1,11 +1,10 @@
   package org.apache.jmeter.functions;
   
  -import java.util.List;
   import java.util.Collection;
  +import java.util.List;
   
   import org.apache.jmeter.samplers.SampleResult;
   import org.apache.jmeter.samplers.Sampler;
  -import org.apache.jmeter.threads.JMeterVariables;
   
   /**
    * @author mstover
  @@ -58,10 +57,4 @@
   	 * blank strings, one for each argument.
   	 */
   	public List getArgumentDesc();
  -	
  -	/**
  -	 * A means of giving the function access to built-in JMeter data
  -	 * such as iteration number, current thread name, etc
  -	 */
  -	public void setJMeterVariables(JMeterVariables jmv);
   }
  
  
  
  1.18      +1 -1      jakarta-jmeter/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java
  
  Index: AbstractJMeterGuiComponent.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/AbstractJMeterGuiComponent.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- AbstractJMeterGuiComponent.java	2 May 2003 21:38:09 -0000	1.17
  +++ AbstractJMeterGuiComponent.java	7 May 2003 15:23:15 -0000	1.18
  @@ -94,7 +94,7 @@
   	extends JPanel
   	implements JMeterGUIComponent
   {
  -    private static Logger log = LoggingManager.getLoggerFor(JMeterUtils.GUI);
  +    protected static Logger log = LoggingManager.getLoggerFor(JMeterUtils.GUI);
   	private boolean enabled = true;
   	private JMeterTreeNode node;
   	
  
  
  
  1.39      +3 -1      jakarta-jmeter/src/core/org/apache/jmeter/resources/messages.properties
  
  Index: messages.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages.properties,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- messages.properties	2 May 2003 21:50:54 -0000	1.38
  +++ messages.properties	7 May 2003 15:23:15 -0000	1.39
  @@ -347,4 +347,6 @@
   throughput_control_tplabel=Throughput
   throughput_control_bynumber_label=Total Executions
   throughput_control_bypercent_label=Percent Executions
  -throughput_control_perthread_label=Per User
  \ No newline at end of file
  +throughput_control_perthread_label=Per User
  +csvread_file_file_name=CSV file to get values from
  +column_number=Column number of CSV file
  \ No newline at end of file
  
  
  
  1.32      +3 -1      jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_de.properties
  
  Index: messages_de.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_de.properties,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- messages_de.properties	29 Apr 2003 13:40:37 -0000	1.31
  +++ messages_de.properties	7 May 2003 15:23:15 -0000	1.32
  @@ -337,4 +337,6 @@
   simple_data_writer_title=Simple Data Writer
   include_equals=Include Equals?
   simple_config_element=Simple Config Element
  -update_per_iter=Update Once Per Iteration
  \ No newline at end of file
  +update_per_iter=Update Once Per Iteration
  +csvread_file_file_name=CSV file to get values from
  +column_number=Column number of CSV file
  \ No newline at end of file
  
  
  
  1.28      +3 -1      jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_ja.properties
  
  Index: messages_ja.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_ja.properties,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- messages_ja.properties	29 Apr 2003 13:40:37 -0000	1.27
  +++ messages_ja.properties	7 May 2003 15:23:15 -0000	1.28
  @@ -332,4 +332,6 @@
   simple_data_writer_title=Simple Data Writer
   include_equals=Include Equals?
   simple_config_element=Simple Config Element
  -update_per_iter=Update Once Per Iteration
  \ No newline at end of file
  +update_per_iter=Update Once Per Iteration
  +csvread_file_file_name=CSV file to get values from
  +column_number=Column number of CSV file
  \ No newline at end of file
  
  
  
  1.28      +3 -1      jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_no.properties
  
  Index: messages_no.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_no.properties,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- messages_no.properties	29 Apr 2003 13:40:37 -0000	1.27
  +++ messages_no.properties	7 May 2003 15:23:15 -0000	1.28
  @@ -324,4 +324,6 @@
   simple_data_writer_title=Simple Data Writer
   include_equals=Include Equals?
   simple_config_element=Simple Config Element
  -update_per_iter=Update Once Per Iteration
  \ No newline at end of file
  +update_per_iter=Update Once Per Iteration
  +csvread_file_file_name=CSV file to get values from
  +column_number=Column number of CSV file
  \ No newline at end of file
  
  
  
  1.4       +55 -1     jakarta-jmeter/src/core/org/apache/jmeter/save/DataSource.java
  
  Index: DataSource.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/save/DataSource.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- DataSource.java	5 Feb 2003 05:12:09 -0000	1.3
  +++ DataSource.java	7 May 2003 15:23:15 -0000	1.4
  @@ -1,3 +1,57 @@
  +/*
  + * ====================================================================
  + * The Apache Software License, Version 1.1
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + * notice, this list of conditions and the following disclaimer.
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + * notice, this list of conditions and the following disclaimer in
  + * the documentation and/or other materials provided with the
  + * distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + * if any, must include the following acknowledgment:
  + * "This product includes software developed by the
  + * Apache Software Foundation (http://www.apache.org/)."
  + * Alternately, this acknowledgment may appear in the software itself,
  + * if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Apache" and "Apache Software Foundation" and
  + * "Apache JMeter" must not be used to endorse or promote products
  + * derived from this software without prior written permission. For
  + * written permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + * "Apache JMeter", nor may "Apache" appear in their name, without
  + * prior written permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
   package org.apache.jmeter.save;
   
   
  @@ -67,7 +121,7 @@
   
       /**
        * Save a SampleResult object to the specified file.  The file must have been initialized
  -     * with a {@link beginRecording(String,int,int,int)} call.
  +     * with a (link beginRecording(String,int,int,int)) call.
        * @param filename
        * @param result
        * @throws JMeterSaveException
  
  
  
  1.18      +2 -2      jakarta-jmeter/src/core/org/apache/jmeter/testelement/AbstractTestElement.java
  
  Index: AbstractTestElement.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/testelement/AbstractTestElement.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- AbstractTestElement.java	1 May 2003 18:51:05 -0000	1.17
  +++ AbstractTestElement.java	7 May 2003 15:23:16 -0000	1.18
  @@ -27,7 +27,7 @@
   
   public abstract class AbstractTestElement implements TestElement, Serializable
   {
  -    transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.elements");
  +    protected static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.elements");
   
       private Map propMap = Collections.synchronizedMap(new HashMap());
   
  
  
  
  1.1                  jakarta-jmeter/src/functions/org/apache/jmeter/functions/CSVRead.java
  
  Index: CSVRead.java
  ===================================================================
  /*
   * ====================================================================
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 2001 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   * notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   * notice, this list of conditions and the following disclaimer in
   * the documentation and/or other materials provided with the
   * distribution.
   *
   * 3. The end-user documentation included with the redistribution,
   * if any, must include the following acknowledgment:
   * "This product includes software developed by the
   * Apache Software Foundation (http://www.apache.org/)."
   * Alternately, this acknowledgment may appear in the software itself,
   * if and wherever such third-party acknowledgments normally appear.
   *
   * 4. The names "Apache" and "Apache Software Foundation" and
   * "Apache JMeter" must not be used to endorse or promote products
   * derived from this software without prior written permission. For
   * written permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache",
   * "Apache JMeter", nor may "Apache" appear in their name, without
   * prior written permission of the Apache Software Foundation.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   */
  package org.apache.jmeter.functions;
  
  import java.io.BufferedReader;
  import java.io.FileReader;
  import java.io.Serializable;
  import java.util.ArrayList;
  import java.util.Collection;
  import java.util.Hashtable;
  import java.util.LinkedList;
  import java.util.List;
  
  import org.apache.jmeter.samplers.SampleResult;
  import org.apache.jmeter.samplers.Sampler;
  import org.apache.jmeter.threads.JMeterVariables;
  import org.apache.jmeter.util.JMeterUtils;
  import org.apache.log.Hierarchy;
  import org.apache.log.Logger;
  
  /**
  /**
   * @author Cyrus M.
   * Syntax is similar to StringFromFile function.
   * The function represented by this class allows data to be read from CSV
  files.
   * The function allows the test to line-thru the data in the CSV file - one
  line per each test.
   * E.g. inserting the following in the test scripts :
   *   ${_CSVRead(c:/BOF/abcd.csv,0)}       // read (first) line of
  'c:/BOF/abcd.csv' , return the 1st column ( represented by the '0'),
   *   ${_CSVRead(c:/BOF/abcd.csv,1)}       // read (first) line of
  'c:/BOF/abcd.csv' , return the 2nd column ( represented by the '1'),
   *   ${_CSVRead(c:/BOF/abcd.csv,next())}  // Go to next line of
  'c:/BOF/abcd.csv'
   *
   * NOTE: A single instance of file is opened and used for all threads.
   * For example, if thread-1 reads the first line and then issues a 'next()'
  , then thread-2 will be starting from line-1.
   *
   * Use CSVRead to isolate the file usage between different threads .
   *
   */
  
  /*
   * It appears that JMeter instantiates a new copy of each function for
  every reference in a Sampler
   * or elsewhere.
   */
  
  public class CSVRead extends AbstractFunction implements Serializable
  {
      transient protected static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.CSVRead");
  
      private static final String KEY = "__CSVRead"; // Function name (only 1 _)
  
      protected static final List desc = new LinkedList();
  
      protected static FileDataContainer fileData;
  
      protected String myValue = "<please supply a file>"; // Default value
      protected String myName = "CSVRead_"; // Name to store value in
      protected Object[] values;
      protected BufferedReader myBread; // Buffered reader
      protected boolean reopenFile = true; // Set from parameter list one day...
  
      protected static Hashtable threadData = null;
  
      static {
          desc.add(JMeterUtils.getResString("csvread_file_file_name"));
          desc.add(JMeterUtils.getResString("column_number"));
      }
  
      public CSVRead()
      {
          myName = "ThreadStringFromFile_";
      }
      public Object clone()
      {
          CSVRead newReader = new CSVRead();
          return newReader;
      }
      /**
       * @see org.apache.jmeter.functions.Function#execute(SampleResult, Sampler)
       */
      public synchronized String execute(SampleResult previousResult, Sampler currentSampler) throws InvalidVariableException
      {
          try
          {
  
              JMeterVariables vars = getVariables();
              ArrayList processedLines = null;
              String fileName = null;
  
              fileName = ((org.apache.jmeter.engine.util.CompoundVariable) values[0]).execute();
              myName = ((org.apache.jmeter.engine.util.CompoundVariable) values[1]).execute();
  
              // instantiates the fileDataContainer if one not already present.
              FileDataContainer fileData = getFileData(fileName);
  
              // if argument is 'next' - go to the next line
              if (myName.equals("next()") || myName.equals("next"))
              {
                  fileData.incrementRowPosition();
                  storeCurrentLine(null);
              }
  
              // see if we already have read a line for this thread ...
              processedLines = reloadCurrentLine();
  
              // if no lines associated with this thread - then read, process and store ...
              if (fileData != null && processedLines == null)
              {
                  processedLines = (ArrayList) fileData.getNextLine();
                  this.storeCurrentLine(processedLines);
              }
  
              //  get the current line number
              int columnIndex = 0;
              try
              {
                  columnIndex = Integer.parseInt(myName);
                  myValue = (String) processedLines.get(columnIndex);
              }
              catch (Exception e)
              {
                  myValue = "";
              }
  
              log.debug(Thread.currentThread().getName() + ">>>> execute (" + fileName + " , " + myName + ")   " + this.hashCode());
  
          }
          catch (Exception e)
          {
              log.error("execute", e);
          }
          return myValue;
  
      }
      /**
       * @see org.apache.jmeter.functions.Function#getArgumentDesc()
       */
      public List getArgumentDesc()
      {
          return desc;
      }
      /**
       * get the FileDataContainer
       */
      protected synchronized FileDataContainer getFileData(String fileName) throws java.io.IOException
      {
          if (fileData == null)
          {
              fileData = load(fileName);
          }
  
          return fileData;
      }
      /**
       * reset - resets the file - so the file is read in the next iteration
       */
  
      protected String getId()
      {
          return "" + Thread.currentThread().hashCode();
      }
  
      /**
       * @see org.apache.jmeter.functions.Function#getReferenceKey()
       */
      public String getReferenceKey()
      {
          return KEY;
      }
      /**
       * Insert the method's description here.
       * Creation date: (24/03/2003 17:11:30)
       * @return java.util.Hashtable
       */
      protected static synchronized java.util.Hashtable getThreadData()
      {
          if (threadData == null)
          {
              threadData = new Hashtable();
          }
  
          return threadData;
      }
      /**
       * @see org.apache.jmeter.functions.Function#execute(SampleResult,
      Sampler)
       */
      private synchronized FileDataContainer load(String fileName) throws java.io.IOException
      {
          FileDataContainer fileData = new FileDataContainer();
          openFile(fileName);
  
          if (null != myBread)
          { // Did we open the file?
  
              try
              {
                  String line = myBread.readLine();
                  while (line != null)
                  {
                      fileData.addLine(line);
                      line = myBread.readLine();
                  }
                  myBread.close();
                  setFileData(fileData);
                  return fileData;
              }
              catch (java.io.IOException e)
              {
                  log.error("load(" + fileName + ")", e);
                  throw e;
              }
          }
          return fileData;
      }
      private void openFile(String fileName)
      {
          try
          {
              FileReader fis = new FileReader(fileName);
              myBread = new BufferedReader(fis);
          }
          catch (Exception e)
          {
              log.error("openFile", e);
          }
      }
      /**
       * this is for version 1.8.1 only -
       * @deprecated
       */
  
      protected ArrayList reloadCurrentLine() throws InvalidVariableException
      {
          log.debug(getId() + "reloaded " + getThreadData().get(getId()));
  
          return (ArrayList) getThreadData().get(getId());
      }
  
      /**
       * reset - resets the file - so the file is read in the next iteration
       */
  
      protected synchronized void reset()
      {
          log.debug(getId() + "reseting .... ");
          this.setFileData(null);
          CSVRead.threadData = new Hashtable();
      }
  
      /**
       * @see set the FileDataContainer
       */
      protected synchronized void setFileData(FileDataContainer newValue)
      {
          fileData = newValue;
      }
      /**
       * @see org.apache.jmeter.functions.Function#setParameters(String)
       */
      public void setParameters(Collection parameters) throws InvalidVariableException
      {
          log.debug(getId() + "setParameter - Collection" + parameters);
  
          reset();
          values = parameters.toArray();
  
          if (values.length > 2)
              throw new InvalidVariableException();
  
      }
      /**
       * this is for version 1.8.1 only -
       * @deprecated
       */
  
      public void storeCurrentLine(ArrayList currentLine) throws InvalidVariableException
      {
          String id = getId();
          log.debug(id + "storing " + currentLine);
  
          if (currentLine == null)
          {
              getThreadData().remove(id);
          }
          else
          {
              getThreadData().put(id, currentLine);
          }
      }
  
  }
  
  
  1.1                  jakarta-jmeter/src/functions/org/apache/jmeter/functions/FileDataContainer.java
  
  Index: FileDataContainer.java
  ===================================================================
  /*
   * ====================================================================
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 2001 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   * notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   * notice, this list of conditions and the following disclaimer in
   * the documentation and/or other materials provided with the
   * distribution.
   *
   * 3. The end-user documentation included with the redistribution,
   * if any, must include the following acknowledgment:
   * "This product includes software developed by the
   * Apache Software Foundation (http://www.apache.org/)."
   * Alternately, this acknowledgment may appear in the software itself,
   * if and wherever such third-party acknowledgments normally appear.
   *
   * 4. The names "Apache" and "Apache Software Foundation" and
   * "Apache JMeter" must not be used to endorse or promote products
   * derived from this software without prior written permission. For
   * written permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache",
   * "Apache JMeter", nor may "Apache" appear in their name, without
   * prior written permission of the Apache Software Foundation.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   */
  package org.apache.jmeter.functions;
  
  import java.util.ArrayList;
  import java.util.StringTokenizer;
  
  import org.apache.log.Hierarchy;
  import org.apache.log.Logger;
  
  /**
   * Insert the type's description here.
   * Creation date: (20/03/2003 09:37:44)
   * @author: Cyrus Montakab
   */
  public class FileDataContainer
  {
      private ArrayList fileData;
  
      // keeping track on which row was last read
      private int rowPosition = -1;
  
      transient private static Logger log = Hierarchy.getDefaultHierarchy().getLoggerFor("jmeter.FileDataContainer");
  
      /**
       * FileDataContainer constructor comment.
       */
      public FileDataContainer()
      {
          super();
          this.fileData = new ArrayList();
      }
      /**
       * FileDataContainer constructor comment.
       */
      public FileDataContainer(ArrayList newFileData)
      {
          super();
          fileData = newFileData;
      }
      /**
       * Insert the method's description here.
       * Creation date: (20/03/2003 09:39:50)
       * @param newRowPosition int
       */
      public void addLine(String newLine)
      {
          fileData.add(processNextCSVLine(newLine));
      }
      /**
       * Insert the method's description here.
       * Creation date: (20/03/2003 09:39:50)
       * @return java.util.ArrayList
       */
      public java.util.ArrayList getNextLine()
      {
          ArrayList result = null;
          if (fileData != null && fileData.size() > 0)
          {
  
              // ensure row position has been initialized
              if (rowPosition == -1)
              {
                  rowPosition = 0;
              }
  
              result = (ArrayList) fileData.get(rowPosition);
          }
          return result;
      }
      /**
       * Insert the method's description here.
       * Creation date: (20/03/2003 09:39:50)
       * @return int
       */
      public int getRowPosition()
      {
          return rowPosition;
      }
      /**
       * Insert the method's description here.
       * Creation date: (20/03/2003 09:39:50)
       * @param newRowPosition int
       */
      public void incrementRowPosition()
      {
          if (this.fileData != null && fileData.size() > 0)
          {
              rowPosition++;
              if (rowPosition >= fileData.size())
              {
                  rowPosition = 0;
              }
          }
          //    log.debug (Thread.currentThread().getName() + " >>>> incrementRowPosition - returning : "+ rowPosition);
      }
      /**
       *
       * @param theLine
       * @return
       */
      protected ArrayList processNextCSVLine(String theLine)
      {
          ArrayList result = new ArrayList();
          StringTokenizer tokener = new StringTokenizer(theLine,",");
          while(tokener.hasMoreTokens())
          {
              String token = tokener.nextToken();
              result.add(token);
          }
          return result;
      }
  }
  
  

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