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 2006/04/05 20:57:56 UTC

svn commit: r391718 - /jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java

Author: sebb
Date: Wed Apr  5 11:57:54 2006
New Revision: 391718

URL: http://svn.apache.org/viewcvs?rev=391718&view=rev
Log:
Ensure the transient object is recreated by the server

Modified:
    jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java

Modified: jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java?rev=391718&r1=391717&r2=391718&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java (original)
+++ jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/assertions/BeanShellAssertion.java Wed Apr  5 11:57:54 2006
@@ -1,4 +1,3 @@
-// $Header$
 /*
  * Copyright 2003-2004 The Apache Software Foundation.
  *
@@ -39,7 +38,7 @@
  * @version $Revision$ Updated on: $Date$
  */
 public class BeanShellAssertion extends AbstractTestElement implements Serializable, Assertion {
-	private static Logger log = LoggingManager.getLoggerForClass();
+	private static final Logger log = LoggingManager.getLoggerForClass();
 
 	public static final String FILENAME = "BeanShellAssertion.filename"; //$NON-NLS-1$
 
@@ -47,12 +46,23 @@
 
 	public static final String PARAMETERS = "BeanShellAssertion.parameters"; //$NON-NLS-1$
 
+	// Not serialised - recreated as needed
 	transient private BeanShellInterpreter bshInterpreter = null;
 
 	// can be specified in jmeter.properties
 	public static final String INIT_FILE = "beanshell.assertion.init"; //$NON-NLS-1$
 
 	public BeanShellAssertion() {
+		init();
+	}
+
+	// Ensure deserialisation works in server
+	private Object readResolve(){
+		init();
+		return this;
+	}
+
+	private void init(){
 		try {
 			bshInterpreter = new BeanShellInterpreter();
 			String init = JMeterUtils.getProperty(INIT_FILE);
@@ -65,9 +75,8 @@
 			}
 		} catch (ClassNotFoundException e) {
 			log.error("Could not establish BeanShellInterpreter: " + e);
-		}
+		}		
 	}
-
 	public String getScript() {
 		return getPropertyAsString(SCRIPT);
 	}
@@ -99,19 +108,14 @@
 			String fileName = getFilename();
 
 			bshInterpreter.set("FileName", getFilename());//$NON-NLS-1$
-			bshInterpreter.set("Parameters", getParameters());// as a single
-																// line
-																// $NON-NLS-1$
+			// Set params as a single line
+			bshInterpreter.set("Parameters", getParameters()); // $NON-NLS-1$
 			bshInterpreter.set("bsh.args",//$NON-NLS-1$
 					JOrphanUtils.split(getParameters(), " "));//$NON-NLS-1$
 
 			// Add SamplerData for consistency with BeanShell Sampler
-			bshInterpreter.set("SampleResult", response);// Raw access to the
-															// response
-															// //$NON-NLS-1$
-			bshInterpreter.set("Response", response);// Raw access to the
-														// response
-														// //$NON-NLS-1$
+			bshInterpreter.set("SampleResult", response); //$NON-NLS-1$
+			bshInterpreter.set("Response", response); //$NON-NLS-1$
 			bshInterpreter.set("ResponseData", response.getResponseData());//$NON-NLS-1$
 			bshInterpreter.set("ResponseCode", response.getResponseCode());//$NON-NLS-1$
 			bshInterpreter.set("ResponseMessage", response.getResponseMessage());//$NON-NLS-1$



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