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 se...@apache.org on 2004/04/03 00:45:03 UTC

cvs commit: jakarta-jmeter/src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler TCPClientImpl.java

sebb        2004/04/02 14:45:03

  Modified:    src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler Tag:
                        rel-2_0 TCPClientImpl.java
  Log:
  Implement write(os,s). Handle eolByte() on read
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.6.2.1   +35 -11    jakarta-jmeter/src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.java
  
  Index: TCPClientImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/protocol/tcp/org/apache/jmeter/protocol/tcp/sampler/TCPClientImpl.java,v
  retrieving revision 1.6
  retrieving revision 1.6.2.1
  diff -u -r1.6 -r1.6.2.1
  --- TCPClientImpl.java	30 Mar 2004 18:07:37 -0000	1.6
  +++ TCPClientImpl.java	2 Apr 2004 22:45:03 -0000	1.6.2.1
  @@ -32,6 +32,7 @@
   import java.io.InterruptedIOException;
   import java.io.OutputStream;
   
  +import org.apache.jmeter.util.JMeterUtils;
   import org.apache.jorphan.logging.LoggingManager;
   import org.apache.log.Logger;
   
  @@ -43,6 +44,7 @@
   public class TCPClientImpl implements TCPClient
   {
   	private static Logger log = LoggingManager.getLoggerForClass();
  +	private byte eolByte = (byte) JMeterUtils.getPropDefault("tcp.eolByte",0);
   
       public TCPClientImpl()
       {
  @@ -69,12 +71,10 @@
           
       }
   
  -    /* (non-Javadoc)
  -     * @see org.apache.jmeter.protocol.tcp.sampler.TCPClient#write(java.io.OutputStream)
  -     */
  -    public String write(OutputStream os)
  -    {
  -		String s = "GET /  HTTP/1.1\nHost: www.dummy.invalid\n\n"; //or get from file etc
  +	/* (non-Javadoc)
  +	 * @see org.apache.jmeter.protocol.tcp.sampler.TCPClient#write(java.io.OutputStream, java.lang.String)
  +	 */
  +	public void write(OutputStream os, String s) {
   		try
           {
               os.write(s.getBytes());
  @@ -85,8 +85,8 @@
               log.debug("Write error",e);
           }
           log.debug("Wrote: "+s);
  -        return s;
  -    }
  +		return;
  +	}
   
   
       /* (non-Javadoc)
  @@ -101,6 +101,8 @@
   			while ((x = is.read(buffer)) > -1)
   			{
   				w.write(buffer, 0, x);
  +				if ((eolByte != 0) && (buffer[x-1] == eolByte)) 
  +					break;
   			}
   		/*
   		 * Timeout is reported as follows:
  @@ -123,7 +125,29 @@
   		}
   		
   		// do we need to close byte array (or flush it?)
  -		log.debug("Read:\n"+w.toString());
  +		log.debug("Read: "+w.size()+ "\n"+w.toString());
   		return w.toString();
       }
  +
  +
  +	/* (non-Javadoc)
  +	 * @see org.apache.jmeter.protocol.tcp.sampler.TCPClient#write(java.io.OutputStream, java.io.InputStream)
  +	 */
  +	public void write(OutputStream os, InputStream is) {
  +		// TODO Auto-generated method stub
  +		return;
  +	}
  +
  +	/**
  +	 * @return Returns the eolByte.
  +	 */
  +	public byte getEolByte() {
  +		return eolByte;
  +	}
  +	/**
  +	 * @param eolByte The eolByte to set.
  +	 */
  +	public void setEolByte(byte eolByte) {
  +		this.eolByte = eolByte;
  +	}
   }
  
  
  

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