I am not aware of any docs about stream handling in gogo.

Gogo is based on the OSGi RFC-147, which I believe has now been withdrawn, as 
it was not considered important to have multiple OSGi shell implementations 
conforming to a common interface.

The intent of RFC-147 was that a command could be written as a POJO, without 
any references to OSGi:
- Gogo commands don’t have to to implement any interface
- they can simply read and write System.in and System.out - which works as 
expected when connected to gogo via telnet or ssh

Session.getKeyboard() should NOT generally be used:
- it makes the code gogo-specific
- it stops the code working in a pipeline

The main use-case for Session.getKeyboard() to to allow the implementation of a 
gogo paging filter command, like less(1).

In this case, the command needs to read its control keys (e.g. enter for next 
page etc) from Session.getKeyboard() and NOT from System.in which contains the 
input being pages.

RFC-147 also defined a rich terminal interface that allowed full control of the 
terminal e.g. to implement command-line editing or curses-like terminal 
utilities, but it was not implemented.

—
Derek



On 5 Nov 2014, at 12:09, Jan Winter <[email protected]> wrote:

> Thanks Derek (again :) )
> 
> I added this check in the past as I used the 'session.getKeyboard()' stream.
> - because of a endless-loop on readLine() (sometimes)
> 
> Exist anywhere a documentation about stream handling in pipe-mode (etc..)?
> 
> Regards Jan.
> 
> 
> 
> 
> 
> 
> --
> View this message in context: 
> http://apache-felix.18485.x6.nabble.com/gogo-runtime-0-10-Closure-executeStatement-methode-should-be-syncronized-tp5010375p5010378.html
> Sent from the Apache Felix - Users mailing list archive at Nabble.com.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to