The method is currently only called by ResponseAssertion, which was
previously doing:

         result.setFailureMessage(
            new String((byte[]) response.getResponseData()));

[This caused an NPE if the responseData was null.]

At present no extra strings are generated, but I take your point that the
method might prove too popular ...

==

I looked at changing getResponseData() to return an empty byte array instead
of null, but quite a bit of code seemed to rely on checking for null.

I also thought about adding a getResponseDataNotNull() method (but with a
better name!).

I'll probably revert to the empty byte array method - OK?
I'll even make the array static final, just for you ... :-)

S.
-----Original Message-----
From: Jordi Salvat i Alabart [mailto:[EMAIL PROTECTED]
Sent: 02 October 2003 18:33
To: JMeter Developers List
Subject: Re: cvs commit:
jakarta-jmeter/src/core/org/apache/jmeter/samplers SampleResult.java


Hi Sebb.

Such a method generally looks dangerous, since a new String will be 
allocated every time it's called, possibly creating a ton of Garbage (or 
consuming a ton of memory) if there's a lot of responses processed this 
way or they are very large.

Would you mind adding a note to this effect to the method's JavaDoc?

-- 
Salut,

Jordi.

[EMAIL PROTECTED] wrote:
> sebb        2003/10/02 09:18:22
> 
>   Modified:    src/core/org/apache/jmeter/samplers SampleResult.java
>   Log:
>   Add convenience method responseDataToString
>   
>   Revision  Changes    Path
>   1.10      +13 -2
jakarta-jmeter/src/core/org/apache/jmeter/samplers/SampleResult.java
>   
>   Index: SampleResult.java
>   ===================================================================
>   RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/samplers/SampleResult.ja
va,v
>   retrieving revision 1.9
>   retrieving revision 1.10
>   diff -u -r1.9 -r1.10
>   --- SampleResult.java       7 Sep 2003 18:54:53 -0000       1.9
>   +++ SampleResult.java       2 Oct 2003 16:18:21 -0000       1.10
>   @@ -255,6 +255,17 @@
>            return responseData;
>        }
>    
>   +   /**
>   +    * Convenience method to return responseData as a String
>   +    * 
>   +    * @return the responseData as a string. If responseData is null
>   +    * then the empty string is returned, rather than null.
>   +    */
>   +   public String responseDatatoString()
>   +   {
>   +           return (responseData == null) ? "" : new
String(responseData);
>   +   }
>   +
>        public void setSamplerData(String s)
>        {
>            samplerData = s;
>   
>   
>   
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


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

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

Reply via email to