Module onionr.httpapi.fdsafehandler
Source code
from gevent.pywsgi import WSGIServer, WSGIHandler
from gevent import Timeout
class FDSafeHandler(WSGIHandler):
'''Our WSGI handler. Doesn't do much non-default except timeouts'''
def handle(self):
self.timeout = Timeout(120, Exception)
self.timeout.start()
try:
WSGIHandler.handle(self)
except Timeout as ex:
if ex is self.timeout:
pass
else:
raise
Classes
class FDSafeHandler (sock, address, server, rfile=None)
-
Our WSGI handler. Doesn't do much non-default except timeouts
Source code
class FDSafeHandler(WSGIHandler): '''Our WSGI handler. Doesn't do much non-default except timeouts''' def handle(self): self.timeout = Timeout(120, Exception) self.timeout.start() try: WSGIHandler.handle(self) except Timeout as ex: if ex is self.timeout: pass else: raise
Ancestors
- gevent.pywsgi.WSGIHandler
Methods
def handle(self)
-
The main request handling method, called by the server.
This method runs a request handling loop, calling :meth:
handle_one_request
until all requests on the connection have been handled (that is, it implements keep-alive).Source code
def handle(self): self.timeout = Timeout(120, Exception) self.timeout.start() try: WSGIHandler.handle(self) except Timeout as ex: if ex is self.timeout: pass else: raise