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 2005/03/05 14:20:11 UTC

cvs commit: jakarta-jmeter/bin jmeter.properties

sebb        2005/03/05 05:20:11

  Modified:    src/protocol/http/org/apache/jmeter/protocol/http/control
                        Tag: rel-2_0 CookieManager.java
               bin      Tag: rel-2_0 jmeter.properties
  Log:
  Bug 33796 - delete cookies with null/empty values
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.26.2.3  +27 -17    jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/control/CookieManager.java
  
  Index: CookieManager.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/control/CookieManager.java,v
  retrieving revision 1.26.2.2
  retrieving revision 1.26.2.3
  diff -u -r1.26.2.2 -r1.26.2.3
  --- CookieManager.java	7 Nov 2004 00:48:00 -0000	1.26.2.2
  +++ CookieManager.java	5 Mar 2005 13:20:11 -0000	1.26.2.3
  @@ -73,6 +73,10 @@
       private SimpleDateFormat dateFormat =
           new SimpleDateFormat("EEEE, dd-MMM-yy HH:mm:ss zzz",Locale.US);
   
  +	// See bug 33796
  +	private static final boolean DELETE_NULL_COOKIES =
  +		JMeterUtils.getPropDefault("CookieManager.delete_null_cookies",true);// $NON-NLS-1$
  +	
       public CookieManager()
       {
   		// The cookie specification requires that the timezone be GMT.
  @@ -211,21 +215,27 @@
        */
       public void add(Cookie c)
       {
  -    	JMeterContext context = getThreadContext();
  -        getCookies().addItem(c);
  -        if(context.isSamplingStarted())
  -        {
  -            context.getVariables().put(c.getName(),c.getValue());
  -        }
  -    }
  -
  -    /**
  -     * Add an empty cookie.
  -     */
  -    public void add()
  -    {
  -        getCookies().addItem(new Cookie());
  -    }
  +		String cv = c.getValue();
  +		if (DELETE_NULL_COOKIES && (null == cv || "".equals(cv))){
  +			removeCookieNamed(c.getName());
  +		} else {
  +	    	JMeterContext context = getThreadContext();
  +	        getCookies().addItem(c);
  +	        if(context.isSamplingStarted())
  +	        {
  +	            context.getVariables().put(c.getName(),c.getValue());
  +	        }
  +		}
  +    }
  +
  +//NOT USED - did it make sense to create an empty cookie, anyway?
  +//    /**
  +//     * Add an empty cookie.
  +//     */
  +//    public void add()
  +//    {
  +//        getCookies().addItem(new Cookie());
  +//    }
       
       /**
        * Remove all the cookies.
  
  
  
  No                   revision
  No                   revision
  1.100.2.11 +6 -2      jakarta-jmeter/bin/jmeter.properties
  
  Index: jmeter.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/bin/jmeter.properties,v
  retrieving revision 1.100.2.10
  retrieving revision 1.100.2.11
  diff -u -r1.100.2.10 -r1.100.2.11
  --- jmeter.properties	18 Feb 2005 01:42:49 -0000	1.100.2.10
  +++ jmeter.properties	5 Mar 2005 13:20:11 -0000	1.100.2.11
  @@ -313,4 +313,8 @@
   #csvread.delimiter=!
   #csvread.delimiter=~
   # The following line has a tab after the =
  -#csvread.delimiter=	
  \ No newline at end of file
  +#csvread.delimiter=	
  +
  +# CookieManager behaviour - should cookies with null/empty values be deleted?
  +# Default is true. Use false to revert to original behaviour
  +#CookieManager.delete_null_cookies=true
  \ No newline at end of file
  
  
  

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