April 2024 - This site, and Kamaelia are being updated. There is significant work needed, and PRs are welcome.

Kamaelia.File.Writing

Simple File Writer

This component writes any data it receives to a file.

Example Usage

Copying a file:

from Kamaelia.File.Writing import SimpleFileWriter

Pipeline(RateControlledFileReader("sourcefile",rate=1000000),
         SimpleFileWriter("destinationfile")
        ).activate()

More detail

Any data sent to this component's inbox is written to the specified file. Any existing file with the same name is overwritten.

The file is opened for writing when the component is activated, and is closed when it shuts down.

This component terminates, closing the file, if it receives a shutdownMicroprocess or producerFinished message on its "control" inbox. The message is passed on out of its "signal" outbox.

Development history

SimpleFileWriter - prototyped in /Sketches/filereading/WriteFileAdapter.py


Kamaelia.File.Writing.SimpleFileWriter

class SimpleFileWriter(Axon.Component.component)

SimpleFileWriter(filename) -> component that writes data to the file

Writes any data sent to its inbox to the specified file.

Inboxes

  • control : to receive shutdown/finished messages
  • inbox : data to write to file

Outboxes

  • outbox : not used
  • signal : shutdown/finished signalling

Methods defined here

Warning!

You should be using the inbox/outbox interface, not these methods (except construction). This documentation is designed as a roadmap as to their functionalilty for maintainers and new component developers.

__init__(self, filename[, mode])

x.__init__(...) initializes x; see x.__class__.__doc__ for signature

closeDownComponent(self)

Closes the file handle

main(self)

Main loop

shutdown(self)

Returns True if a shutdownMicroprocess or producerFinished message is received.

Also passes the message on out of the "signal" outbox.

writeData(self, data)

Writes the data to the file

Feedback

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, 05 Jun 2009 at 03:01:38 UTC/GMT