Merge branch 'master' into develop
This commit is contained in:
commit
3655827ef2
@ -421,33 +421,32 @@ class JID(object):
|
|||||||
if jid is None or jid == '':
|
if jid is None or jid == '':
|
||||||
jid = ''
|
jid = ''
|
||||||
|
|
||||||
if jid in JID_CACHE:
|
if not jid:
|
||||||
self._jid = JID_CACHE[jid]
|
jid = (None, None, None)
|
||||||
|
elif jid in JID_CACHE:
|
||||||
|
jid = JID_CACHE[jid]
|
||||||
|
elif not isinstance(jid, JID):
|
||||||
|
jid = _parse_jid(jid)
|
||||||
else:
|
else:
|
||||||
if not jid:
|
jid = jid._jid
|
||||||
jid = (None, None, None)
|
|
||||||
elif not isinstance(jid, JID):
|
|
||||||
jid = _parse_jid(jid)
|
|
||||||
else:
|
|
||||||
jid = jid._jid
|
|
||||||
|
|
||||||
local, domain, resource = jid
|
local, domain, resource = jid
|
||||||
|
|
||||||
local = kwargs.get('local', local)
|
local = kwargs.get('local', local)
|
||||||
domain = kwargs.get('domain', domain)
|
domain = kwargs.get('domain', domain)
|
||||||
resource = kwargs.get('resource', resource)
|
resource = kwargs.get('resource', resource)
|
||||||
|
|
||||||
if 'local' in kwargs:
|
if 'local' in kwargs:
|
||||||
local = _escape_node(local)
|
local = _escape_node(local)
|
||||||
if 'domain' in kwargs:
|
if 'domain' in kwargs:
|
||||||
domain = _validate_domain(domain)
|
domain = _validate_domain(domain)
|
||||||
if 'resource' in kwargs:
|
if 'resource' in kwargs:
|
||||||
resource = _validate_resource(resource)
|
resource = _validate_resource(resource)
|
||||||
|
|
||||||
self._jid = (local, domain, resource)
|
self._jid = (local, domain, resource)
|
||||||
JID_CACHE[_format_jid(*self._jid)] = self._jid
|
JID_CACHE[_format_jid(*self._jid)] = self._jid
|
||||||
if len(JID_CACHE) > JID_CACHE_MAX_SIZE:
|
if len(JID_CACHE) > JID_CACHE_MAX_SIZE:
|
||||||
JID_CACHE.popitem(False)
|
JID_CACHE.popitem(False)
|
||||||
|
|
||||||
def unescape(self):
|
def unescape(self):
|
||||||
"""Return an unescaped JID object.
|
"""Return an unescaped JID object.
|
||||||
|
@ -479,11 +479,11 @@ class RosterItem(object):
|
|||||||
self.xmpp.event('roster_subscription_removed', presence)
|
self.xmpp.event('roster_subscription_removed', presence)
|
||||||
|
|
||||||
def handle_probe(self, presence):
|
def handle_probe(self, presence):
|
||||||
if self['to']:
|
if self['from']:
|
||||||
self.send_last_presence()
|
self.send_last_presence()
|
||||||
if self['pending_out']:
|
if self['pending_out']:
|
||||||
self.subscribe()
|
self.subscribe()
|
||||||
if not self['to']:
|
if not self['from']:
|
||||||
self._unsubscribed()
|
self._unsubscribed()
|
||||||
|
|
||||||
def reset(self):
|
def reset(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user