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/10/23 19:53:21 UTC
svn commit: r829146 -
/jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JSR223TestElement.java
Author: sebb
Date: Fri Oct 23 17:53:20 2009
New Revision: 829146
URL: http://svn.apache.org/viewvc?rev=829146&view=rev
Log:
Unused imports
Ensure file is always closed
Use correct eval() method
Don't default to Groovy engine
Don't continue if implementation is not found
Modified:
jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JSR223TestElement.java
Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JSR223TestElement.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JSR223TestElement.java?rev=829146&r1=829145&r2=829146&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JSR223TestElement.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JSR223TestElement.java Fri Oct 23 17:53:20 2009
@@ -22,19 +22,14 @@
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
-import java.io.PrintStream;
import java.io.Serializable;
import java.util.Properties;
-import javax.script.ScriptContext;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
-import org.apache.bsf.BSFEngine;
-import org.apache.bsf.BSFException;
-import org.apache.bsf.BSFManager;
-import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.IOUtils;
import org.apache.jmeter.samplers.SampleResult;
import org.apache.jmeter.samplers.Sampler;
import org.apache.jmeter.testelement.AbstractTestElement;
@@ -45,8 +40,6 @@
import org.apache.jorphan.util.JOrphanUtils;
import org.apache.log.Logger;
-import sun.security.action.GetLongAction;
-
public abstract class JSR223TestElement extends AbstractTestElement
implements Serializable, Cloneable
{
@@ -81,6 +74,7 @@
return this;
}
+ @Override
public Object clone() {
JSR223TestElement o = (JSR223TestElement) super.clone();
o.init();
@@ -126,22 +120,22 @@
protected void processFileOrScript(ScriptEngineManager sem) throws IOException, ScriptException {
- ScriptEngine scriptEngine = sem.getEngineByName(getScriptLanguage());
+ final String lang = getScriptLanguage();
+ ScriptEngine scriptEngine = sem.getEngineByName(lang);
if (scriptEngine == null) {
- log.warn("Not supported scripting engine");
- setScriptLanguage("groovy");
- scriptEngine = sem.getEngineByName(getScriptLanguage());
- } else {
- System.out.println("Script engine found : " + getScriptLanguage());
+ log.error("Unsupported scripting engine: "+lang);
+ return;
}
File scriptFile = new File(getFilename());
if (scriptFile.exists()) {
- BufferedReader fileReader = new BufferedReader(new FileReader(scriptFile));
- String line;
- while ((line = fileReader.readLine()) != null) {
- scriptEngine.eval(line);
- }
+ BufferedReader fileReader = null;
+ try {
+ fileReader = new BufferedReader(new FileReader(scriptFile));
+ scriptEngine.eval(fileReader);
+ } finally {
+ IOUtils.closeQuietly(fileReader);
+ }
} else {
scriptEngine.eval(getScript());
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org