[Twisted-Python] connectionLost patch
Chris Armstrong
carmstro at twistedmatrix.com
Thu Sep 27 11:40:55 MDT 2001
I patched connectionLost in server.request to call 'connectionLost' on
resources if they have it. This is not a very good patch, and a bad
solution, I think, but redoz wanted it for some functionality he needed
in a streaming chat web thingy.
Any ideas on a better solution for disconnect notification? should this just
stay a third party feature?
-------------- next part --------------
Index: server.py
===================================================================
RCS file: /cvs/Twisted/twisted/web/server.py,v
retrieving revision 1.16
diff -u -r1.16 server.py
--- server.py 2001/09/08 11:08:13 1.16
+++ server.py 2001/09/25 20:52:10
@@ -144,6 +144,20 @@
_host = socket.gethostbyaddr(socket.gethostname())[0]
+ def connectionLost(self):
+ log.msg("%s's connection was lost" % self)
+ try:
+ self.prepath = []
+ self.postpath = string.split(self.path[1:], '/')
+ resrc = self.site.getResourceFor(self)
+ if hasattr(resrc, "connectionLost"):
+ resrc.connectionLost(self)
+ except:
+ io = StringIO()
+ traceback.print_exc(file=io)
+ log.msg("Unkown error during connectionLost :-(\n%s" % io.getvalue())
+ http.HTTP.connectionLost(self)
+
def process(self):
"Process a request."
# Log the request to a file.
More information about the Twisted-Python
mailing list