Author: sebb
Date: Tue Mar 14 10:57:55 2006
New Revision: 385855

URL: http://svn.apache.org/viewcvs?rev=385855&view=rev
Log:
Rename BSH test elements. Include basic process() code.
TODO: add file handling and script arguments

Added:
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessor.java
      - copied, changed from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractor.java
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorBeanInfo.java
      - copied, changed from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorBeanInfo.java
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorResources.properties
      - copied, changed from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorResources.properties
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessor.java
      - copied, changed from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifier.java
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorBeanInfo.java
      - copied, changed from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierBeanInfo.java
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorResources.properties
      - copied, changed from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierResources.properties
Removed:
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractor.java
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorBeanInfo.java
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorResources.properties
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifier.java
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierBeanInfo.java
    
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierResources.properties

Copied: 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessor.java
 (from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractor.java)
URL: 
http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessor.java?p2=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessor.java&p1=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractor.java&r1=385618&r2=385855&rev=385855&view=diff
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractor.java
 (original)
+++ 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessor.java
 Tue Mar 14 10:57:55 2006
@@ -20,6 +20,7 @@
 import java.io.Serializable;
 
 import org.apache.jmeter.processor.PostProcessor;
+import org.apache.jmeter.samplers.SampleResult;
 import org.apache.jmeter.testbeans.TestBean;
 import org.apache.jmeter.testelement.AbstractTestElement;
 import org.apache.jmeter.threads.JMeterContext;
@@ -31,7 +32,7 @@
 import org.apache.jorphan.util.JMeterException;
 import org.apache.log.Logger;
 
