Apache JMeter

org.apache.jmeter.protocol.jms.sampler
Class SubscriberSampler

java.lang.Object
  extended byorg.apache.jmeter.testelement.AbstractTestElement
      extended byorg.apache.jmeter.samplers.AbstractSampler
          extended byorg.apache.jmeter.protocol.jms.sampler.BaseJMSSampler
              extended byorg.apache.jmeter.protocol.jms.sampler.SubscriberSampler
All Implemented Interfaces:
Cloneable, javax.jms.MessageListener, Sampler, Serializable, TestElement, TestListener

public class SubscriberSampler
extends BaseJMSSampler
implements TestListener, javax.jms.MessageListener

To change the template for this generated type comment go to Window>Preferences>Java>Code Generation>Code and Comments

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apache.jmeter.protocol.jms.sampler.BaseJMSSampler
not_req, required
 
Fields inherited from interface org.apache.jmeter.testelement.TestElement
COMMENTS, ENABLED, GUI_CLASS, NAME, TEST_CLASS
 
Constructor Summary
SubscriberSampler()
           
 
Method Summary
 int count(int increment)
          increment the count and return the new value.
 String getClientChoice()
          Return the client choice.
 OnMessageSubscriber initListenerClient()
          Create the OnMessageSubscriber client and set the sampler as the message listener.
 void initReceiveClient()
          Create the ReceiveSubscriber client for the sampler.
 void onMessage(javax.jms.Message message)
          The sampler implements MessageListener directly and sets itself as the listener with the TopicSubscriber.
 void resetCount()
          resetCount will set the counter to zero and set the length of the StringBuffer to zero.
 SampleResult sample()
          sample method will check which client it should use and call the appropriate client specific sample method.
 SampleResult sample(Entry e)
          Obtains statistics about the given Entry, and packages the information into a SampleResult.
 SampleResult sampleWithListener()
          sample will block until messages are received
 SampleResult sampleWithReceive()
          Sample method uses the ReceiveSubscriber client instead of onMessage approach.
 void setClientChoice(String choice)
          Set the client choice.
 void testEnded()
          testEnded is called by Jmeter's engine. the implementation will reset the count, set RUN to false and clear the StringBuffer.
 void testEnded(String test)
           Called once for all threads after the end of a test.
 void testIterationStart(LoopIterationEvent event)
          Each time through a Thread Group's test script, an iteration event is fired for each thread.
 void testStarted()
           Called just before the start of the test from the main engine thread.
 void testStarted(String test)
           Called just before the start of the test from the main engine thread.
 
Methods inherited from class org.apache.jmeter.protocol.jms.sampler.BaseJMSSampler
getConnectionFactory, getIterationCount, getIterations, getJNDIInitialContextFactory, getPassword, getProviderUrl, getReadResponse, getReadResponseAsBoolean, getTopic, getUseAuth, getUseJNDIProperties, getUseJNDIPropertiesAsBoolean, getUsername, setConnectionFactory, setIterations, setJNDIIntialContextFactory, setPassword, setProviderUrl, setReadResponse, setTopic, setUseAuth, setUseJNDIProperties, setUsername
 
Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement
addProperty, addTestElement, canRemove, clear, clearTemporary, clone, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setName, 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
 
Methods inherited from interface org.apache.jmeter.testelement.TestElement
addTestElement, canRemove, clear, clone, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getThreadContext, getThreadName, isEnabled, isRunningVersion, isTemporary, propertyIterator, recoverRunningVersion, removeProperty, setComment, setName, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse
 

Constructor Detail

SubscriberSampler

public SubscriberSampler()
Method Detail

testEnded

public void testEnded(String test)
Description copied from interface: TestListener

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 TestListener
See Also:
StandardJMeterEngine.stopTest()

testStarted

public void testStarted(String test)
Description copied from interface: TestListener

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 TestListener
See Also:
StandardJMeterEngine.run()

testEnded

public void testEnded()
testEnded is called by Jmeter's engine. the implementation will reset the count, set RUN to false and clear the StringBuffer.

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

testStarted

public void testStarted()
Description copied from interface: TestListener

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 TestListener
See Also:
StandardJMeterEngine.run()

testIterationStart

public void testIterationStart(LoopIterationEvent event)
Description copied from interface: TestListener
Each time through a Thread Group's test script, an iteration event is fired for each thread. This will be after the test elements have been cloned, so in general the instance will not be the same as the ones the start/end methods call.

Specified by:
testIterationStart in interface TestListener
Parameters:
event -

initListenerClient

public OnMessageSubscriber initListenerClient()
Create the OnMessageSubscriber client and set the sampler as the message listener.


initReceiveClient

public void initReceiveClient()
Create the ReceiveSubscriber client for the sampler.


sample

public SampleResult sample(Entry e)
Description copied from interface: Sampler
Obtains statistics about the given Entry, and packages the information into a SampleResult.

Specified by:
sample in interface Sampler
Overrides:
sample in class BaseJMSSampler

sample

public SampleResult sample()
sample method will check which client it should use and call the appropriate client specific sample method.

Specified by:
sample in class BaseJMSSampler
Returns:
the appropriate sample result

sampleWithListener

public SampleResult sampleWithListener()
sample will block until messages are received

Returns:
the sample result

sampleWithReceive

public SampleResult sampleWithReceive()
Sample method uses the ReceiveSubscriber client instead of onMessage approach.

Returns:
the sample result

onMessage

public void onMessage(javax.jms.Message message)
The sampler implements MessageListener directly and sets itself as the listener with the TopicSubscriber.

Specified by:
onMessage in interface javax.jms.MessageListener

count

public int count(int increment)
increment the count and return the new value.

Parameters:
increment -
Returns:
the new value

resetCount

public void resetCount()
resetCount will set the counter to zero and set the length of the StringBuffer to zero.


setClientChoice

public void setClientChoice(String choice)
Set the client choice. There are two options: ReceiveSusbscriber and OnMessageSubscriber.


getClientChoice

public String getClientChoice()
Return the client choice.

Returns:
the client choice

Apache JMeter

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