home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyo (Python 2.5)
-
- from jabber.objects.gmail.mail_thread_info import MailThreadInfo
- from pyxmpp.utils import from_utf8
- from jabber.jabber_util.functions import xpath_eval
- from pyxmpp.xmlextra import get_node_ns_uri
- from jabber.objects.gmail import GOOGLE_MAIL_NOTIFY_NS
- from pyxmpp.objects import StanzaPayloadObject
-
- class Mailbox(StanzaPayloadObject, list):
- xml_element_name = 'mailbox'
- xml_element_namespace = GOOGLE_MAIL_NOTIFY_NS
-
- def __init__(self, xmlnode):
- self._Mailbox__from_xml(xmlnode)
-
-
- def __from_xml(self, node):
- if node.type != 'element':
- raise ValueError, 'XML node is not a %s element (not en element)' % self.xml_element_name
-
- ns = get_node_ns_uri(node)
- if ns or ns != self.xml_element_namespace or node.name != self.xml_element_name:
- raise ValueError, 'XML node is not an %s element' % self.xml_element_name
-
- self.result_time = int(from_utf8(node.prop('result-time')))
- self.total_matched = int(from_utf8(node.prop('total-matched')))
- self.url = from_utf8(node.prop('url'))
- total_estimate = node.prop('messages')
- self.total_estimate = None if total_estimate else 0
- threads = xpath_eval(node, 'g:mail-thread-info', {
- 'g': GOOGLE_MAIL_NOTIFY_NS })
- self.extend((lambda .0: for thread in .0:
- MailThreadInfo(thread))(threads))
-
-
-