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/12/15 00:12:58 UTC
svn commit: r890544 - in /jakarta/jmeter/trunk:
src/core/org/apache/jmeter/resources/messages.properties
src/functions/org/apache/jmeter/functions/FileToString.java
xdocs/usermanual/functions.xml
Author: sebb
Date: Mon Dec 14 23:12:57 2009
New Revision: 890544
URL: http://svn.apache.org/viewvc?rev=890544&view=rev
Log:
Add optional encoding parameter to FileToString function
Modified:
jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties
jakarta/jmeter/trunk/src/functions/org/apache/jmeter/functions/FileToString.java
jakarta/jmeter/trunk/xdocs/usermanual/functions.xml
Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties?rev=890544&r1=890543&r2=890544&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/resources/messages.properties Mon Dec 14 23:12:57 2009
@@ -799,7 +799,8 @@
stopping_test=Shutting down all test threads. Please be patient.
stopping_test_failed=One or more test threads won't exit; see log file.
stopping_test_title=Stopping Test
-string_from_file_file_name=Enter full path to file
+string_from_file_encoding=File encoding if not the platform default (opt)
+string_from_file_file_name=Enter path (absolute or relative) to file
string_from_file_seq_final=Final file sequence number (opt)
string_from_file_seq_start=Start file sequence number (opt)
summariser_title=Generate Summary Results
Modified: jakarta/jmeter/trunk/src/functions/org/apache/jmeter/functions/FileToString.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/functions/org/apache/jmeter/functions/FileToString.java?rev=890544&r1=890543&r2=890544&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/functions/org/apache/jmeter/functions/FileToString.java (original)
+++ jakarta/jmeter/trunk/src/functions/org/apache/jmeter/functions/FileToString.java Mon Dec 14 23:12:57 2009
@@ -39,6 +39,7 @@
*
* Parameters:
* - file name
+ * - file encoding (optional)
* - variable name (optional)
*
* Returns:
@@ -58,14 +59,17 @@
static {
desc.add(JMeterUtils.getResString("string_from_file_file_name"));//$NON-NLS-1$
+ desc.add(JMeterUtils.getResString("string_from_file_encoding"));//$NON-NLS-1$
desc.add(JMeterUtils.getResString("function_name_paropt"));//$NON-NLS-1$
}
private static final int MIN_PARAM_COUNT = 1;
- private static final int MAX_PARAM_COUNT = 2;
+ private static final int MAX_PARAM_COUNT = 3;
- private static final int PARAM_NAME = 2;
+ private static final int ENCODING = 2;
+
+ private static final int PARAM_NAME = 3;
private Object[] values;
@@ -79,6 +83,11 @@
String fileName = ((CompoundVariable) values[0]).execute();
+ String encoding = null;//means platform default
+ if (values.length >= ENCODING) {
+ encoding = ((CompoundVariable) values[ENCODING - 1]).execute().trim();
+ }
+
String myName = "";//$NON-NLS-1$
if (values.length >= PARAM_NAME) {
myName = ((CompoundVariable) values[PARAM_NAME - 1]).execute().trim();
@@ -87,7 +96,7 @@
String myValue = ERR_IND;
try {
- myValue = FileUtils.readFileToString(new File(fileName), null);
+ myValue = FileUtils.readFileToString(new File(fileName), encoding);
} catch (IOException e) {
log.warn("Could not read file: "+fileName+" "+e.getMessage());
throw new JMeterStopThreadException("End of sequence");
Modified: jakarta/jmeter/trunk/xdocs/usermanual/functions.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/usermanual/functions.xml?rev=890544&r1=890543&r2=890544&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/usermanual/functions.xml (original)
+++ jakarta/jmeter/trunk/xdocs/usermanual/functions.xml Mon Dec 14 23:12:57 2009
@@ -1105,11 +1105,14 @@
<property name="File Name" required="Yes">Path to the file name.
(The path can be relative to the JMeter launch directory)
</property>
+ <property name="File encoding if not the platform default" required="No">
+ The encoding to be used to read the file. If not specified, the platform default is used.
+ </property>
<property name="Variable Name" required="No">
A reference name - refName - for reusing the value created by this function. Stored values are of the form ${refName}.
</property>
</properties>
-<p>The file name parameter and reference name parameter (if supplied) are resolved every time the function is executed.</p>
+<p>The file name, encoding and reference name parameters are resolved every time the function is executed.</p>
</component>
</subsection>
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org