August'24: Kamaelia is in maintenance mode and will recieve periodic updates, about twice a year, primarily targeted around Python 3 and ecosystem compatibility. PRs are always welcome. Latest Release: 1.14.32 (2024/3/24)

Kamaelia.Protocol.MimeRequestComponent

Mime Request Component.

Takes a request of the form:

XXXXX <url> PROTO/Ver Key: value Key: value Content-Length: value Key: value >>blank line<< >body text<

And converts it into a python object that contains:
requestMethod : string url : string Protocol : string Protocol Version : string (not parsed into a number) KeyValues : dict body : raw data

Has a default inbox, and a default outbox. Requests data comes in the inbox. MimeRequest objects come out the outbox.


Kamaelia.Protocol.MimeRequestComponent.MimeRequestComponent

class MimeRequestComponent(Axon.Component.component)

Component that accepts raw data, parses it into consituent parts of a MIME request. Attempts no interpretation of the request however.

Inboxes

Outboxes

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)

checkEndOfHeader(self)

getALine(self)

Sets the CURRENT line arguments

getData(self)

getRequestLine(self)

Sets the REQUEST line arguments

handleDataAquisition(self)

This is currently clunky and effectively implements a state machine. Should consider rewriting as a generator

initialiseComponent(self)

mainBody(self)

nextLine(self)

readHeader(self)

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