mstover1 2003/03/18 13:36:03
Modified: bin jmeter.properties
src/components/org/apache/jmeter/extractor
RegexExtractor.java
src/core/org/apache/jmeter/gui/util MenuFactory.java
src/core/org/apache/jmeter/processor PostProcessor.java
src/core/org/apache/jmeter/resources messages.properties
messages_de.properties messages_ja.properties
messages_no.properties
src/core/org/apache/jmeter/threads JMeterContext.java
JMeterThread.java SamplePackage.java
TestCompiler.java
Added: src/core/org/apache/jmeter/processor/gui
AbstractPreProcessorGui.java
Log:
PreProcessor interface is now fully wired in
Revision Changes Path
1.60 +1 -1 jakarta-jmeter/bin/jmeter.properties
Index: jmeter.properties
===================================================================
RCS file: /home/cvs/jakarta-jmeter/bin/jmeter.properties,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -r1.59 -r1.60
--- jmeter.properties 14 Mar 2003 21:15:35 -0000 1.59
+++ jmeter.properties 18 Mar 2003 21:36:01 -0000 1.60
@@ -68,7 +68,7 @@
#Logging levels for the logging categories in JMeter. Correct values are
FATAL_ERROR, ERROR, WARN, INFO, and DEBUG
log_level.jmeter=WARN
-log_level.jmeter.engine=DEBUG
+log_level.jmeter.engine=WARN
log_level.jmeter.gui=WARN
log_level.jmeter.elements=WARN
log_level.jmeter.util=WARN
1.3 +19 -30
jakarta-jmeter/src/components/org/apache/jmeter/extractor/RegexExtractor.java
Index: RegexExtractor.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/extractor/RegexExtractor.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- RegexExtractor.java 21 Feb 2003 18:19:43 -0000 1.2
+++ RegexExtractor.java 18 Mar 2003 21:36:01 -0000 1.3
@@ -10,7 +10,8 @@
import org.apache.jmeter.processor.PostProcessor;
import org.apache.jmeter.samplers.SampleResult;
import org.apache.jmeter.testelement.AbstractTestElement;
-import org.apache.jmeter.testelement.VariablesCollection;
+import org.apache.jmeter.threads.JMeterContext;
+import org.apache.jmeter.threads.JMeterContextService;
import org.apache.jmeter.threads.JMeterVariables;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.log.Hierarchy;
@@ -37,8 +38,6 @@
public static final String MATCH_NUMBER = "RegexExtractor.match_number";
public static final String DEFAULT = "RegexExtractor.default";
public static final String TEMPLATE = "RegexExtractor.template";
-
- private VariablesCollection vars = new VariablesCollection();
private Object[] template = null;
private static PatternCacheLRU patternCache = new PatternCacheLRU(1000, new
Perl5Compiler());
@@ -54,12 +53,14 @@
* into variables for use later in the test.
* @see
org.apache.jmeter.config.PostProcessor#processResult(org.apache.jmeter.samplers.SampleResult)
*/
- public void process(SampleResult result)
+ public void process()
{
+ initTemplate();
+ JMeterContext context = JMeterContextService.getContext();
log.debug("RegexExtractor processing result");
- vars.getVariables().put(getRefName(), getDefaultValue());
+ context.getVariables().put(getRefName(), getDefaultValue());
Perl5Matcher matcher = (Perl5Matcher) localMatcher.get();
- PatternMatcherInput input = new PatternMatcherInput(new
String(result.getResponseData()));
+ PatternMatcherInput input = new PatternMatcherInput(new
String(context.getPreviousResult().getResponseData()));
log.debug("Regex = " + getRegex());
Pattern pattern = patternCache.getPattern(getRegex(),
Perl5Compiler.READ_ONLY_MASK);
List matches = new ArrayList();
@@ -84,7 +85,7 @@
MatchResult match = getCorrectMatch(matches);
if(match != null)
{
- vars.getVariables().put(getRefName(), generateResult(match));
+ context.getVariables().put(getRefName(), generateResult(match));
}
}
catch (RuntimeException e)
@@ -97,7 +98,6 @@
{
RegexExtractor cloned = (RegexExtractor)super.clone();
cloned.template = this.template;
- cloned.vars = vars;
return cloned;
}
@@ -122,6 +122,10 @@
private void initTemplate()
{
+ if(template != null)
+ {
+ return;
+ }
List pieces = new ArrayList();
List combined = new LinkedList();
String rawTemplate = getTemplate();
@@ -197,20 +201,7 @@
return null;
}
}
-
- /**
- * This method is ignored.
- */
- public void iterationStarted(int iterationCount)
- {}
- /**
- * @see
org.apache.jmeter.testelement.ThreadListener#setJMeterVariables(org.apache.jmeter.threads.JMeterVariables)
- */
- public void setJMeterVariables(JMeterVariables vars)
- {
- this.vars.addJMeterVariables(vars);
- initTemplate();
- }
+
public void setRegex(String regex)
{
setProperty(REGEX, regex);
@@ -294,6 +285,8 @@
+ "
field=\"pinpositionvalue3\"></value></row></company-xmlext-query-ret>";
result.setResponseData(data.getBytes());
vars = new JMeterVariables();
+ JMeterContextService.getContext().setVariables(vars);
+ JMeterContextService.getContext().setPreviousResult(result);
}
public void testVariableExtraction() throws Exception
@@ -301,8 +294,7 @@
extractor.setRegex("<value field=\"(pinposition\\d+)\">(\\d+)</value>");
extractor.setTemplate("$2$");
extractor.setMatchNumber(2);
- extractor.setJMeterVariables(vars);
- extractor.process(result);
+ extractor.process();
assertEquals("5", vars.get("regVal"));
}
@@ -311,8 +303,7 @@
extractor.setRegex("<value field=\"(pinposition\\d+)\">(\\d+)</value>");
extractor.setTemplate("$1$");
extractor.setMatchNumber(3);
- extractor.setJMeterVariables(vars);
- extractor.process(result);
+ extractor.process();
assertEquals("pinposition3", vars.get("regVal"));
}
@@ -322,8 +313,7 @@
extractor.setTemplate("$2$");
extractor.setMatchNumber(4);
extractor.setDefaultValue("default");
- extractor.setJMeterVariables(vars);
- extractor.process(result);
+ extractor.process();
assertEquals("default", vars.get("regVal"));
}
@@ -332,8 +322,7 @@
extractor.setRegex("<value field=\"(pinposition\\d+)\">(\\d+)</value>");
extractor.setTemplate("_$1$");
extractor.setMatchNumber(2);
- extractor.setJMeterVariables(vars);
- extractor.process(result);
+ extractor.process();
assertEquals("_pinposition2", vars.get("regVal"));
}
}
1.14 +21 -8
jakarta-jmeter/src/core/org/apache/jmeter/gui/util/MenuFactory.java
Index: MenuFactory.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/util/MenuFactory.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- MenuFactory.java 21 Feb 2003 18:19:44 -0000 1.13
+++ MenuFactory.java 18 Mar 2003 21:36:02 -0000 1.14
@@ -110,7 +110,9 @@
***************************************/
public final static String MODIFIERS = "menu_modifiers";
- public final static String POST_PROCESSORS = "menu_extractors";
+ public final static String POST_PROCESSORS = "menu_post_processors";
+
+ public final static String PRE_PROCESSORS = "menu_pre_processors";
/****************************************
* !ToDo (Field description)
***************************************/
@@ -132,7 +134,7 @@
private static List timers, controllers, samplers,
configElements, modifiers, responseBasedModifiers,
- assertions, listeners, nonTestElements,extractors;
+ assertions, listeners,
nonTestElements,postProcessors,preProcessors;
private static JMenu timerMenu;
private static JMenu controllerMenu;
@@ -143,7 +145,8 @@
private static JMenu assertionMenu;
private static JMenu configMenu;
private static JMenu insertControllerMenu;
- private static JMenu extractorMenu;
+ private static JMenu postProcessorMenu;
+ private static JMenu preProcessorMenu;
static
{
try
@@ -263,7 +266,9 @@
MenuFactory.SAMPLERS, MenuFactory.CONFIG_ELEMENTS,
MenuFactory.MODIFIERS,MenuFactory.RESPONSE_BASED_MODIFIERS,
MenuFactory.TIMERS,
- MenuFactory.LISTENERS},
+ MenuFactory.LISTENERS,
+ MenuFactory.PRE_PROCESSORS,
+ MenuFactory.POST_PROCESSORS},
JMeterUtils.getResString("Add"),
"Add"));
pop.add(makeMenus(new String[]{MenuFactory.CONTROLLERS},
@@ -286,6 +291,7 @@
MenuFactory.RESPONSE_BASED_MODIFIERS,
MenuFactory.TIMERS,
MenuFactory.LISTENERS,
+ MenuFactory.PRE_PROCESSORS,
MenuFactory.POST_PROCESSORS},
JMeterUtils.getResString("Add"),
"Add"));
@@ -449,7 +455,8 @@
responseBasedModifiers = new LinkedList();
assertions = new LinkedList();
listeners = new LinkedList();
- extractors = new LinkedList();
+ postProcessors = new LinkedList();
+ preProcessors = new LinkedList();
nonTestElements = new LinkedList();
menuMap.put(TIMERS, timers);
menuMap.put(ASSERTIONS, assertions);
@@ -460,7 +467,8 @@
menuMap.put(NON_TEST_ELEMENTS, nonTestElements);
menuMap.put(RESPONSE_BASED_MODIFIERS, responseBasedModifiers);
menuMap.put(SAMPLERS, samplers);
- menuMap.put(POST_PROCESSORS,extractors);
+ menuMap.put(POST_PROCESSORS,postProcessors);
+ menuMap.put(PRE_PROCESSORS,preProcessors);
Collections.sort(guiClasses);
Iterator iter = guiClasses.iterator();
while(iter.hasNext())
@@ -493,7 +501,12 @@
if(categories.contains(POST_PROCESSORS))
{
- extractors.add(new MenuInfo(item.getStaticLabel(),
item.getClass().getName()));
+ postProcessors.add(new MenuInfo(item.getStaticLabel(),
item.getClass().getName()));
+ }
+
+ if(categories.contains(PRE_PROCESSORS))
+ {
+ preProcessors.add(new MenuInfo(item.getStaticLabel(),
item.getClass().getName()));
}
if(categories.contains(CONTROLLERS))
1.2 +2 -4
jakarta-jmeter/src/core/org/apache/jmeter/processor/PostProcessor.java
Index: PostProcessor.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/processor/PostProcessor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- PostProcessor.java 21 Feb 2003 18:19:44 -0000 1.1
+++ PostProcessor.java 18 Mar 2003 21:36:02 -0000 1.2
@@ -1,17 +1,15 @@
package org.apache.jmeter.processor;
-import org.apache.jmeter.samplers.SampleResult;
-import org.apache.jmeter.testelement.ThreadListener;
/**
* The PostProcessor is activated after a sample result has been generated.
*/
-public interface PostProcessor extends ThreadListener
+public interface PostProcessor
{
/**
* Provides the PostProcessor with a SampleResult object from which to extract
* values for use in future Queries.
*/
- public void process(SampleResult result);
+ public void process();
}
1.1
jakarta-jmeter/src/core/org/apache/jmeter/processor/gui/AbstractPreProcessorGui.java
Index: AbstractPreProcessorGui.java
===================================================================
package org.apache.jmeter.processor.gui;
import java.util.Arrays;
import java.util.Collection;
import javax.swing.JPopupMenu;
import org.apache.jmeter.gui.AbstractJMeterGuiComponent;
import org.apache.jmeter.gui.util.MenuFactory;
/**
* @author Administrator
*
* To change this generated comment edit the template variable "typecomment":
* Window>Preferences>Java>Templates.
*/
public abstract class AbstractPreProcessorGui extends AbstractJMeterGuiComponent
{
public JPopupMenu createPopupMenu()
{
return MenuFactory.getDefaultExtractorMenu();
}
public Collection getMenuCategories()
{
return Arrays.asList(new String[]{MenuFactory.PRE_PROCESSORS});
}
}
1.31 +2 -1
jakarta-jmeter/src/core/org/apache/jmeter/resources/messages.properties
Index: messages.properties
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages.properties,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- messages.properties 14 Mar 2003 00:31:18 -0000 1.30
+++ messages.properties 18 Mar 2003 21:36:02 -0000 1.31
@@ -336,7 +336,8 @@
default_value_field=Default Value:
ref_name_field=Reference Name:
match_num_field=Match No. (0 for Random):
-menu_extractors=Extractors and Post Request Processors
+menu_post_processors=Post Processors
+menu_pre_processors=Pre Processors
string_from_file_file_name=Enter full path to file
simple_data_writer_title=Simple Data Writer
include_equals=Include Equals?
1.26 +2 -1
jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_de.properties
Index: messages_de.properties
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_de.properties,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- messages_de.properties 18 Feb 2003 16:03:44 -0000 1.25
+++ messages_de.properties 18 Mar 2003 21:36:02 -0000 1.26
@@ -330,7 +330,8 @@
default_value_field=Default Value:
ref_name_field=Reference Name:
match_num_field=Match No. (0 for Random):
-menu_extractors=Extractors and Post Request Processors
+menu_post_processors=Post Processors
+menu_pre_processors=Pre Processors
graph_results_median=Median
string_from_file_file_name=Enter full path to file
simple_data_writer_title=Simple Data Writer
1.23 +2 -1
jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_ja.properties
Index: messages_ja.properties
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_ja.properties,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- messages_ja.properties 18 Feb 2003 16:03:44 -0000 1.22
+++ messages_ja.properties 18 Mar 2003 21:36:02 -0000 1.23
@@ -325,7 +325,8 @@
default_value_field=Default Value:
ref_name_field=Reference Name:
match_num_field=Match No. (0 for Random):
-menu_extractors=Extractors and Post Request Processors
+menu_post_processors=Post Processors
+menu_pre_processors=Pre Processors
graph_results_median=Median
string_from_file_file_name=Enter full path to file
simple_data_writer_title=Simple Data Writer
1.23 +2 -1
jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_no.properties
Index: messages_no.properties
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_no.properties,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- messages_no.properties 18 Feb 2003 16:03:44 -0000 1.22
+++ messages_no.properties 18 Mar 2003 21:36:02 -0000 1.23
@@ -317,7 +317,8 @@
default_value_field=Default Value:
ref_name_field=Reference Name:
match_num_field=Match No. (0 for Random):
-menu_extractors=Extractors and Post Request Processors
+menu_post_processors=Post Processors
+menu_pre_processors=Pre Processors
graph_results_median=Median
string_from_file_file_name=Enter full path to file
simple_data_writer_title=Simple Data Writer
1.3 +2 -2
jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterContext.java
Index: JMeterContext.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterContext.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- JMeterContext.java 14 Mar 2003 21:15:36 -0000 1.2
+++ JMeterContext.java 18 Mar 2003 21:36:03 -0000 1.3
@@ -38,7 +38,7 @@
return previousResult;
}
- void setPreviousResult( SampleResult result ) {
+ public void setPreviousResult( SampleResult result ) {
this.previousResult = result;
}
@@ -47,7 +47,7 @@
return currentSampler;
}
- void setCurrentSampler( Sampler sampler ) {
+ public void setCurrentSampler( Sampler sampler ) {
this.currentSampler = sampler;
}
1.18 +28 -15
jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterThread.java
Index: JMeterThread.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterThread.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- JMeterThread.java 14 Mar 2003 21:15:36 -0000 1.17
+++ JMeterThread.java 18 Mar 2003 21:36:03 -0000 1.18
@@ -57,12 +57,14 @@
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
+import java.util.ListIterator;
import java.util.Map;
import org.apache.jmeter.assertions.Assertion;
import org.apache.jmeter.assertions.AssertionResult;
import org.apache.jmeter.control.Controller;
import org.apache.jmeter.processor.PostProcessor;
+import org.apache.jmeter.processor.PreProcessor;
import org.apache.jmeter.samplers.SampleEvent;
import org.apache.jmeter.samplers.SampleResult;
import org.apache.jmeter.samplers.Sampler;
@@ -92,7 +94,7 @@
TestCompiler compiler;
JMeterThreadMonitor monitor;
String threadName;
- JMeterContext threadContext;
+ JMeterContext threadContext;
JMeterVariables threadVars;
Collection threadListeners;
ListenerNotifier notifier;
@@ -114,7 +116,7 @@
threadListeners = threadListenerSearcher.getSearchResults();
notifier = note;
}
-
+
public void setInitialContext(JMeterContext context)
{
threadVars.putAll(context.getVariables());
@@ -131,8 +133,8 @@
{
try
{
- threadContext = JMeterContextService.getContext();
- threadContext.setVariables(threadVars);
+ threadContext = JMeterContextService.getContext();
+ threadContext.setVariables(threadVars);
initializeThreadListeners();
testTree.traverse(compiler);
running = true;
@@ -151,14 +153,15 @@
notifyThreadListeners();
}
SamplePackage pack =
compiler.configureSampler(controller.next());
+ runPreProcessors(pack.getPreProcessors());
delay(pack.getTimers());
SampleResult result = pack.getSampler().sample(null);
result.setThreadName(threadName);
result.setTimeStamp(System.currentTimeMillis());
-
threadContext.setPreviousResult(result);
-
threadContext.setCurrentSampler(pack.getSampler());
+ threadContext.setPreviousResult(result);
+ threadContext.setCurrentSampler(pack.getSampler());
checkAssertions(pack.getAssertions(), result);
- runExtractors(pack.getExtractors(), result);
+ runPostProcessors(pack.getPostProcessors());
notifyListeners(pack.getSampleListeners(), result);
}
catch (Exception e)
@@ -203,13 +206,23 @@
}
}
- private void runExtractors(List extractors, SampleResult result)
+ private void runPostProcessors(List extractors)
{
- Iterator iter = extractors.iterator();
- while (iter.hasNext())
+ ListIterator iter = extractors.listIterator(extractors.size());
+ while (iter.hasPrevious())
+ {
+ PostProcessor ex = (PostProcessor) iter.previous();
+ ex.process();
+ }
+ }
+
+ private void runPreProcessors(List preProcessors)
+ {
+ ListIterator iter = preProcessors.listIterator(preProcessors.size());
+ while (iter.hasPrevious())
{
- PostProcessor ex = (PostProcessor) iter.next();
- ex.process(result);
+ PreProcessor ex = (PreProcessor) iter.previous();
+ ex.process();
}
}
1.4 +30 -5
jakarta-jmeter/src/core/org/apache/jmeter/threads/SamplePackage.java
Index: SamplePackage.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/threads/SamplePackage.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- SamplePackage.java 21 Feb 2003 18:19:44 -0000 1.3
+++ SamplePackage.java 18 Mar 2003 21:36:03 -0000 1.4
@@ -5,6 +5,7 @@
import org.apache.jmeter.assertions.Assertion;
import org.apache.jmeter.processor.PostProcessor;
+import org.apache.jmeter.processor.PreProcessor;
import org.apache.jmeter.samplers.SampleListener;
import org.apache.jmeter.samplers.Sampler;
import org.apache.jmeter.timers.Timer;
@@ -23,7 +24,8 @@
List sampleListeners = new LinkedList();
List timers = new LinkedList();
List assertions = new LinkedList();
- List extractors = new LinkedList();
+ List postProcessors = new LinkedList();
+ List preProcessors = new LinkedList();
Sampler sampler;
public SamplePackage()
@@ -45,9 +47,14 @@
return timers;
}
- public void addExtractor(PostProcessor ex)
+ public void addPostProcessor(PostProcessor ex)
{
- extractors.add(ex);
+ postProcessors.add(ex);
+ }
+
+ public void addPreProcessor(PreProcessor pre)
+ {
+ preProcessors.add(pre);
}
public void addTimer(Timer timer)
@@ -65,9 +72,9 @@
return assertions;
}
- public List getExtractors()
+ public List getPostProcessors()
{
- return extractors;
+ return postProcessors;
}
public Sampler getSampler()
@@ -79,4 +86,22 @@
{
sampler = s;
}
+ /**
+ * Returns the preProcessors.
+ * @return List
+ */
+ public List getPreProcessors()
+ {
+ return preProcessors;
+ }
+
+ /**
+ * Sets the preProcessors.
+ * @param preProcessors The preProcessors to set
+ */
+ public void setPreProcessors(List preProcessors)
+ {
+ this.preProcessors = preProcessors;
+ }
+
}
1.16 +44 -14
jakarta-jmeter/src/core/org/apache/jmeter/threads/TestCompiler.java
Index: TestCompiler.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/threads/TestCompiler.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- TestCompiler.java 14 Mar 2003 21:15:36 -0000 1.15
+++ TestCompiler.java 18 Mar 2003 21:36:03 -0000 1.16
@@ -13,9 +13,10 @@
import org.apache.jmeter.config.Modifier;
import org.apache.jmeter.config.ResponseBasedModifier;
import org.apache.jmeter.control.GenericController;
-import org.apache.jmeter.processor.PostProcessor;
import org.apache.jmeter.functions.Function;
import org.apache.jmeter.functions.InvalidVariableException;
+import org.apache.jmeter.processor.PostProcessor;
+import org.apache.jmeter.processor.PreProcessor;
import org.apache.jmeter.samplers.AbstractSampler;
import org.apache.jmeter.samplers.SampleEvent;
import org.apache.jmeter.samplers.SampleListener;
@@ -183,6 +184,7 @@
List timers = new LinkedList();
List assertions = new LinkedList();
List extractors = new LinkedList();
+ List pres = new LinkedList();
log.debug("Full stack = " + stack);
for (int i = stack.size(); i > 0; i--)
{
@@ -227,6 +229,10 @@
{
extractors.add(item);
}
+ if (item instanceof PreProcessor)
+ {
+ pres.add(item);
+ }
}
}
synchronized (sam)
@@ -236,7 +242,7 @@
objectsWithFunctions.add(sam);
}
}
- SamplerConfigs samplerConfigs = new SamplerConfigs(configs, modifiers,
responseModifiers, listeners, timers, assertions, extractors);
+ SamplerConfigs samplerConfigs = new SamplerConfigs(configs, modifiers,
responseModifiers, listeners, timers, assertions, extractors,pres);
samplerConfigMap.put(sam, samplerConfigs);
}
@@ -248,9 +254,11 @@
List assertions;
List timers;
List responseModifiers;
- List extractors;
+ List postProcessors;
+ List preProcessors;
- public SamplerConfigs(List configs, List modifiers, List responseModifiers,
List listeners, List timers, List assertions, List extractors)
+ public SamplerConfigs(List configs, List modifiers, List responseModifiers,
List listeners, List timers, List assertions,
+ List extractors,List pres)
{
this.configs = configs;
this.modifiers = modifiers;
@@ -258,7 +266,8 @@
this.listeners = listeners;
this.timers = timers;
this.assertions = assertions;
- this.extractors = extractors;
+ this.postProcessors = extractors;
+ this.preProcessors = pres;
}
public List getConfigs()
@@ -291,10 +300,19 @@
return timers;
}
- public List getExtractors()
+ public List getPostProcessors()
{
- return extractors;
+ return postProcessors;
}
+ /**
+ * Returns the preProcessors.
+ * @return List
+ */
+ public List getPreProcessors()
+ {
+ return preProcessors;
+ }
+
}
/****************************************
@@ -500,7 +518,7 @@
ret.addSampleListener((SampleListener) cloned);
}
- iter = configs.getExtractors().iterator();
+ iter = configs.getPostProcessors().iterator();
while (iter.hasNext())
{
PostProcessor ex = (PostProcessor) iter.next();
@@ -509,8 +527,20 @@
{
replaceValues(cloned);
}
- ret.addExtractor((PostProcessor) cloned);
+ ret.addPostProcessor((PostProcessor) cloned);
}
+
+ iter = configs.getPreProcessors().iterator();
+ while (iter.hasNext())
+ {
+ PreProcessor ex = (PreProcessor) iter.next();
+ TestElement cloned = (TestElement) cloneIfNecessary(ex);
+ if (objectsWithFunctions.contains(ex))
+ {
+ replaceValues(cloned);
+ }
+ ret.addPreProcessor((PreProcessor) cloned);
+ }
}
private boolean hasFunctions(TestElement el)
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]