ReST Todo List ($Date: 2005/08/29 15:14:20 $) 1.0.1 Patch Todo: * escape characters in output.xml * possibly use this work-around to fix 1.4.0 issue (http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4670102) * Change open dialog to a combo box with list of previouly opened packages * Add auto complete to JComboBox - http://www.orbital-computer.de/JComboBox/ Post-1.0 Todo: (1) Graphical Packager (1) New Registry (2) ReST environment (vars, paths, etc.) (2) Dependencies (Oi!) (2) persistent groups (maybe a way to add an old group to new installs?) (2) configurable install and build directories (3) DOM -> SAX ?? (3) predefs (4) Onerror tags & error reporting (4) Allow for panel insertion in Installer only from secure package New Registry Structure (Post 1.0) .rest/ |- output/ - Now historical |- packages/ - names based on some hash. now full package xml |- registry.xml - history removed, headers reduced, refers to package xml |- history.xml - historical info from reg moved here. Packages: *** High Priority *** * NetSolve (done) * GridSolve (done) * LAPACK (done) * BLAS (done) * SCALAPACK (done) * PetSC * PAPI tester Installer: Remote ReST environment vars usefull for installation ReST Agent -- first iteration done Option to Auto-Accept host key error Rename GSAP to ReST in classes etc. Create option to select log output location Local Install - we might not want to wait too long for this. Windows Support - this may be a high priority as well. Keygen and installation support - future version ** This could be done both as a utility and as a package. ** Simple-level...run ssh-keygen from a package and install key ** More complex...use jsch to generate a key, this would require application customization. ** Either way, we'll have to assume OpenSSH to start. Add advanced support to panel specific components - future version Define how to do patching. - future version ** Document that this could be done w/ patch command called from package. Sandbox for issuing commands - future version ** What did we mean here? Is this remote or local? ** Remote Package Constraints - future version Options add exclusivity attribute - future version Storage of Saved info on IBP Land - future version Change Groups between intsallation - future version Fix LocCellRenderer interaction with DisplayItem class - future version Command line interface - future version DONE: If no package ask for location of package to load Documentation *** High Priority *** Try a webstart installation Output Handling - see InstallerLocInfo TODO comment ** We have basic ouput handling in the form of XML output. Scripting installation Graceful handling of HostChanged exception Password group support Password entering error Password in-memory caching warning but not written to disk Fix handling of multiple filemasters when moving a filemaster from group to group Force attribute to subs in XML Save Installation State as XML -- see gsiregistry.xsd Add "master" attribute for groupings in Location - (future version no longer) Catch error when location name is unresolvable and handle accordingly Update welcome screen Fix DNS resolving to support IP Addresses - already worked Separate Package name into a short name (name) and title (title) - xsd and java * Done in xsd as name and title...title being the free-form string for the application title bar. * Done in java Actions support in GUI Move installation to LocationGroup Thread Grouping Use the System Property "path.separator" in the paths Actions support in Java Add PkgHdr to LocGrp Fix adding events correctly to existing RegistryHeaders Make forceChecksum attribute move checksum uri into sequence Registry Support Fix LocInputDialog to return on pressing enter or return keys Change FS to gsap/arch/package/group Package.xml directory support w/ filter Add knownhosts and keys to registry File systems - build side (let's use 'echo "`uname -m`_`uname -s`" | grep sed "s/ /_/"') Catch error codes Package name as command line argument -- accepted as an xml file Knownhost support Package Definition Error message callbacks for location installs AUTHENTICATION_ERROR TRANSFER_ERROR REMOTE_COMMAND_ERROR config.guess parsing Command grouping in package.xml Authentication (Keys done, passwd done twice) - build side Fix "null Configure Options" Pkg License support -- XML is ready =oP -- GUI is ready :-D Howto handle default errormsg and status msg Option descriptions - XML done, Java done Command descriptions, errormsg, statusmsg - XML done, Java done override toString methods in PackageCommand and PackageCOmmandOptions Package name as command line argument -- local or website Create "Finish" button when done. Add "Finish" button at end. Fix removing servers from installer setup License accept/reject in gui. Substitutions support Fix gotoPrevious on a previously unloaded panel, i.e. switching to advanced view and visiting a new panel that just appear previous to the current panel Added initial advanced setup in the gui Command options - gui support Fix getDescription and getTitle in GSI_Panels to handle no text in XML package Add "changed" support to Locations and LocationGroups Explorer: Plugin support What does the Explorer need to know about each plugin 1) file name plugin.properties Main_Class property defining the main class name 2) main class must define several methods ** String[] getItemNames() - returns an array of the names of the different vpItems * vpItem[] getItems(String vpItemName || int index) - array of vpItems defined by index in getItemNames array * JPanel getItemInfo(String vpItemName || int index) - returns information about the selected vpItemType * boolean refreshItems(String vpItemName || int index) - returns if successfully update the vpItems defined by the index in the getItemNames array * boolean refreshALlItems() - default method for refreshAllItems(false) * boolean refreshAllItems(boolean force) - returns if all items successfully update * void autoRefreshItem(long ms) - auto refreshes the items so if refreshAllItems is called and it is with in the specified ms then just the items are returned and no interaction occurs between the plugin it's applications What need to be changed to support the plugin architecture 1) vpItem must include also * String[] getActions(boolean isAdvanced) - return the actions excluding the advanced if isAdvanced is false * vpItemAction getAction(String actionName || int index) - returns a vpItemAction displaying the information necessary to inform the user of the action status * void info(boolean isAdvanced) - specific information about the item -- done * void open(boolean isAdvanced) - open new frame -- done * Correct the dimensions on vpItem -- done /** * Maybe include but I think it would be to complicated for the plugin * creator * JMenu getContextMenu(boolean isAdvanced) - context menu defining * it's specific actions and must handle the events */ What must be created to support the plugin architecture 1) vpItemAction * boolean apply() * boolean pause() * boolean start() * boolean stop() Create Registry plugin add more information to vpItem Change textarea to a JTextPane and suport formated text, maybe a JEditorPane and support text/html Add ping pong - useful to determine closest server RIB integration - future version DONE: Add to CVS Move to edu.utk.cs.icl.gsap.explorer package Add NetSolveClient.jar to vendors Fix build script Make it work within this package finish generic vpItemInfo functionality Monitor: Make it work within this package Switch to DisplayItem 2.0 classes DONE: Add NetSolveClient.jar to vendors Add to CVS Move to edu.utk.cs.icl.gsap.monitor package Fix build script