Apache JMeter

org.apache.jmeter.visualizers
Class StatGraphVisualizer

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byorg.apache.jmeter.gui.AbstractJMeterGuiComponent
                      extended byorg.apache.jmeter.visualizers.gui.AbstractVisualizer
                          extended byorg.apache.jmeter.visualizers.StatGraphVisualizer
All Implemented Interfaces:
Accessible, ActionListener, ChangeListener, Clearable, EventListener, ImageObserver, JMeterGUIComponent, MenuContainer, Printable, Serializable, UnsharedComponent, Visualizer

public class StatGraphVisualizer
extends AbstractVisualizer
implements Clearable, ActionListener

Aggregrate Table-Based Reporting Visualizer for JMeter. Props to the people who've done the other visualizers ahead of me (Stefano Mazzocchi), who I borrowed code from to start me off (and much code may still exist). Thank you!

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  JLabeledChoice columns
           
protected  int defaultHeight
           
protected  int defaultWidth
           
protected  JButton displayButton
           
protected  VerticalPanel graph
           
protected  AxisGraph graphPanel
           
protected  JScrollPane graphScroll
           
protected  JTable myJTable
           
protected  JScrollPane myScrollPane
           
protected  JButton saveGraph
           
protected  boolean saveGraphToFile
           
protected  JButton saveTable
           
protected  JSplitPane spane
           
protected  String yAxisLabel
           
protected  String yAxisTitle
           
 
Fields inherited from class org.apache.jmeter.visualizers.gui.AbstractVisualizer
collector, isStats
 
Fields inherited from class org.apache.jmeter.gui.AbstractJMeterGuiComponent
namePanel
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
StatGraphVisualizer()
           
 
Method Summary
 void actionPerformed(ActionEvent event)
           
 void add(SampleResult res)
          This method is called by sampling thread to inform the visualizer about the arrival of a new sample.
 void clearData()
          Clears this visualizer and its model, and forces a repaint of the table.
 Vector getAllTableData()
          We use this method to get the data, since we are using ObjectTableModel, so the calling getDataVector doesn't work as expected.
 String[] getAxisLabels()
           
 double[][] getData()
           
 String getLabelResource()
          Get the component's resource name, which getStaticLabel uses to derive the component's label in the local language.
 JComponent getPrintableComponent()
          Subclasses need to over-ride this method, if they wish to return something other than the Visualizer itself.
 void makeGraph()
           
static boolean testFunctors()
           
 
Methods inherited from class org.apache.jmeter.visualizers.gui.AbstractVisualizer
clearGui, configure, configureTestElement, createPopupMenu, createTestElement, getErrorLoggingCheckbox, getFile, getFilePanel, getMenuCategories, getModel, isStats, makeTitlePanel, modifyTestElement, setFile, setModel, stateChanged
 
Methods inherited from class org.apache.jmeter.gui.AbstractJMeterGuiComponent
configureTestElement, createTitleLabel, getComment, getDocAnchor, getName, getNamePanel, getNode, getStaticLabel, isEnabled, makeBorder, makeScrollPane, makeScrollPane, setComment, setEnabled, setName, setNode
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

myJTable

protected JTable myJTable

myScrollPane

protected JScrollPane myScrollPane

graphPanel

protected AxisGraph graphPanel

graph

protected VerticalPanel graph

graphScroll

protected JScrollPane graphScroll

spane

protected JSplitPane spane

columns

protected JLabeledChoice columns

displayButton

protected JButton displayButton

saveGraph

protected JButton saveGraph

saveTable

protected JButton saveTable

yAxisLabel

protected String yAxisLabel

yAxisTitle

protected String yAxisTitle

saveGraphToFile

protected boolean saveGraphToFile

defaultWidth

protected int defaultWidth

defaultHeight

protected int defaultHeight
Constructor Detail

StatGraphVisualizer

public StatGraphVisualizer()
Method Detail

testFunctors

public static boolean testFunctors()

getLabelResource

public String getLabelResource()
Description copied from interface: JMeterGUIComponent
Get the component's resource name, which getStaticLabel uses to derive the component's label in the local language. The resource name is fixed, and does not vary with the selected language. Normally this method should be overriden in preference to overriding getStaticLabel(). However where the resource name is not available or required, getStaticLabel() may be overridden instead.

Specified by:
getLabelResource in interface JMeterGUIComponent
Returns:
the resource name

add

public void add(SampleResult res)
Description copied from interface: Visualizer
This method is called by sampling thread to inform the visualizer about the arrival of a new sample.

Specified by:
add in interface Visualizer

clearData

public void clearData()
Clears this visualizer and its model, and forces a repaint of the table.

Specified by:
clearData in interface Clearable

makeGraph

public void makeGraph()

getData

public double[][] getData()

getAxisLabels

public String[] getAxisLabels()

getAllTableData

public Vector getAllTableData()
We use this method to get the data, since we are using ObjectTableModel, so the calling getDataVector doesn't work as expected.

Returns:
the data from the model

actionPerformed

public void actionPerformed(ActionEvent event)
Specified by:
actionPerformed in interface ActionListener

getPrintableComponent

public JComponent getPrintableComponent()
Description copied from class: AbstractJMeterGuiComponent
Subclasses need to over-ride this method, if they wish to return something other than the Visualizer itself.

Specified by:
getPrintableComponent in interface Printable
Overrides:
getPrintableComponent in class AbstractJMeterGuiComponent
Returns:
this object

Apache JMeter

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