2
0
mirror of https://github.com/xcat2/confluent.git synced 2025-07-12 07:41:32 +00:00

Have sessions deleted on disconnect

When the shell session disconnects, destroy all dependent
sessions.
This commit is contained in:
Jarrod Johnson
2016-01-08 14:39:01 -05:00
parent 2419d95b74
commit 6e1adc88dd

View File

@ -37,6 +37,8 @@ class _ShellHandler(consoleserver.ConsoleHandler):
def _got_disconnected(self):
self.connectstate = 'closed'
self._send_rcpts({'connectstate': self.connectstate})
for session in self.livesessions:
session.destroy()
@ -103,6 +105,10 @@ class ShellSession(consoleserver.ConsoleSession):
activesessions[(tenant, self.node)][self.sessionid] = _ShellHandler(self.node, self.configmanager)
self.conshdl = activesessions[(self.configmanager.tenant, self.node)][self.sessionid]
def destroy(self):
del activesessions[(self.configmanager.tenant, self.node)][self.sessionid]
super(ShellSession, self).destroy()
def create(nodes, element, configmanager, inputdata):
# For creating a resource, it really has to be handled
# in httpapi/sockapi specially, like a console.