Apache JMeter

org.apache.jmeter.reporters
Class ResultCollector

java.lang.Object
  extended by org.apache.jmeter.testelement.AbstractTestElement
      extended by org.apache.jmeter.reporters.AbstractListenerElement
          extended by org.apache.jmeter.reporters.ResultCollector
All Implemented Interfaces:
Serializable, Cloneable, NoThreadClone, Searchable, Clearable, Remoteable, SampleListener, TestElement, TestStateListener
Direct Known Subclasses:
MailerResultCollector

public class ResultCollector
extends AbstractListenerElement
implements SampleListener, Clearable, Serializable, TestStateListener, Remoteable, NoThreadClone

This class handles all saving of samples. The class must be thread-safe because it is shared between threads (NoThreadClone).

See Also:
Serialized Form

Field Summary
static String FILENAME
           
 
Fields inherited from interface org.apache.jmeter.testelement.TestElement
COMMENTS, ENABLED, GUI_CLASS, NAME, TEST_CLASS
 
Constructor Summary
ResultCollector()
          No-arg constructor.
ResultCollector(Summariser summer)
           
 
Method Summary
 void clearData()
          Clears the current data of the object.
 Object clone()
           
protected  void flushFile()
          Flush PrintWriter to synchronize file contents
 String getFilename()
           
 SampleSaveConfiguration getSaveConfig()
           
 boolean isErrorLogging()
           
 boolean isSampleWanted(boolean success)
          Decides whether or not to a sample is wanted based on:
- errorOnly
- successOnly
- sample success
Should only be called for single samples.
static boolean isSampleWanted(boolean success, boolean errorOnly, boolean successOnly)
          Decides whether or not to a sample is wanted based on:
- errorOnly
- successOnly
- sample success
This version is intended to be called by code that loops over many samples; it is cheaper than fetching the settings each time.
 boolean isSuccessOnlyLogging()
           
 void loadExistingFile()
          Loads an existing sample data (JTL) file.
 void recordStats(TestElement e)
          recordStats is used to save statistics generated by visualizers
 void sampleOccurred(SampleEvent event)
          When a test result is received, display it and save it.
 void sampleStarted(SampleEvent e)
          A sample has started.
 void sampleStopped(SampleEvent e)
          A sample has stopped.
protected  void sendToVisualizer(SampleResult r)
           
 void setErrorLogging(boolean errorLogging)
           
 void setFilename(String f)
          Sets the filename attribute of the ResultCollector object.
 void setSaveConfig(SampleSaveConfiguration saveConfig)
           
 void setSuccessOnlyLogging(boolean value)
           
 void testEnded()
           Called once for all threads after the end of a test.
 void testEnded(String host)
           Called once for all threads after the end of a test.
 void testStarted()
           Called just before the start of the test from the main engine thread.
 void testStarted(String host)
           Called just before the start of the test from the main engine thread.
 
Methods inherited from class org.apache.jmeter.reporters.AbstractListenerElement
getVisualizer, setListener
 
Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement
addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FILENAME

public static final String FILENAME
See Also:
Constant Field Values
Constructor Detail

ResultCollector

public ResultCollector()
No-arg constructor.


ResultCollector

public ResultCollector(Summariser summer)
Method Detail

clone

public Object clone()
Specified by:
clone in interface TestElement
Overrides:
clone in class AbstractListenerElement

getFilename

public String getFilename()

isErrorLogging

public boolean isErrorLogging()

setErrorLogging

public final void setErrorLogging(boolean errorLogging)

setSuccessOnlyLogging

public final void setSuccessOnlyLogging(boolean value)

isSuccessOnlyLogging

public boolean isSuccessOnlyLogging()

isSampleWanted

public boolean isSampleWanted(boolean success)
Decides whether or not to a sample is wanted based on:
- errorOnly
- successOnly
- sample success
Should only be called for single samples.

Parameters:
success - is sample successful
Returns:
whether to log/display the sample

isSampleWanted

public static boolean isSampleWanted(boolean success,
                                     boolean errorOnly,
                                     boolean successOnly)
Decides whether or not to a sample is wanted based on:
- errorOnly
- successOnly
- sample success
This version is intended to be called by code that loops over many samples; it is cheaper than fetching the settings each time.

Parameters:
success - status of sample
errorOnly - if errors only wanted
successOnly - if success only wanted
Returns:
whether to log/display the sample

setFilename

public void setFilename(String f)
Sets the filename attribute of the ResultCollector object.

Parameters:
f - the new filename value

testEnded

public void testEnded(String host)
Description copied from interface: TestStateListener

Called once for all threads after the end of a test. This will use the same element instances as at the start of the test.

N.B. testStarted() and testEnded() are called from different threads.

Specified by:
testEnded in interface TestStateListener
Parameters:
host - name of host
See Also:
StandardJMeterEngine.stopTest()

testStarted

public void testStarted(String host)
Description copied from interface: TestStateListener

Called just before the start of the test from the main engine thread. This is before the test elements are cloned. Note that not all the test variables will have been set up at this point.

N.B. testStarted() and testEnded() are called from different threads.

Specified by:
testStarted in interface TestStateListener
Parameters:
host - name of host
See Also:
StandardJMeterEngine.run()

testEnded

public void testEnded()
Description copied from interface: TestStateListener

Called once for all threads after the end of a test. This will use the same element instances as at the start of the test.

N.B. testStarted() and testEnded() are called from different threads.

Specified by:
testEnded in interface TestStateListener
See Also:
StandardJMeterEngine.stopTest()

testStarted

public void testStarted()
Description copied from interface: TestStateListener

Called just before the start of the test from the main engine thread. This is before the test elements are cloned. Note that not all the test variables will have been set up at this point.

N.B. testStarted() and testEnded() are called from different threads.

Specified by:
testStarted in interface TestStateListener
See Also:
StandardJMeterEngine.run()

loadExistingFile

public void loadExistingFile()
Loads an existing sample data (JTL) file. This can be one of: - XStream format - Avalon format - CSV format


sampleStarted

public void sampleStarted(SampleEvent e)
Description copied from interface: SampleListener
A sample has started.

Specified by:
sampleStarted in interface SampleListener

sampleStopped

public void sampleStopped(SampleEvent e)
Description copied from interface: SampleListener
A sample has stopped.

Specified by:
sampleStopped in interface SampleListener

sampleOccurred

public void sampleOccurred(SampleEvent event)
When a test result is received, display it and save it.

Specified by:
sampleOccurred in interface SampleListener
Parameters:
event - the sample event that was received

sendToVisualizer

protected final void sendToVisualizer(SampleResult r)

recordStats

public void recordStats(TestElement e)
                 throws IOException
recordStats is used to save statistics generated by visualizers

Parameters:
e -
Throws:
IOException

flushFile

protected void flushFile()
Flush PrintWriter to synchronize file contents


getSaveConfig

public SampleSaveConfiguration getSaveConfig()
Returns:
Returns the saveConfig.

setSaveConfig

public void setSaveConfig(SampleSaveConfiguration saveConfig)
Parameters:
saveConfig - The saveConfig to set.

clearData

public void clearData()
Description copied from interface: Clearable
Clears the current data of the object.

Specified by:
clearData in interface Clearable

Apache JMeter

Copyright © 1998-2014 Apache Software Foundation. All Rights Reserved.