""" Slixmpp: The Slick XMPP Library Copyright (C) 2012 Nathanael C. Fritz, Lance J.T. Stout This file is part of Slixmpp. See the file LICENSE for copying permission. """ from slixmpp.stanza import Message, Presence, Iq from slixmpp.xmlstream import ElementBase class Forwarded(ElementBase): name = 'forwarded' namespace = 'urn:xmpp:forward:0' plugin_attrib = 'forwarded' interfaces = set(['stanza']) def get_stanza(self): for stanza in self: if isinstance(stanza, (Message, Presence, Iq)): return stanza return '' def set_stanza(self, value): self.del_stanza() self.append(value) def del_stanza(self): found_stanzas = [] for stanza in self: if isinstance(stanza, (Message, Presence, Iq)): found_stanzas.append(stanza) for stanza in found_stanzas: self.iterables.remove(stanza) self.xml.remove(stanza.xml)