This component takes chunks of text and splits them at line breaks into individual lines.
A system that connects to a server and receives fragmented text data, but then displays it a whole line at a time:
Pipeline( TCPClient(host=..., port=...), chunks_to_lines(), ConsoleEcho() ).run()
chunks_to_lines buffers all text it receives on its "inbox" inbox. If there is a line break ("n") in the text it has buffered, then it extracts that line of text, including the line break character and sends it on out of its "outbox" outbox.
It also removes any "r" characters in the text.
If a producerFinished() or shutdownMicroprocess() message is received on this component's "control" inbox, then it will send it on out of its "signal" outbox and immediately terminate. It will not flush any whole lines of text that may still be buffered.
chunks_to_lines() -> new chunks_to_lines component.
Takes in chunked textual data and splits it at line breaks into individual lines.
Main loop.
Returns True if a shutdownMicroprocess or producerFinished message was received.
Got a problem with the documentation? Something unclear that could be clearer? Want to help improve it? Constructive criticism is very welcome - especially if you can suggest a better rewording!
Please leave you feedback here in reply to the documentation thread in the Kamaelia blog.
-- Automatic documentation generator, 19 Oct 2008 at 14:29:09 UTC/GMT