Package pyxmpp :: Module objects :: Class StanzaPayloadObject
[show private | hide private]
[frames | no frames]

Type StanzaPayloadObject

object --+
         |
        StanzaPayloadObject

Known Subclasses:
Delay, Field, Form, Item, Option, Register, Roster, RosterItem, VCard

Base class for objects that may be used as XMPP stanza payload and don't keep internal XML representation, only parsed values.

Provides as_xml method. Derived classes must override xml_element_name and xml_element_namespace class attributes and the complete_xml_element method.

Please note that not all classes derived from StanzaPayloadObject should be used directly as stanza payload. Some of them are parts of higher level objects.


Method Summary
libxml2.xmlNode or libxml2.xmlDoc as_xml(self, parent, doc)
Get the XML representation of self.
  complete_xml_element(self, xmlnode, doc)
Complete the XML node with self content.
    Inherited from object
  __init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
  __delattr__(...)
x.__delattr__('name') <==> del x.name
  __getattribute__(...)
x.__getattribute__('name') <==> x.name
  __hash__(x)
x.__hash__() <==> hash(x)
  __new__(T, S, ...)
T.__new__(S, ...) -> a new object with type S, a subtype of T
  __reduce__(...)
helper for pickle
  __reduce_ex__(...)
helper for pickle
  __repr__(x)
x.__repr__() <==> repr(x)
  __setattr__(...)
x.__setattr__('name', value) <==> x.name = value
  __str__(x)
x.__str__() <==> str(x)

Class Variable Summary
unicode xml_element_name: name for the XML element provided by the class.
unicode xml_element_namespace: namespace URI for the XML element provided by the class.

Method Details

as_xml(self, parent=None, doc=None)

Get the XML representation of self.

New document will be created if no parent and no doc is given.

Parameters:
parent - the parent for the XML element.
           (type=libxml2.xmlNode)
doc - the document where the element should be created. If not given and parent is provided then autodetection is attempted. If that fails, then common_doc is used.
           (type=libxml2.xmlDoc)
Returns:
the new XML element or document created.
           (type=libxml2.xmlNode or libxml2.xmlDoc)

complete_xml_element(self, xmlnode, doc)

Complete the XML node with self content.

Should be overriden in classes derived from StanzaPayloadObject.

Parameters:
xmlnode - XML node with the element being built. It has already right name and namespace, but no attributes or content.
           (type=libxml2.xmlNode)
doc - document to which the element belongs.
           (type=libxml2.xmlDoc)

Class Variable Details

xml_element_name

name for the XML element provided by the class.
Type:
unicode
Value:
None                                                                  

xml_element_namespace

namespace URI for the XML element provided by the class.
Type:
unicode
Value:
None