edu.umd.cs.findbugs.gui
Class RunAnalysisDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by edu.umd.cs.findbugs.gui.RunAnalysisDialog
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class RunAnalysisDialog
extends javax.swing.JDialog

A modal dialog to run the actual FindBugs analysis on a project. The analysis is done in a separate thread, so that the GUI can still stay current while the analysis is running. We provide support for reporting the progress of the analysis, and for asynchronously cancelling the analysis before it completes.

Author:
David Hovemeyer
See Also:
Serialized Form

Nested Class Summary
private  class RunAnalysisDialog.RunAnalysisProgress
           
 
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  AnalysisRun analysisRun
           
private  java.lang.Thread analysisThread
           
private  javax.swing.JLabel bottomVerticalFiller
           
private  javax.swing.JButton cancelButton
           
private  boolean completed
           
private  javax.swing.JLabel countLabel
           
private  javax.swing.JLabel countValueLabel
           
private  java.lang.Exception fatalException
           
private  javax.swing.JLabel findBugsLabel
           
private  javax.swing.JSeparator jSeparator1
           
private  javax.swing.JProgressBar progressBar
           
private  javax.swing.JLabel progressLabel
           
private  javax.swing.JLabel stageLabel
           
private  javax.swing.JLabel stageNameLabel
           
private  javax.swing.JLabel topVerticalFiller
           
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
RunAnalysisDialog(java.awt.Frame parent, AnalysisRun analysisRun_)
          Creates new form RunAnalysisDialog
 
Method Summary
private  void cancelButtonActionPerformed(java.awt.event.ActionEvent evt)
           
private  void closeDialog(java.awt.event.WindowEvent evt)
          Closes the dialog
 boolean exceptionOccurred()
          Determine whether or not a fatal exception occurred during analysis.
private  void formWindowOpened(java.awt.event.WindowEvent evt)
           
 java.lang.Exception getException()
          Get the exception that abnormally terminated the analysis.
private  void initComponents()
          This method is called from within the constructor to initialize the form.
 boolean isCompleted()
          The creator of the dialog may call this method to find out whether or not the analysis completed normally.
 void setCompleted(boolean completed)
           
 void setException(java.lang.Exception e)
           
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Dialog
addNotify, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setResizable, setTitle, setUndecorated, show
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, finalize, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

analysisRun

private final AnalysisRun analysisRun

analysisThread

private java.lang.Thread analysisThread

completed

private boolean completed

fatalException

private java.lang.Exception fatalException

bottomVerticalFiller

private javax.swing.JLabel bottomVerticalFiller

cancelButton

private javax.swing.JButton cancelButton

countLabel

private javax.swing.JLabel countLabel

countValueLabel

private javax.swing.JLabel countValueLabel

findBugsLabel

private javax.swing.JLabel findBugsLabel

jSeparator1

private javax.swing.JSeparator jSeparator1

progressBar

private javax.swing.JProgressBar progressBar

progressLabel

private javax.swing.JLabel progressLabel

stageLabel

private javax.swing.JLabel stageLabel

stageNameLabel

private javax.swing.JLabel stageNameLabel

topVerticalFiller

private javax.swing.JLabel topVerticalFiller
Constructor Detail

RunAnalysisDialog

public RunAnalysisDialog(java.awt.Frame parent,
                         AnalysisRun analysisRun_)
Creates new form RunAnalysisDialog

Method Detail

setCompleted

public void setCompleted(boolean completed)

isCompleted

public boolean isCompleted()
The creator of the dialog may call this method to find out whether or not the analysis completed normally.


setException

public void setException(java.lang.Exception e)

exceptionOccurred

public boolean exceptionOccurred()
Determine whether or not a fatal exception occurred during analysis.


getException

public java.lang.Exception getException()
Get the exception that abnormally terminated the analysis.


initComponents

private void initComponents()
This method is called from within the constructor to initialize the form. WARNING: Do NOT modify this code. The content of this method is always regenerated by the Form Editor.


cancelButtonActionPerformed

private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt)

formWindowOpened

private void formWindowOpened(java.awt.event.WindowEvent evt)

closeDialog

private void closeDialog(java.awt.event.WindowEvent evt)
Closes the dialog