def _getEventAndObservers(self, event): if isinstance(event, xpath.XPathQuery): # Treat as xpath observers = self._xpathObservers else: if self.prefix == event[:len(self.prefix)]: # Treat as event observers = self._eventObservers else: # Treat as xpath event = xpath.internQuery(event) observers = self._xpathObservers return event, observers
def _getEventAndObservers(self, event): if isinstance(event, xpath.XPathQuery): # Treat as xpath observers = self._xpathObservers else: if self.prefix == event[: len(self.prefix)]: # Treat as event observers = self._eventObservers else: # Treat as xpath event = xpath.internQuery(event) observers = self._xpathObservers return event, observers
# -*- test-case-name: lib.twisted.words.test.test_jabberclient -*- # # Copyright (c) 2001-2009 Twisted Matrix Laboratories. # See LICENSE for details. from lib.twisted.internet import defer from lib.twisted.words.xish import domish, xpath, utility from lib.twisted.words.protocols.jabber import xmlstream, sasl, error from lib.twisted.words.protocols.jabber.jid import JID NS_XMPP_STREAMS = 'urn:ietf:params:xml:ns:xmpp-streams' NS_XMPP_BIND = 'urn:ietf:params:xml:ns:xmpp-bind' NS_XMPP_SESSION = 'urn:ietf:params:xml:ns:xmpp-session' NS_IQ_AUTH_FEATURE = 'http://jabber.org/features/iq-auth' DigestAuthQry = xpath.internQuery("/iq/query/digest") PlaintextAuthQry = xpath.internQuery("/iq/query/password") def basicClientFactory(jid, secret): a = BasicAuthenticator(jid, secret) return xmlstream.XmlStreamFactory(a) class IQ(domish.Element): """ Wrapper for a Info/Query packet. This provides the necessary functionality to send IQs and get notified when a result comes back. It's a subclass from L{domish.Element}, so you can use the standard DOM manipulation calls to add data to the outbound request. @type callbacks: L{utility.CallbackList}