More stanza cleanup for pubsub.
This commit is contained in:
parent
39ec1cff19
commit
efa4a9b330
2 changed files with 37 additions and 24 deletions
|
@ -1,4 +1,12 @@
|
|||
from sleekxmpp.plugins.xep_0060.stanza.pubsub import Pubsub, Affiliation, Affiliations, Subscription, Subscriptions, SubscribeOptions, Item, Items, Create, Publish, Retract, Unsubscribe, Subscribe, Configure, Options, PubsubState, PubsubStateEvent
|
||||
from sleekxmpp.plugins.xep_0060.stanza.pubsub_owner import PubsubOwner, DefaultConfig, OwnerAffiliations, OwnerAffiliation, OwnerConfigure, OwnerDefault, OwnerDelete, OwnerPurge, OwnerRedirect, OwnerSubscriptions, OwnerSubscription
|
||||
from sleekxmpp.plugins.xep_0060.stanza.pubsub_event import Event, EventItem, EventRetract, EventItems, EventCollection, EventAssociate, EventDisassociate, EventConfiguration, EventPurge, EventSubscription
|
||||
from sleekxmpp.plugins.xep_0060.stanza.pubsub_errors import PubsubErrorCondition
|
||||
"""
|
||||
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.plugins.xep_0060.stanza.pubsub import *
|
||||
from sleekxmpp.plugins.xep_0060.stanza.pubsub_owner import *
|
||||
from sleekxmpp.plugins.xep_0060.stanza.pubsub_event import *
|
||||
from sleekxmpp.plugins.xep_0060.stanza.pubsub_errors import *
|
||||
|
|
|
@ -1,24 +1,29 @@
|
|||
from xml.etree import cElementTree as ET
|
||||
"""
|
||||
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
|
||||
|
||||
|
||||
class OptionalSetting(object):
|
||||
interfaces = set(('required',))
|
||||
|
||||
def setRequired(self, value):
|
||||
value = bool(value)
|
||||
if value and not self['required']:
|
||||
self.xml.append(ET.Element("{%s}required" % self.namespace))
|
||||
elif not value and self['required']:
|
||||
self.delRequired()
|
||||
|
||||
def getRequired(self):
|
||||
required = self.xml.find("{%s}required" % self.namespace)
|
||||
if required is not None:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
def delRequired(self):
|
||||
required = self.xml.find("{%s}required" % self.namespace)
|
||||
if required is not None:
|
||||
self.xml.remove(required)
|
||||
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)
|
||||
|
|
Loading…
Reference in a new issue