RFC Name : TaskMonitorRefactoring |
Editor(s): ScooterMorris |
Status: Work in Progress |
Proposal
The current TaskMonitor mechanism has a number of flaws and challenges. First, task monitors are managed by passing task monitor objects as arguments to various methods. This can be onerous, since it means that all routines which call routines that might need a task monitor must themselves either accept a task monitor as an argument, or create a task monitor. Second, as Cytoscape processing becomes more complex, a single progress bar is no longer sufficient. For example, BioPAX loading has several steps, and each step updates the progress bar. This provides the user with information about how long the current step might take, but gives them no feedback about how many steps there are.
Open Issues
Backward Compatibility
Expected growth and plan for growth
References
Implementation Plan
One proposal would be to:
- Enhance the current task monitor to provide two progress bars: an overall progress, and a progress within this step.
- Provide a singleton class that represents the "current" task monitor. Processing routines could use this to determine if a task monitor is available, and update it if it is. This would allow us to avoid having to pass task monitor objects to all routines.
Comments
How to Comment
Edit the page and add your comments under the provided header. By adding your ideas to the Wiki directly, we can more easily organize everyone's ideas, and keep clear records. Be sure to include today's date and your name for each comment. Try to keep your comments as concrete and constructive as possible. For example, if you find a part of the RFC makes no sense, please say so, but don't stop there. Take the extra step and propose alternatives.