-public class BeanShellExtractor extends AbstractTestElement implements 
PostProcessor, Serializable, TestBean {
+public class BeanShellPostProcessor extends AbstractTestElement implements 
PostProcessor, Serializable, TestBean {
     private static final Logger log = LoggingManager.getLoggerForClass();
     
     private static final long serialVersionUID = 2;
@@ -41,35 +42,36 @@
     transient private BeanShellInterpreter bshInterpreter = null;
 
     // can be specified in jmeter.properties
-    private static final String INIT_FILE = "beanshell.timer.init"; 
//$NON-NLS-1$
+    private static final String INIT_FILE = "beanshell.postprocessor.init"; 
//$NON-NLS-1$
 
-    public BeanShellExtractor() throws ClassNotFoundException {
+    public BeanShellPostProcessor() throws ClassNotFoundException {
         super();
         bshInterpreter = new 
BeanShellInterpreter(JMeterUtils.getProperty(INIT_FILE),log);
     }
 
-    /*
-        * (non-Javadoc)
-        * 
-        * @see org.apache.jmeter.timers.Timer#delay()
-        */
-     long xdelay() {
-        String ret="";
+     public void process() {
+        JMeterContext jmctx = JMeterContextService.getContext();
+
+        SampleResult prev = jmctx.getPreviousResult();
+               if (prev == null || prev.getResponseData() == null) {
+                       return;
+               }
+
+        JMeterVariables vars = jmctx.getVariables();
         try {
             // Add variables for access to context and variables
-            JMeterContext jmctx = JMeterContextService.getContext();
-            JMeterVariables vars = jmctx.getVariables();
             bshInterpreter.set("ctx", jmctx);//$NON-NLS-1$
             bshInterpreter.set("vars", vars);//$NON-NLS-1$
-            ret = bshInterpreter.eval(script).toString();
+            bshInterpreter.set("prev", prev);//$NON-NLS-1$
+            bshInterpreter.set("data", prev.getResponseData());//$NON-NLS-1$
+            bshInterpreter.eval(script);
         } catch (JMeterException e) {
             log.warn("Problem in BeanShell script "+e);
         }
-               return Long.decode(ret).longValue();
        }
 
        public Object clone() {
-        BeanShellExtractor o = (BeanShellExtractor) super.clone();
+        BeanShellPostProcessor o = (BeanShellPostProcessor) super.clone();
         o.script = script;
                return o;
        }
@@ -81,8 +83,4 @@
     public void setScript(String s){
         script=s;
     }
-
-       public void process() {
-               throw new Error("Not yet implemented");
-       }
 }

Copied: 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorBeanInfo.java
 (from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorBeanInfo.java)
URL: 
http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorBeanInfo.java?p2=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorBeanInfo.java&p1=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorBeanInfo.java&r1=385618&r2=385855&rev=385855&view=diff
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorBeanInfo.java
 (original)
+++ 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorBeanInfo.java
 Tue Mar 14 10:57:55 2006
@@ -21,13 +21,13 @@
 
 import org.apache.jmeter.testbeans.BeanInfoSupport;
 
-public class BeanShellExtractorBeanInfo extends BeanInfoSupport {
+public class BeanShellPostProcessorBeanInfo extends BeanInfoSupport {
 
        /**
         * @param beanClass
         */
-       public BeanShellExtractorBeanInfo() {
-               super(BeanShellExtractor.class);
+       public BeanShellPostProcessorBeanInfo() {
+               super(BeanShellPostProcessor.class);
 
         createPropertyGroup("scripting", new String[] { "script" });
 

Copied: 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorResources.properties
 (from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorResources.properties)
URL: 
http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorResources.properties?p2=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorResources.properties&p1=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorResources.properties&r1=385618&r2=385855&rev=385855&view=diff
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellExtractorResources.properties
 (original)
+++ 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/extractor/BeanShellPostProcessorResources.properties
 Tue Mar 14 10:57:55 2006
@@ -1,4 +1,4 @@
 displayName=BeanShell PostProcessor
-scripting.displayName=BeanShell
+scripting.displayName=BeanShell (variables: jmctx vars prev data)
 script.displayName=Script
 script.shortDescription=Beanshell script

Copied: 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessor.java
 (from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifier.java)
URL: 
http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessor.java?p2=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessor.java&p1=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifier.java&r1=385618&r2=385855&rev=385855&view=diff
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifier.java
 (original)
+++ 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessor.java
 Tue Mar 14 10:57:55 2006
@@ -20,6 +20,8 @@
 import java.io.Serializable;
 
 import org.apache.jmeter.processor.PreProcessor;
+import org.apache.jmeter.samplers.SampleResult;
+import org.apache.jmeter.samplers.Sampler;
 import org.apache.jmeter.testbeans.TestBean;
 import org.apache.jmeter.testelement.AbstractTestElement;
 import org.apache.jmeter.threads.JMeterContext;
@@ -31,7 +33,7 @@
 import org.apache.jorphan.util.JMeterException;
 import org.apache.log.Logger;
 
-public class BeanShellModifier extends AbstractTestElement implements 
PreProcessor, Serializable, TestBean {
+public class BeanShellPreProcessor extends AbstractTestElement implements 
PreProcessor, Serializable, TestBean {
     private static final Logger log = LoggingManager.getLoggerForClass();
     
     private static final long serialVersionUID = 2;
@@ -41,35 +43,34 @@
     transient private BeanShellInterpreter bshInterpreter = null;
 
     // can be specified in jmeter.properties
-    private static final String INIT_FILE = "beanshell.timer.init"; 
//$NON-NLS-1$
+    private static final String INIT_FILE = "beanshell.preprocessor.init"; 
//$NON-NLS-1$
 
-    public BeanShellModifier() throws ClassNotFoundException {
+    public BeanShellPreProcessor() throws ClassNotFoundException {
         super();
         bshInterpreter = new 
BeanShellInterpreter(JMeterUtils.getProperty(INIT_FILE),log);
     }
 
-    /*
-        * (non-Javadoc)
-        * 
-        * @see org.apache.jmeter.timers.Timer#delay()
-        */
-       long xdelay() {
-        String ret="";
+
+    public void process(){
+        JMeterContext jmctx = JMeterContextService.getContext();
+        JMeterVariables vars = jmctx.getVariables();
+               Sampler sam = jmctx.getCurrentSampler();
+               SampleResult prev = jmctx.getPreviousResult();
         try {
             // Add variables for access to context and variables
-            JMeterContext jmctx = JMeterContextService.getContext();
-            JMeterVariables vars = jmctx.getVariables();
             bshInterpreter.set("ctx", jmctx);//$NON-NLS-1$
             bshInterpreter.set("vars", vars);//$NON-NLS-1$
-            ret = bshInterpreter.eval(script).toString();
+            bshInterpreter.set("sampler", sam);//$NON-NLS-1$
+            bshInterpreter.set("prev", prev);//$NON-NLS-1$
+            
+            bshInterpreter.eval(script);
         } catch (JMeterException e) {
             log.warn("Problem in BeanShell script "+e);
         }
-               return Long.decode(ret).longValue();
        }
 
        public Object clone() {
-        BeanShellModifier o = (BeanShellModifier) super.clone();
+        BeanShellPreProcessor o = (BeanShellPreProcessor) super.clone();
         o.script = script;
                return o;
        }
@@ -81,9 +82,4 @@
     public void setScript(String s){
         script=s;
     }
-
-       public void process() {
-               // TODO Auto-generated method stub
-               throw new Error("Not yet implemented");         
-       }
 }

Copied: 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorBeanInfo.java
 (from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierBeanInfo.java)
URL: 
http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorBeanInfo.java?p2=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorBeanInfo.java&p1=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierBeanInfo.java&r1=385618&r2=385855&rev=385855&view=diff
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierBeanInfo.java
 (original)
+++ 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorBeanInfo.java
 Tue Mar 14 10:57:55 2006
@@ -21,13 +21,13 @@
 
 import org.apache.jmeter.testbeans.BeanInfoSupport;
 
-public class BeanShellModifierBeanInfo extends BeanInfoSupport {
+public class BeanShellPreProcessorBeanInfo extends BeanInfoSupport {
 
        /**
         * @param beanClass
         */
-       public BeanShellModifierBeanInfo() {
-               super(BeanShellModifier.class);
+       public BeanShellPreProcessorBeanInfo() {
+               super(BeanShellPreProcessor.class);
 
         createPropertyGroup("scripting", new String[] { "script" });
 

Copied: 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorResources.properties
 (from r385618, 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierResources.properties)
URL: 
http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorResources.properties?p2=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorResources.properties&p1=jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierResources.properties&r1=385618&r2=385855&rev=385855&view=diff
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellModifierResources.properties
 (original)
+++ 
jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/BeanShellPreProcessorResources.properties
 Tue Mar 14 10:57:55 2006
@@ -1,4 +1,4 @@
-displayName=BeanShell Pre-Processor
-scripting.displayName=BeanShell
+displayName=BeanShell PreProcessor
+scripting.displayName=BeanShell (variables: jmctx vars prev sampler)
 script.displayName=Script
-script.shortDescription=Beanshell script to generate delay
\ No newline at end of file
+script.shortDescription=Beanshell script
\ No newline at end of file



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

Reply via email to