Bump to 1.3.1
[slixmpp.git] / sleekxmpp / plugins / xep_0091 / stanza.py
blob17e557642c5d577c21540444d21c755971761c55
1 """
2 SleekXMPP: The Sleek XMPP Library
3 Copyright (C) 2012 Nathanael C. Fritz, Lance J.T. Stout
4 This file is part of SleekXMPP.
6 See the file LICENSE for copying permission.
7 """
9 import datetime as dt
11 from sleekxmpp.jid import JID
12 from sleekxmpp.xmlstream import ElementBase
13 from sleekxmpp.plugins import xep_0082
16 class LegacyDelay(ElementBase):
18 name = 'x'
19 namespace = 'jabber:x:delay'
20 plugin_attrib = 'legacy_delay'
21 interfaces = set(('from', 'stamp', 'text'))
23 def get_from(self):
24 from_ = self._get_attr('from')
25 return JID(from_) if from_ else None
27 def set_from(self, value):
28 self._set_attr('from', str(value))
30 def get_stamp(self):
31 timestamp = self._get_attr('stamp')
32 return xep_0082.parse('%sZ' % timestamp) if timestamp else None
34 def set_stamp(self, value):
35 if isinstance(value, dt.datetime):
36 value = value.astimezone(xep_0082.tzutc)
37 value = xep_0082.format_datetime(value)
38 self._set_attr('stamp', value[0:19].replace('-', ''))
40 def get_text(self):
41 return self.xml.text
43 def set_text(self, value):
44 self.xml.text = value
46 def del_text(self):
47 self.xml.text = ''