2011-09-01 21:20:58 +00:00
|
|
|
"""
|
|
|
|
SleekXMPP: The Sleek XMPP Library
|
|
|
|
Copyright (C) 2011 Nathanael C. Fritz
|
|
|
|
This file is part of SleekXMPP.
|
|
|
|
|
|
|
|
See the file LICENSE for copying permission.
|
|
|
|
"""
|
|
|
|
|
|
|
|
from sleekxmpp.xmlstream import ET
|
|
|
|
|
2011-08-04 06:56:24 +00:00
|
|
|
|
|
|
|
class OptionalSetting(object):
|
|
|
|
|
2011-09-01 21:20:58 +00:00
|
|
|
interfaces = set(('required',))
|
|
|
|
|
|
|
|
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()
|
|
|
|
|
|
|
|
def get_required(self):
|
|
|
|
required = self.xml.find("{%s}required" % self.namespace)
|
|
|
|
return required is not None
|
|
|
|
|
|
|
|
def del_required(self):
|
|
|
|
required = self.xml.find("{%s}required" % self.namespace)
|
|
|
|
if required is not None:
|
|
|
|
self.xml.remove(required)
|