org.peace_tools.core.job
Class JobWizard

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 org.peace_tools.generic.WizardDialog
                          extended by org.peace_tools.core.job.JobWizard
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class JobWizard
extends WizardDialog

This class serves as the top-level class for creating a new job. A job is used to compute MST data and additionally clustering information for a given EST. This top-level class merely creates the various pages and adds them to the wizard. Each page performs a specific task required to create/configure a complete job to be run on a server.

Note: In order to create a job, there must be at least one data set and one server entry in the work space.

See Also:
Serialized Form

Nested Class Summary
 
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, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
 
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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  AnalyzerWizardPage awp
          The analyzer wizard page contains the analyzer information to be used for constructing the MST for this job.
private  MSTClusterData clusterData
          The cluster entry that is finally created by this job wizard when the final wizard page is displayed.
private  ClusterWizardPage cwp
          The wizard page that collects information about the cluster file in which clustering information is to be stored.
private  FiltersWizardPage fwp
          The filter wizard page that contains information about the various filters configured by the user to weed out problematic ESTs that could negatively impact the quality of clustering.
private  HeuristicsWizardPage hwp
          The analyzer wizard page contains the heuristic information to be used for constructing the MST for this job.
private  JobInfoWizardPage jiwp
          The job information wizard page that contains the description of the job.
private  Job job
          The job entry that is finally created by this job wizard when the final wizard page is displayed.
private  MainFrame mainFrame
          The main frame that logically owns this job.
private  MSTData mstData
          The MST data entry that is finally created by this job wizard when the final wizard page is displayed.
private  MSTWizardPage mwp
          The wizard page that collects information about the MST file and the server on which the job is to be run.
private static java.lang.String OVERVIEW_MSG
          A static overview message that is displayed in the first overview page displayed by this wizard to the user.
private static long serialVersionUID
          The generated serialization UID (need to keep the compiler happy)
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
 
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
JobWizard(java.lang.String title, MainFrame parent)
          The constructor for the job wizard.
 
Method Summary
protected  boolean cancel()
          Helper method invoked when user clicks cancel button.
private  Job createJobEntry()
          Helper method to create the job entry to be added to the workspace.
private  void createOverview()
          Helper method to create the overview page.
protected  void createWorkspaceEntries()
          This is a helper method that is invoked from the last wizard page (SubmitJobWizardPage) to create the various entries in the work space.
 void done(boolean success)
          This method overrides the final notification method in this wizard.
protected  FWAnalyzer.FWAnalyzerType getAnalyzerType()
          Obtain the currently selected analyzer.
protected  MSTClusterData getClusterData()
          Obtain the cluster entry created and added by this wizard.
protected  DataSet getDataSet()
          Helper method to obtain the currently selected data set.
protected  Job getJob()
          Obtain the job entry created and added by this wizard.
protected  MainFrame getMainFrame()
          Obtain the instance of the main frame class that owns this wizard.
protected  MSTData getMSTData()
          Obtain the MST entry created and added by this wizard.
protected  java.lang.String getMSTFileName()
          Helper method to obtain the MST file specified by the user.
protected  java.lang.String getSummary()
          This is a helper method that is invoked from the last wizard page (SubmitJobWizardPage) to obtain summary data.
 java.lang.String toCmdLine(java.lang.String estFile)
          Return the information in the form of a complete PEACE command line.
 
Methods inherited from class org.peace_tools.generic.WizardDialog
actionPerformed, addPage, addThread, changePage, checkChangePage, getCurrentPage, getPage, getPagePane, layoutButtons, layoutSequencePanel, layoutTitlePanel, layoutWizard, removeThread, setButtonStatus, setSequenceBackground, setTitleBackground, showWizard
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setModalityType, setResizable, setTitle, setUndecorated, setVisible, show, toBack
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, 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, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

jiwp

private final JobInfoWizardPage jiwp
The job information wizard page that contains the description of the job.


awp

private final AnalyzerWizardPage awp
The analyzer wizard page contains the analyzer information to be used for constructing the MST for this job.


hwp

private final HeuristicsWizardPage hwp
The analyzer wizard page contains the heuristic information to be used for constructing the MST for this job.


fwp

private final FiltersWizardPage fwp
The filter wizard page that contains information about the various filters configured by the user to weed out problematic ESTs that could negatively impact the quality of clustering.


mwp

private MSTWizardPage mwp
The wizard page that collects information about the MST file and the server on which the job is to be run.


cwp

private ClusterWizardPage cwp
The wizard page that collects information about the cluster file in which clustering information is to be stored.


job

private Job job
The job entry that is finally created by this job wizard when the final wizard page is displayed. This entry is used by the final wizard page to perform its operations.


mstData

private MSTData mstData
The MST data entry that is finally created by this job wizard when the final wizard page is displayed. This entry is used by the final wizard page to perform its operations.


clusterData

private MSTClusterData clusterData
The cluster entry that is finally created by this job wizard when the final wizard page is displayed. This entry is used by the final wizard page to perform its operations.


mainFrame

private final MainFrame mainFrame
The main frame that logically owns this job. This value is used to create a job monitor if a job is successfully submitted to run on a server.


OVERVIEW_MSG

private static final java.lang.String OVERVIEW_MSG
A static overview message that is displayed in the first overview page displayed by this wizard to the user.

See Also:
Constant Field Values

serialVersionUID

private static final long serialVersionUID
The generated serialization UID (need to keep the compiler happy)

See Also:
Constant Field Values
Constructor Detail

JobWizard

public JobWizard(java.lang.String title,
                 MainFrame parent)
The constructor for the job wizard. The constructor lays out the wizard and creates all the wizard pages. The wizard pages are created as templates and get populated with the necessary information just before the pages get displayed to the user.

Parameters:
title - The title to be set for the main wizard frame.
parent - The main frame that logically owns this wizard.
Method Detail

cancel

protected boolean cancel()
Helper method invoked when user clicks cancel button. This is a helper method that is overridden in this class. This method is invoked when the user clicks the cancel button in the wizard. This method is used to display a confirmation dialog to ensure that the user really wants to exit out of the wizard.

Overrides:
cancel in class WizardDialog
Returns:
This method returns true if the user wants to quit out of the wizard dialog.

createOverview

private void createOverview()
Helper method to create the overview page. This method was introduced to keep the code clutter in the constructor to a bare minimum.


done

public void done(boolean success)
This method overrides the final notification method in this wizard. Currently this method has no specific task to perform but is present as a place holder for future enhancements.

Overrides:
done in class WizardDialog
Parameters:
success - This flag is true if the wizard completed successfully and the user clicks the finish button. Otherwise this flag is set ot false, indicating an premature exit.

getJob

protected Job getJob()
Obtain the job entry created and added by this wizard. The return value from this method is valid only after the last wizard page has been displayed and it has called the createWorkspaceEntries() method to actually create this entry.

Returns:
The job entry created by this wizard.

getMSTData

protected MSTData getMSTData()
Obtain the MST entry created and added by this wizard. The return value from this method is valid only after the last wizard page has been displayed and it has called the createWorkspaceEntries() method to actually create this entry.

Returns:
The MST entry created by this wizard.

getClusterData

protected MSTClusterData getClusterData()
Obtain the cluster entry created and added by this wizard. The return value from this method is valid only after the last wizard page has been displayed and it has called the createWorkspaceEntries() method to actually create this entry.

Returns:
The cluster entry created by this wizard.

createWorkspaceEntries

protected void createWorkspaceEntries()
This is a helper method that is invoked from the last wizard page (SubmitJobWizardPage) to create the various entries in the work space. This method creates a Job entry, a MSTData entry, and a MSTClusterData entry in the work space. This method uses the information provided by the user in the various wizard pages for performing its task.


createJobEntry

private Job createJobEntry()
Helper method to create the job entry to be added to the workspace. This method is a helper method that is used to create the actual job entry in the workspace. This method is invoked from the createWorkspaceEntries() method. This method obtains information from various wizard pages and uses them to create the job entry.

Returns:
The workspace object that represents the new job created by this method.

getSummary

protected java.lang.String getSummary()
This is a helper method that is invoked from the last wizard page (SubmitJobWizardPage) to obtain summary data. This method creates a job summary string and returns it back to the caller. This information is used to provide the user with a brief summary on the job that will be run by the wizard.


getMSTFileName

protected java.lang.String getMSTFileName()
Helper method to obtain the MST file specified by the user. This is a helper method that is used by the ClusterWizardPage to obtain the MST file specified by the user. The cluster wizard page uses this information to automatically provide a default cluster file name to the user.

Returns:
The MSTFile specified by the user.

getAnalyzerType

protected FWAnalyzer.FWAnalyzerType getAnalyzerType()
Obtain the currently selected analyzer. This method is a convenience method that can be used by other wizard pages to determine the type of the wizard that the user has currently selected. Currently this method is used by the HeuristicsWizardPage and ClusterWizardPage to enable or disable configuration.

Returns:
A predefined enumeration defining the type of analyzer that the user has currently chosen.

getDataSet

protected DataSet getDataSet()
Helper method to obtain the currently selected data set. This is a helper method that is used by the MSTWizardPage to determine the EST file specified by the user. The MST wizard page uses this information to automatically provide a default MST file name to the user.

Returns:
The full absolute path to the ESTFile specified by the user.

getMainFrame

protected MainFrame getMainFrame()
Obtain the instance of the main frame class that owns this wizard. This method is currently used by the submit job wizard page to create a job monitor once a job has been successfully submitted.

Returns:
The main frame that owns this wizard.

toCmdLine

public java.lang.String toCmdLine(java.lang.String estFile)
Return the information in the form of a complete PEACE command line. This method can be used to obtain the information needed to run PEACE with all the necessary command line parameters.

Note:The command line arguments does not include the executable path.

Parameters:
estFile - The path to the est file to be used when generating the command line.
Returns:
Return the information as a command line parameter.