| Summary: | Add TAB completion and command History to Virgo console | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [RT] Virgo | Reporter: | Hristo Iliev <hsiliev> | ||||||||||||||
| Component: | unknown | Assignee: | Hristo Iliev <hsiliev> | ||||||||||||||
| Status: | CLOSED FIXED | QA Contact: | |||||||||||||||
| Severity: | enhancement | ||||||||||||||||
| Priority: | P3 | CC: | glyn.normington, l.kirchev | ||||||||||||||
| Version: | unspecified | ||||||||||||||||
| Target Milestone: | 3.0.0.M01 | ||||||||||||||||
| Hardware: | All | ||||||||||||||||
| OS: | All | ||||||||||||||||
| Whiteboard: | |||||||||||||||||
| Attachments: |
|
||||||||||||||||
|
Description
Hristo Iliev
Created attachment 187287 [details]
Proposed patch for enhanced telnet support over the equinox console
This patch provides the following improvements of the equinox telnet:
- telnet terminal type negotiation
- command line editing (commands history, backspace, delete, arrows, pgup, pgdown, home, end, insert)
- grep command
- simple command completion
The bundle is a framework extension.
Created attachment 187288 [details]
Documentation patch for the telnet enhancement patch
This patch provides documentation for the telnet supportability patch.
Some comments on the proposed patch in attachment 187287 [details]. 1. The Virgo convention is to end testcase classes in "Tests" rather than "Test". 2. The code needs reformatting to match Virgo conventions, e.g. the method scanNegotiation contains larger indentation than is normal. Please see http://wiki.eclipse.org/Virgo/Committers/Coding. 3. There are some mysterious integer literals in the tests, such as 100. It is probably worth defining constants for these to make it clear whether there is something special about 100 or it was just an example value. Other than that the code is reasonably structured and I gather the test coverage is good. I note that the diagnostics are pretty low level, but this is necessary if the code is going to reside in the OSGi extensions git repository since this may not depend on medic. Comments on the proposed documentation patch in attachment 187288 [details]: this all looks good, but the section "Securing the Equinox Console" talks about how to configure osgi.console and also presumes that it is set (to 2401) by default, whereas in Virgo it is switched off by default. The configuration information should probably be moved to the configuration chapter of the user guide and, if necessary, a cross-reference can be made.
Please note that once these patches have been reworked, a Virgo committer will need to raise a CQ as they contain more than 250 LOCs. Created attachment 187527 [details]
Proposed patch for enhanced telnet support over the equinox console
I attach the patch with the corrected code.
Created attachment 187529 [details]
Documentation patch for the telnet enhancement patch
I attache the patch with the corrected documentation.
Attachment 187527 [details] is fine except that .settings files such as org.eclipse.jdt.ui.prefs should not be checked in. Attachment 187529 [details] is also better now, but I would like the new configuration section to be linked from the definition of the osgi.console property in the table entitled "User Region Configuration Properties" in http://www.eclipse.org/virgo/documentation/virgo-documentation-2.1.0.RELEASE/docs/virgo-user-guide/htmlsingle/virgo-user-guide.html#configuring-kernel. (Please note that the osgi.console property will move to the kernel launch properties in due course as part of the change to implement the user region in terms of framework hooks rather than a nested framework with its own framework properties. So I should be careful to move the documentation of the property too.) Created attachment 187730 [details]
Proposed patch for enhanced telnet support over the equinox console
Update for the patch.
Created attachment 187731 [details]
Documentation patch for the telnet enhancement patch
Update of the documentation patch.
CQ 4859 raised to cover the contribution. (In reply to comment #11) > CQ 4859 raised to cover the contribution. CQ is approved. This patch can be applied as soon as a committer has the time to apply it and run the tests. (In reply to comment #12) > (In reply to comment #11) > > CQ 4859 raised to cover the contribution. > > CQ is approved. This patch can be applied as soon as a committer has the time > to apply it and run the tests. Thanks Glyn! Regards, Lazar Coverage results: org.eclipse.virgo.osgi.console.common (85,6%) ConsoleInputStream (89,4%) ConsoleOutputStream (78,7%) InputHandler (90,5%) Scanner (92,5%) SimpleByteBuffer (83,2%) org.eclipse.virgo.osgi.console.supportability (86,1%) CommandCompleter (100%) CommandCompleter.CommandProviderCustomizer (50%) ConsoleInputHandler (100%) ConsoleInputScanner (85%) Grep (89,7%) HistoryHolder (92,2%) org.eclipse.virgo.osgi.console.telnet (85,7%) ANSITerminalTypeMappings (100%) NegotiationFinishedCallback (100%) SCOTerminalTypeMappings (100%) TelnetConsoleSession (90,4%) TelnetInputHandler (100%) TelnetInputScanner (81,6%) TelnetManager (86,5%) TelnetManager.ConsoleSocketGetter (72,2%) TelnetOutputStream (100%) TerminalTypeMappings (92,9%) VT100TerminalTypeMappings (100%) VT220TerminalTypeMappings (100%) VT320TerminalTypeMappings (100%) org.eclipse.virgo.osgi.console.telnet.hook (88,9%) TelnetHook (88,2%) TelnetHookConfigurator (100%) commit fa71ed4d6b0ff99e92c80c214b886d7c5044569e Author: Hristo Iliev <hsiliev@gmail.com> Date: Sat Jan 29 14:54:13 2011 +0200 bug 328566: Negotiation timeout is now configurable to reduce the tests execution from 120 to around 4 seconds commit a22928da380e04d4c65e67f18343dc4555897c52 Author: Hristo Iliev <hsiliev@gmail.com> Date: Sat Jan 29 11:18:35 2011 +0200 bug 328566: changed the tests wait time from 10 to 2 seconds commit dca28ed19a957c7ebbcfacc5648817d212dceb32 Author: Lazar Kirchev <l.kirchev@sap.com> Date: Thu Jan 27 16:48:41 2011 +0200 bug 328566: enhanced telnet support over the equinox console commit f04288690654806efab8a6fa5f62363bbc5984fc Author: Hristo Iliev <hsiliev@gmail.com> Date: Sat Jan 29 20:59:08 2011 +0200 bug 328566: o.e.v.osgi.console bundle added in lib/kernel Contribution is now in kernel and web distribution |