Add a connected state for socket
This commit is contained in:
parent
1c1139df9f
commit
302add96ca
@ -197,7 +197,7 @@ class IRCServer(SocketServer):
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
def _close(self):
|
def _close(self):
|
||||||
if self.socket is not None: self.write("QUIT")
|
if self.connected: self.write("QUIT")
|
||||||
return SocketServer._close(self)
|
return SocketServer._close(self)
|
||||||
|
|
||||||
def read(self):
|
def read(self):
|
||||||
|
@ -36,6 +36,10 @@ class SocketServer(AbstractServer):
|
|||||||
def fileno(self):
|
def fileno(self):
|
||||||
return self.socket.fileno() if self.socket else None
|
return self.socket.fileno() if self.socket else None
|
||||||
|
|
||||||
|
@property
|
||||||
|
def connected(self):
|
||||||
|
return self.socket is not None
|
||||||
|
|
||||||
def _open(self):
|
def _open(self):
|
||||||
# Create the socket
|
# Create the socket
|
||||||
self.socket = socket.socket()
|
self.socket = socket.socket()
|
||||||
@ -58,7 +62,7 @@ class SocketServer(AbstractServer):
|
|||||||
|
|
||||||
def _close(self):
|
def _close(self):
|
||||||
self._sending_queue.join()
|
self._sending_queue.join()
|
||||||
if self.socket is not None:
|
if self.connected:
|
||||||
try:
|
try:
|
||||||
self.socket.shutdown(socket.SHUT_RDWR)
|
self.socket.shutdown(socket.SHUT_RDWR)
|
||||||
self.socket.close()
|
self.socket.close()
|
||||||
@ -68,7 +72,7 @@ class SocketServer(AbstractServer):
|
|||||||
return True
|
return True
|
||||||
|
|
||||||
def _write(self, cnt):
|
def _write(self, cnt):
|
||||||
if self.socket is None: return
|
if not self.connected: return
|
||||||
self.socket.send(cnt)
|
self.socket.send(cnt)
|
||||||
|
|
||||||
def format(self, txt):
|
def format(self, txt):
|
||||||
@ -78,7 +82,7 @@ class SocketServer(AbstractServer):
|
|||||||
return txt.encode() + b'\r\n'
|
return txt.encode() + b'\r\n'
|
||||||
|
|
||||||
def read(self):
|
def read(self):
|
||||||
if self.socket is None: return
|
if not self.connected: return
|
||||||
raw = self.socket.recv(1024)
|
raw = self.socket.recv(1024)
|
||||||
temp = (self.readbuffer + raw).split(b'\r\n')
|
temp = (self.readbuffer + raw).split(b'\r\n')
|
||||||
self.readbuffer = temp.pop()
|
self.readbuffer = temp.pop()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user