mirror of
https://github.com/correl/SleekXMPP.git
synced 2024-12-22 11:09:11 +00:00
Merge branch 'hacks' of github.com:tomstrummer/SleekXMPP into hacks
This commit is contained in:
commit
5d87a54913
1 changed files with 20 additions and 19 deletions
|
@ -59,7 +59,7 @@ class XMLStream(object):
|
||||||
self.ssl_support = ssl_support
|
self.ssl_support = ssl_support
|
||||||
self.escape_quotes = escape_quotes
|
self.escape_quotes = escape_quotes
|
||||||
self.state = statemachine.StateMachine(('disconnected','connecting',
|
self.state = statemachine.StateMachine(('disconnected','connecting',
|
||||||
'connected'))
|
'connected'))
|
||||||
self.should_reconnect = True
|
self.should_reconnect = True
|
||||||
|
|
||||||
self.setSocket(socket)
|
self.setSocket(socket)
|
||||||
|
@ -240,7 +240,7 @@ class XMLStream(object):
|
||||||
if self.should_reconnect:
|
if self.should_reconnect:
|
||||||
self.disconnect(reconnect=True)
|
self.disconnect(reconnect=True)
|
||||||
|
|
||||||
logging.debug('Quitting Process thread')
|
logging.debug('Quitting Process thread')
|
||||||
|
|
||||||
def __readXML(self):
|
def __readXML(self):
|
||||||
"Parses the incoming stream, adding to xmlin queue as it goes"
|
"Parses the incoming stream, adding to xmlin queue as it goes"
|
||||||
|
@ -302,23 +302,24 @@ class XMLStream(object):
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def disconnect(self, reconnect=False):
|
def disconnect(self, reconnect=False):
|
||||||
if not self.state.transition('connected','disconnected'):
|
with self.state.transition_ctx('connected','disconnected') as locked:
|
||||||
logging.warning("Already disconnected.")
|
if not locked:
|
||||||
return
|
logging.warning("Already disconnected.")
|
||||||
logging.debug("Disconnecting...")
|
return
|
||||||
self.sendRaw(self.stream_footer)
|
logging.debug("Disconnecting...")
|
||||||
time.sleep(5)
|
self.sendRaw(self.stream_footer)
|
||||||
#send end of stream
|
time.sleep(5)
|
||||||
#wait for end of stream back
|
#send end of stream
|
||||||
try:
|
#wait for end of stream back
|
||||||
# self.socket.shutdown(socket.SHUT_RDWR)
|
try:
|
||||||
self.socket.close()
|
# self.socket.shutdown(socket.SHUT_RDWR)
|
||||||
except socket.error as (errno,strerror):
|
self.socket.close()
|
||||||
logging.exception("Error while disconnecting. Socket Error #%s: %s" % (errno, strerror))
|
except socket.error as (errno,strerror):
|
||||||
try:
|
logging.exception("Error while disconnecting. Socket Error #%s: %s" % (errno, strerror))
|
||||||
self.filesocket.close()
|
try:
|
||||||
except socket.error as (errno,strerror):
|
self.filesocket.close()
|
||||||
logging.exception("Error closing filesocket.")
|
except socket.error as (errno,strerror):
|
||||||
|
logging.exception("Error closing filesocket.")
|
||||||
|
|
||||||
if reconnect: self.connect()
|
if reconnect: self.connect()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue