Package com.sun.javatest.exec
Class BasicSessionControl
- java.lang.Object
-
- com.sun.javatest.exec.BasicSessionControl
-
- All Implemented Interfaces:
ET_Control,com.sun.javatest.exec.ET_RunTestControl.Observer,ET_SessionControl,InterviewEditor.Observer,Session.Observer
public class BasicSessionControl extends java.lang.Object implements InterviewEditor.Observer, com.sun.javatest.exec.ET_RunTestControl.Observer, ET_SessionControl, Session.Observer
Class that encapsulate logic of user's actions on update session: operations on configuration and work directory. Some methods are added to preserve old functionality...
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classBasicSessionControl.E_EditorVisibilityEvent to be sent out when Editor become visible/invisibleprotected classBasicSessionControl.SessionView
-
Field Summary
Fields Modifier and Type Field Description protected ContextManagercmprotected InterviewEditorinterviewEditorprotected javax.swing.JComponentparentprotected SessionExtsessionprotected javax.swing.JPanelsessionViewprotected TestSuitetestSuiteprotected UIFactoryuif
-
Constructor Summary
Constructors Constructor Description BasicSessionControl(javax.swing.JComponent parent, UIFactory uif, TestSuite ts, ContextManager cm)Creates a control over new created session for the passed test suite.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidapplyWorkDir(WorkDirectory wd)Applies value of the selected work directory.voidchanged(InterviewParameters p)InterviewEditor.Observer method.voidchangedVisibility(boolean isVisible, InterviewEditor editor)InterviewEditor.Observer method.protected voidcheckExcludeListUpdate(javax.swing.JComponent parent, boolean quietIfNoUpdate, Parameters params)static Parametersclone(Parameters p)Clones passed parameters.voidconfigure()Causes a series of actions to be performed to complete configuration:
If session is already ready - does nothing.
If work directory is not set - suggests creating or opening one
Opens configuration editor.protected SessionExtcreateEmptySession()Creates an empty configuration for the test suite.protected InterviewEditorcreateInterviewEditor(InterviewParameters ip)Creates an InterviewEditor instance.protected ToolActioncreateNewWorkDirAction()protected javax.swing.JPanelcreateSessionView()protected ToolActioncreateSetWorkDirAction()protected booleancreateWD()Causes the dialog for new directory creating to appear.voiddispose()voidedit()Causes configuration editor to appear.voidensureInterviewUpToDate()voidfinishTests(Parameters p)Invoked when runTestHandler completed test executionjavax.swing.JMenugetMenu()Returts menu to be added to the menu marprotected booleangetNeedToAutoCheckExcludeList(Parameters params)SessiongetSession()Returns the session object under controljava.util.List<javax.swing.Action>getToolBarActionList()Returns list of actions to be added to the tool barprotected UIFactorygetUIFactory()Method returning UIFactory to be used to create InterviewEditor instance.javax.swing.JComponentgetViewComponent()Returns the panel reflecting the current state of the sessionprotected voidinitActions()protected booleaninitEditor()Initializes interviewEditor.protected voidinitHistoryListeners()booleanisConfiguring()protected booleanisEditorVisible()voidrestore(java.util.Map<java.lang.String,java.lang.String> m)Restores saved state from the mapvoidrestoreConfigFromWD(WorkDirectory wd)Tries to restore latest available configuration for the session.voidsave(java.util.Map<java.lang.String,java.lang.String> m)Saves current state to the mapprotected booleansetWD()Causes the dialog for work directory selecting to appear.protected voidshowConfigureDialog()protected voidshowWorkDirDialog()voidstartTests(Parameters p)Invoked when runTestHandler is going to start test executionvoidupdated(Session.Event ev)Invoked when state of config has changedvoidupdateGUI()Invoked when some change has happenedvoidwhatToDoWhenConfigNotReadyButUserPressedStartButton(javax.swing.Action startAction)
-
-
-
Field Detail
-
session
protected final SessionExt session
-
testSuite
protected final TestSuite testSuite
-
uif
protected UIFactory uif
-
parent
protected javax.swing.JComponent parent
-
sessionView
protected javax.swing.JPanel sessionView
-
interviewEditor
protected InterviewEditor interviewEditor
-
cm
protected ContextManager cm
-
-
Constructor Detail
-
BasicSessionControl
public BasicSessionControl(javax.swing.JComponent parent, UIFactory uif, TestSuite ts, ContextManager cm) throws Session.FaultCreates a control over new created session for the passed test suite.- Parameters:
parent-uif-ts-cm-- Throws:
Session.Fault
-
-
Method Detail
-
clone
public static Parameters clone(Parameters p) throws Session.Fault
Clones passed parameters. Works only for InterviewParameters instances.- Parameters:
p- instance to clone, might be null.- Returns:
- cloned object obtained for the passed one by performing save/load operations.
- Throws:
Session.Fault
-
getSession
public Session getSession()
Returns the session object under control- Specified by:
getSessionin interfaceET_SessionControl- Returns:
- The session associated with this instance.
-
getViewComponent
public javax.swing.JComponent getViewComponent()
Returns the panel reflecting the current state of the session- Specified by:
getViewComponentin interfaceET_SessionControl
-
getToolBarActionList
public java.util.List<javax.swing.Action> getToolBarActionList()
Description copied from interface:ET_ControlReturns list of actions to be added to the tool bar- Specified by:
getToolBarActionListin interfaceET_Control
-
save
public void save(java.util.Map<java.lang.String,java.lang.String> m)
Description copied from interface:ET_ControlSaves current state to the map- Specified by:
savein interfaceET_Control
-
restore
public void restore(java.util.Map<java.lang.String,java.lang.String> m)
Description copied from interface:ET_ControlRestores saved state from the map- Specified by:
restorein interfaceET_Control
-
dispose
public void dispose()
- Specified by:
disposein interfaceET_Control
-
createEmptySession
protected SessionExt createEmptySession() throws Session.Fault
Creates an empty configuration for the test suite. By default BasicSession is used. It's supposed for subclasses to override this method.- Returns:
- created session.
- Throws:
Session.Fault
-
ensureInterviewUpToDate
public void ensureInterviewUpToDate()
-
startTests
public void startTests(Parameters p)
Invoked when runTestHandler is going to start test execution- Specified by:
startTestsin interfacecom.sun.javatest.exec.ET_RunTestControl.Observer
-
finishTests
public void finishTests(Parameters p)
Invoked when runTestHandler completed test execution- Specified by:
finishTestsin interfacecom.sun.javatest.exec.ET_RunTestControl.Observer
-
whatToDoWhenConfigNotReadyButUserPressedStartButton
public void whatToDoWhenConfigNotReadyButUserPressedStartButton(javax.swing.Action startAction)
-
checkExcludeListUpdate
protected void checkExcludeListUpdate(javax.swing.JComponent parent, boolean quietIfNoUpdate, Parameters params)
-
getNeedToAutoCheckExcludeList
protected boolean getNeedToAutoCheckExcludeList(Parameters params)
-
getMenu
public javax.swing.JMenu getMenu()
Description copied from interface:ET_ControlReturts menu to be added to the menu mar- Specified by:
getMenuin interfaceET_Control
-
initEditor
protected boolean initEditor()
Initializes interviewEditor.- Returns:
- true if initialized successfully, false if failed.
-
createInterviewEditor
protected InterviewEditor createInterviewEditor(InterviewParameters ip)
Creates an InterviewEditor instance. Subclasses might override this method to create an alternative editor.- Parameters:
ip- parameters to be edited
-
getUIFactory
protected UIFactory getUIFactory()
Method returning UIFactory to be used to create InterviewEditor instance.
-
edit
public void edit()
Causes configuration editor to appear. If workdir is not set, suggests to create one first.- Specified by:
editin interfaceET_SessionControl
-
configure
public void configure()
Causes a series of actions to be performed to complete configuration:
If session is already ready - does nothing.
If work directory is not set - suggests creating or opening one
Opens configuration editor.- Specified by:
configurein interfaceET_SessionControl
-
isConfiguring
public boolean isConfiguring()
- Specified by:
isConfiguringin interfaceET_SessionControl- Returns:
- true if configure() method is running or configuration is editing.
-
showWorkDirDialog
protected void showWorkDirDialog()
-
showConfigureDialog
protected void showConfigureDialog()
-
initActions
protected void initActions()
-
createNewWorkDirAction
protected ToolAction createNewWorkDirAction()
-
createSetWorkDirAction
protected ToolAction createSetWorkDirAction()
-
initHistoryListeners
protected void initHistoryListeners()
-
createSessionView
protected javax.swing.JPanel createSessionView()
-
updateGUI
public void updateGUI()
Description copied from interface:ET_ControlInvoked when some change has happened- Specified by:
updateGUIin interfaceET_Control
-
isEditorVisible
protected boolean isEditorVisible()
- Returns:
- true if user has an interview editor open.
-
changed
public void changed(InterviewParameters p)
InterviewEditor.Observer method. Invoked when current session has changed from InterviewEditor- Specified by:
changedin interfaceInterviewEditor.Observer- Parameters:
p-
-
changedVisibility
public void changedVisibility(boolean isVisible, InterviewEditor editor)InterviewEditor.Observer method. Invoked when InterviewEditor is made either visible or invisible. Implementations call updateGUI() to enable/disable actions.- Specified by:
changedVisibilityin interfaceInterviewEditor.Observer- Parameters:
isVisible- - true or falseeditor- editor that changed the state
-
createWD
protected boolean createWD()
Causes the dialog for new directory creating to appear. Invoked from createNewWorkDirAction. Subclasses might override this method to perform extra actions associated with creating new work directory, like setting template.- Returns:
- true if configuration editing is required after WorkDir created
-
setWD
protected boolean setWD()
Causes the dialog for work directory selecting to appear. Invoked from createSetWorkDirAction. Subclasses might override this method to perform extra actions associated with setting work directory, like setting template.- Returns:
- true if configuration editing is required after WorkDir set
-
applyWorkDir
protected void applyWorkDir(WorkDirectory wd)
Applies value of the selected work directory.- Parameters:
wd-
-
restoreConfigFromWD
public void restoreConfigFromWD(WorkDirectory wd) throws Session.Fault
Tries to restore latest available configuration for the session.- Parameters:
wd-- Throws:
Session.Fault
-
updated
public void updated(Session.Event ev)
Description copied from interface:Session.ObserverInvoked when state of config has changed- Specified by:
updatedin interfaceSession.Observer- Parameters:
ev- - Event describing the change
-
-