Author: sebb Date: Wed Apr 23 05:22:09 2008 New Revision: 650843 URL: http://svn.apache.org/viewvc?rev=650843&view=rev Log: The supplied TCPClient implementation no longer treats tcp.eolByte=0 as special. To skip EOL checking, set tcp.eolByte=1000 (or some other value which is not a valid byte)
Modified: jakarta/jmeter/trunk/bin/jmeter.properties jakarta/jmeter/trunk/docs/api/index-all.html jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClient.html jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/package-summary.html jakarta/jmeter/trunk/docs/changes.html jakarta/jmeter/trunk/docs/usermanual/component_reference.html jakarta/jmeter/trunk/src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.java jakarta/jmeter/trunk/xdocs/changes.xml jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml Modified: jakarta/jmeter/trunk/bin/jmeter.properties URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/jmeter.properties?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/bin/jmeter.properties (original) +++ jakarta/jmeter/trunk/bin/jmeter.properties Wed Apr 23 05:22:09 2008 @@ -430,7 +430,8 @@ #tcp.handler=TCPClientImpl # # eolByte = byte value for end of line -#tcp.eolByte=0 +# set this to a value outside the range -128 to +127 to skip eol checking +#tcp.eolByte=1000 # # status.prefix and suffix = strings that enclose the status response code #tcp.status.prefix=Status= Modified: jakarta/jmeter/trunk/docs/api/index-all.html URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/docs/api/index-all.html?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/docs/api/index-all.html (original) +++ jakarta/jmeter/trunk/docs/api/index-all.html Wed Apr 23 05:22:09 2008 @@ -19646,7 +19646,7 @@ <DT><A HREF="org/apache/jmeter/protocol/http/util/accesslog/TCLogParser.html#TCLogParser(java.lang.String)"><B>TCLogParser(String)</B></A> - Constructor for class org.apache.jmeter.protocol.http.util.accesslog.<A HREF="org/apache/jmeter/protocol/http/util/accesslog/TCLogParser.html" title="class in org.apache.jmeter.protocol.http.util.accesslog">TCLogParser</A> <DD> -<DT><A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClient.html" title="interface in org.apache.jmeter.protocol.tcp.sampler"><B>TCPClient</B></A> - interface org.apache.jmeter.protocol.tcp.sampler.<A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClient.html" title="interface in org.apache.jmeter.protocol.tcp.sampler">TCPClient</A>.<DD> <DT><A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html" title="class in org.apache.jmeter.protocol.tcp.sampler"><B>TCPClientImpl</B></A> - class org.apache.jmeter.protocol.tcp.sampler.<A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html" title="class in org.apache.jmeter.protocol.tcp.sampler">TCPClientImpl</A>.<DD> <DT><A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html#TCPClientImpl()"><B>TCPClientImpl()</B></A> - +<DT><A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClient.html" title="interface in org.apache.jmeter.protocol.tcp.sampler"><B>TCPClient</B></A> - interface org.apache.jmeter.protocol.tcp.sampler.<A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClient.html" title="interface in org.apache.jmeter.protocol.tcp.sampler">TCPClient</A>.<DD>Interface required by TCPSampler for TCPClient implementations.<DT><A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html" title="class in org.apache.jmeter.protocol.tcp.sampler"><B>TCPClientImpl</B></A> - class org.apache.jmeter.protocol.tcp.sampler.<A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html" title="class in org.apache.jmeter.protocol.tcp.sampler">TCPClientImpl</A>.<DD>Sample TCPClient implementation<DT><A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html#TCPClientImpl()"><B>TCPClientImpl()</B></A> - Constructor for class org.apache.jmeter.protocol.tcp.sampler.<A HREF="org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html" title="class in org.apache.jmeter.protocol.tcp.sampler">TCPClientImpl</A> <DD> <DT><A HREF="org/apache/jmeter/protocol/tcp/config/gui/TCPConfigGui.html" title="class in org.apache.jmeter.protocol.tcp.config.gui"><B>TCPConfigGui</B></A> - class org.apache.jmeter.protocol.tcp.config.gui.<A HREF="org/apache/jmeter/protocol/tcp/config/gui/TCPConfigGui.html" title="class in org.apache.jmeter.protocol.tcp.config.gui">TCPConfigGui</A>.<DD> <DT><A HREF="org/apache/jmeter/protocol/tcp/config/gui/TCPConfigGui.html#TCPConfigGui()"><B>TCPConfigGui()</B></A> - Modified: jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClient.html URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClient.html?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClient.html (original) +++ jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClient.html Wed Apr 23 05:22:09 2008 @@ -92,10 +92,10 @@ <DT>public interface <B>TCPClient</B></DL> <P> -<DL> -<DT><B>Version:</B></DT> - <DD>$Revision: 493789 $ $Date: 2007-01-07 18:10:21 +0000 (Sun, 07 Jan 2007) $</DD> -</DL> +Interface required by TCPSampler for TCPClient implementations. +<P> + +<P> <HR> <P> Modified: jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html (original) +++ jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html Wed Apr 23 05:22:09 2008 @@ -96,6 +96,10 @@ <DT>public class <B>TCPClientImpl</B><DT>extends <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A><DT>implements <A HREF="../../../../../../org/apache/jmeter/protocol/tcp/sampler/TCPClient.html" title="interface in org.apache.jmeter.protocol.tcp.sampler">TCPClient</A></DL> <P> +Sample TCPClient implementation +<P> + +<P> <HR> <P> Modified: jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/package-summary.html URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/package-summary.html?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/package-summary.html (original) +++ jakarta/jmeter/trunk/docs/api/org/apache/jmeter/protocol/tcp/sampler/package-summary.html Wed Apr 23 05:22:09 2008 @@ -83,7 +83,7 @@ </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD WIDTH="15%"><B><A HREF="../../../../../../org/apache/jmeter/protocol/tcp/sampler/TCPClient.html" title="interface in org.apache.jmeter.protocol.tcp.sampler">TCPClient</A></B></TD> -<TD> </TD> +<TD>Interface required by TCPSampler for TCPClient implementations.</TD> </TR> </TABLE> @@ -97,7 +97,7 @@ </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD WIDTH="15%"><B><A HREF="../../../../../../org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.html" title="class in org.apache.jmeter.protocol.tcp.sampler">TCPClientImpl</A></B></TD> -<TD> </TD> +<TD>Sample TCPClient implementation</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD WIDTH="15%"><B><A HREF="../../../../../../org/apache/jmeter/protocol/tcp/sampler/TCPSampler.html" title="class in org.apache.jmeter.protocol.tcp.sampler">TCPSampler</A></B></TD> Modified: jakarta/jmeter/trunk/docs/changes.html URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/docs/changes.html?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/docs/changes.html (original) +++ jakarta/jmeter/trunk/docs/changes.html Wed Apr 23 05:22:09 2008 @@ -245,6 +245,13 @@ </li> + <li > + The supplied TCPClient implementation no longer treats tcp.eolByte=0 as special. +To skip EOL checking, set tcp.eolByte=1000 (or some other value which is not a valid byte) + + </li> + + </ul> <h4 > Bug fixes @@ -545,6 +552,13 @@ <li > Mail Reader Sampler now creates a sub-sample for each mail. + </li> + + + <li > + The supplied TCPClient implementation no longer treats tcp.eolByte=0 as special. +To skip EOL checking, set tcp.eolByte=1000 (or some other value which is not a valid byte) + </li> Modified: jakarta/jmeter/trunk/docs/usermanual/component_reference.html URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/docs/usermanual/component_reference.html?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/docs/usermanual/component_reference.html (original) +++ jakarta/jmeter/trunk/docs/usermanual/component_reference.html Wed Apr 23 05:22:09 2008 @@ -3133,7 +3133,10 @@ <li > - tcp.eolByte - decimal value. Defines the end of line byte value; used to determine when a response has been received + tcp.eolByte - decimal value. Defines the end of line byte value; used to determine when a response has been received. + JMeter 2.3.1 and earlier used the value zero (0) to mean don't check for EOL bytes; later versions + skip the EOL check if the value is outside the range -128 to +127 (inclusive). Thus zero can now be used as an EOL byte. + </li> Modified: jakarta/jmeter/trunk/src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.java URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.java?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.java (original) +++ jakarta/jmeter/trunk/src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.java Wed Apr 23 05:22:09 2008 @@ -37,17 +37,23 @@ import org.apache.log.Logger; /** - * + * Sample TCPClient implementation * */ public class TCPClientImpl implements TCPClient { - private static Logger log = LoggingManager.getLoggerForClass(); + private static final Logger log = LoggingManager.getLoggerForClass(); - private byte eolByte = (byte) JMeterUtils.getPropDefault("tcp.eolByte", 0); + private int eolInt = JMeterUtils.getPropDefault("tcp.eolByte", 1000); + + private byte eolByte = (byte) eolInt; // -128 to +127 + + private boolean eolIgnore = eolInt < -128 || eolInt > 127; public TCPClientImpl() { super(); - log.info("Using eolByte=" + eolByte); + if (!eolIgnore) { + log.info("Using eolByte=" + eolByte); + } } /* @@ -116,7 +122,7 @@ try { while ((x = is.read(buffer)) > -1) { w.write(buffer, 0, x); - if ((eolByte != 0) && (buffer[x - 1] == eolByte)) { + if (!eolIgnore && (buffer[x - 1] == eolByte)) { break; } } @@ -160,5 +166,6 @@ */ public void setEolByte(byte eolByte) { this.eolByte = eolByte; + eolIgnore = false; } } Modified: jakarta/jmeter/trunk/xdocs/changes.xml URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/changes.xml?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/xdocs/changes.xml (original) +++ jakarta/jmeter/trunk/xdocs/changes.xml Wed Apr 23 05:22:09 2008 @@ -93,6 +93,9 @@ <li>The reference value parameter for intSum() is now optional. As a consequence, if a variable name is used, it must not be a valid integer.</li> <li>The ant-jmeter.jar is no longer shipped with JMeter. See extras/build.xml for how to aquire it.</li> +<li>The supplied TCPClient implementation no longer treats tcp.eolByte=0 as special. +To skip EOL checking, set tcp.eolByte=1000 (or some other value which is not a valid byte) +</li> </ul> <h4>Bug fixes</h4> @@ -162,6 +165,9 @@ <li>Added TESTSTART.MS property / variable = test start time in milliseconds</li> <li>Add POP3S and IMAPS protocols to Mail Reader Sampler.</li> <li>Mail Reader Sampler now creates a sub-sample for each mail.</li> +<li>The supplied TCPClient implementation no longer treats tcp.eolByte=0 as special. +To skip EOL checking, set tcp.eolByte=1000 (or some other value which is not a valid byte) +</li> </ul> <h4>Non-functional changes</h4> Modified: jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml?rev=650843&r1=650842&r2=650843&view=diff ============================================================================== --- jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml (original) +++ jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml Wed Apr 23 05:22:09 2008 @@ -971,7 +971,10 @@ <li>tcp.status.suffix - text that follows a status number</li> <li>tcp.status.properties - name of property file to convert status codes to messages</li> <li>tcp.handler - Name of TCP Handler class (default TCPClientImpl)</li> - <li>tcp.eolByte - decimal value. Defines the end of line byte value; used to determine when a response has been received</li> + <li>tcp.eolByte - decimal value. Defines the end of line byte value; used to determine when a response has been received. + JMeter 2.3.1 and earlier used the value zero (0) to mean don't check for EOL bytes; later versions + skip the EOL check if the value is outside the range -128 to +127 (inclusive). Thus zero can now be used as an EOL byte. + </li> </ul> The class that handles the connection is defined by the property tcp.handler. If not found, the class is then searched for in the package org.apache.jmeter.protocol.tcp.sampler. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]