hand over message handling after initial handshake instead of delegating

This commit is contained in:
Jakob Ketterl
2019-09-28 00:25:36 +02:00
parent 42c59a3aa0
commit cbc7b73b1d
2 changed files with 48 additions and 41 deletions

View File

@ -38,7 +38,7 @@ class WebSocketConnection(object):
def __init__(self, handler, messageHandler):
self.handler = handler
self.handler.connection.setblocking(0)
self.messageHandler = messageHandler
self.setMessageHandler(messageHandler)
(self.interruptPipeRecv, self.interruptPipeSend) = Pipe(duplex=False)
self.open = True
self.sendLock = threading.Lock()
@ -64,6 +64,9 @@ class WebSocketConnection(object):
self.pingTimer = None
self.resetPing()
def setMessageHandler(self, messageHandler):
self.messageHandler = messageHandler
def get_header(self, size, opcode):
ws_first_byte = 0b10000000 | (opcode & 0x0F)
if size > 2 ** 16 - 1: