On 12 May 2010 03:48, Glyn Normington <[email protected]> wrote:

> I'm sorry I don't already know if these are already provided, but two
> critical requirements for the OSGi shell are:
>
> 1. tab completion of command syntax and parameters (such as bundle symbolic
> names and version numbers)
> 2. "up arrow" command recall (preferably filtered by any current input
> including that provided by tab completion)
>
> Glyn
>


Hi Glyn,

RFC-147 defines an OSGi CommandProcessor service containing a single method:

    CommandSession createSession(InputStream in, PrintStream out,
PrintStream err);

and the primary method in the CommandSession interface is:

    Object execute(CharSequence commandline) throws Exception;

The above defines the RFC-147 "runtime" bundle, which does not contain any
mechanism for user input.

Typically, a separate shell or console bundle, not defined in RFC-147, will
get input from the user and pass it to CommandSession.execute(). It is thus
these bundles, and not the RFC-147 runtime, that is responsible for creating
command completion and history etc.

Derek

Reply via email to