Source code for slixmpp.plugins.xep_0060.stanza.base
"""
Slixmpp: The Slick XMPP Library
Copyright (C) 2011 Nathanael C. Fritz
This file is part of Slixmpp.
See the file LICENSE for copying permission.
"""
from slixmpp.xmlstream import ET
[docs]class OptionalSetting(object):
interfaces = {'required'}
[docs] def set_required(self, value):
if value in (True, 'true', 'True', '1'):
self.xml.append(ET.Element("{%s}required" % self.namespace))
elif self['required']:
self.del_required()
[docs] def get_required(self):
required = self.xml.find("{%s}required" % self.namespace)
return required is not None
[docs] def del_required(self):
required = self.xml.find("{%s}required" % self.namespace)
if required is not None:
self.xml.remove(required)