class documentation

class twisted.words.xish.xmlstream.XmlStream(protocol.Protocol, utility.EventDispatcher): (source)

Known subclasses: twisted.words.protocols.jabber.xmlstream.XmlStream

View In Hierarchy

Generic Streaming XML protocol handler.

This protocol handler will parse incoming data as XML and dispatch events accordingly. Incoming stanzas can be handled by registering observers using XPath-like expressions that are matched against each stanza. See utility.EventDispatcher for details.

Method __init__ Undocumented
Instance Variable stream Undocumented
Instance Variable rawDataOutFn Undocumented
Instance Variable rawDataInFn Undocumented
Method connectionMade Called when a connection is made.
Method dataReceived Called whenever data is received.
Method connectionLost Called when the connection is shut down.
Method onDocumentStart Called whenever the start tag of a root element has been received.
Method onElement Called whenever a direct child element of the root element has been received.
Method onDocumentEnd Called whenever the end tag of the root element has been received.
Method setDispatchFn Set another function to handle elements.
Method resetDispatchFn Set the default function (onElement) to handle elements.
Method send Send data over the stream.
Method _initializeStream Sets up XML Parser.

Inherited from Protocol:

Class Variable factory Undocumented
Method logPrefix Return a prefix matching the class name, to identify log messages related to this protocol instance.

Inherited from BaseProtocol (via Protocol):

Instance Variable connected Undocumented
Instance Variable transport Undocumented
Method makeConnection Make a connection to a transport and a server.

Inherited from EventDispatcher:

Instance Variable prefix Undocumented
Method addOnetimeObserver Register a one-time observer for an event.
Method addObserver Register an observer for an event.
Method removeObserver Remove callable as observer for an event.
Method dispatch Dispatch an event.
Instance Variable _eventObservers Undocumented
Instance Variable _xpathObservers Undocumented
Instance Variable _dispatchDepth Undocumented
Instance Variable _updateQueue Undocumented
Method _getEventAndObservers Undocumented
Method _addObserver Undocumented
stream = (source)

Undocumented

rawDataOutFn = (source)

Undocumented

rawDataInFn = (source)

Undocumented

def _initializeStream(self): (source)

Sets up XML Parser.

def connectionMade(self): (source)

Called when a connection is made.

Sets up the XML parser and dispatches the STREAM_CONNECTED_EVENT event indicating the connection has been established.

def dataReceived(self, data): (source)

Called whenever data is received.

Passes the data to the XML parser. This can result in calls to the DOM handlers. If a parse error occurs, the STREAM_ERROR_EVENT event is called to allow for cleanup actions, followed by dropping the connection.

def connectionLost(self, reason): (source)

Called when the connection is shut down.

Dispatches the STREAM_END_EVENT.

def onDocumentStart(self, rootElement): (source)

Called whenever the start tag of a root element has been received.

Dispatches the STREAM_START_EVENT.

def onElement(self, element): (source)

Called whenever a direct child element of the root element has been received.

Dispatches the received element.

def onDocumentEnd(self): (source)

Called whenever the end tag of the root element has been received.

Closes the connection. This causes connectionLost being called.

def setDispatchFn(self, fn): (source)

Set another function to handle elements.

def resetDispatchFn(self): (source)

Set the default function (onElement) to handle elements.

def send(self, obj): (source)

Send data over the stream.

Sends the given obj over the connection. obj may be instances of domish.Element, unicode and str. The first two will be properly serialized and/or encoded. str objects must be in UTF-8 encoding.

Note: because it is easy to make mistakes in maintaining a properly encoded str object, it is advised to use unicode objects everywhere when dealing with XML Streams.

ParametersobjObject to be sent over the stream. (type: domish.Element, domish or str)
API Documentation for Twisted, generated by pydoctor 20.12.1 at 2021-02-28 19:53:36.