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 2009/09/23 16:47:49 UTC
svn commit: r818125 -
/jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java
Author: sebb
Date: Wed Sep 23 14:47:49 2009
New Revision: 818125
URL: http://svn.apache.org/viewvc?rev=818125&view=rev
Log:
Add utility method setResponseData(text, encoding) for samplers that generate strings rather than bytes.
Modified:
jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java
Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java?rev=818125&r1=818124&r2=818125&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java Wed Sep 23 14:47:49 2009
@@ -22,6 +22,7 @@
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
+import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
@@ -527,6 +528,27 @@
}
/**
+ * Sets the encoding and responseData attributes of the SampleResult object.
+ *
+ * @param response the new responseData value (String)
+ * @param encoding the encoding to set and then use (if null, use platform default)
+ *
+ */
+ public void setResponseData(final String response, final String encoding) {
+ String defaultEncodingName = Charset.defaultCharset().name();
+ String encodeUsing = encoding != null? encoding : defaultEncodingName;
+ try {
+ responseData = response.getBytes(encodeUsing);
+ setDataEncoding(encodeUsing);
+ } catch (UnsupportedEncodingException e) {
+ log.warn("Could not convert string using "+encodeUsing+
+ ", using default encoding: "+defaultEncodingName+" "+e.getLocalizedMessage());
+ responseData = response.getBytes();
+ setDataEncoding(defaultEncodingName);
+ }
+ }
+
+ /**
* Gets the responseData attribute of the SampleResult object.
* <p>
* Note that some samplers may not store all the data, in which case
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org