Rework batch related commands for better UX
Analysis
Summary
The batch command is difficult to use. The combination of options is not that obvious to use. Batch command is associated to a bunch of other commands (discard-batch, run-batch, …) that are somehow hidden. A new command should be introduce to clearly offer action for all batch related use cases.
Requirements
100% compatibility for existing commands. Existing batch command option combinations should still be usable from scripts but hidden from completion. They are replaced by a reworked “batch” command with the following actions:
- clear - Removes all the existing command lines from the batch.
- discard - Discards the currently active batch.
- edit-line - Replaces existing command line from the current batch
- holdback - Saves the currently active batch and exits the batch.
- list - Lists all the commands in the currently active batch.
- list-holdbacks - Prints a list of currently held back batches.
- load-file - Create a new batch and feeds it with commands.
- move-line - Moves existing line from the specified position to the new position.
- new - Starts the batch mode by creating a new batch.
- re-activate - Re-activate an heldback batch.
- remove-line - Removes an existing command line specified with line number.
- run - Run a batch.
- run-file - Run a batch file.
Design Notes
New command is developped with aesh 1.0 Command API.
In order to avoid maintain 2 batch logic (legacy commands and new command), the legacy options are supported by calling into the new command internally.
General
Product Issue(s)
https://issues.jboss.org/browse/EAP7-739
Upstream Issue(s)
https://issues.jboss.org/browse/WFCORE-3224
Developer Contacts
Jean-François Denise (jdenise@redhat.com)
Comments