Helper for WSGIResource which drives the WSGI application using a threadpool and hooks it up to the http.Request.

Instance Variable started A bool indicating whether or not the response status and headers have been written to the request yet. This may only be read or written in the WSGI application thread.
Instance Variable reactor An IReactorThreads provider which is used to call methods on the request in the I/O thread.
Instance Variable threadpool A ThreadPool which is used to call the WSGI application object in a non-I/O thread.
Instance Variable application The WSGI application object.
Instance Variable request The http.Request upon which the WSGI environment is based and to which the application's output will be sent.
Instance Variable environ The WSGI environment dict.
Instance Variable status The HTTP response status str supplied to the WSGI start_response callable by the application.
Instance Variable headers A list of HTTP response headers supplied to the WSGI start_response callable by the application.
Method __init__ Undocumented
Method startResponse The WSGI start_response callable. The given values are saved until they are needed to generate the response.
Method write The WSGI write callable returned by the start_response callable. The given bytes will be written to the response body, possibly flushing the status and headers first.
Method start Start the WSGI application in the threadpool.
Method run Call the WSGI application object, iterate it, and handle its output.
Instance Variable _requestFinished A flag which indicates whether it is possible to generate more response data or not. This is False until http.Request.notifyFinish tells us the request is done, then True.
Method _finished Record the end of the response generation for the request being serviced.
Method _sendResponseHeaders No summary
started =
A bool indicating whether or not the response status and headers have been written to the request yet. This may only be read or written in the WSGI application thread.
reactor =
An IReactorThreads provider which is used to call methods on the request in the I/O thread.
threadpool =
A ThreadPool which is used to call the WSGI application object in a non-I/O thread.
application =
The WSGI application object.
request =
The http.Request upon which the WSGI environment is based and to which the application's output will be sent.
environ =
The WSGI environment dict.
status =
The HTTP response status str supplied to the WSGI start_response callable by the application.
headers =
A list of HTTP response headers supplied to the WSGI start_response callable by the application.
_requestFinished =
A flag which indicates whether it is possible to generate more response data or not. This is False until http.Request.notifyFinish tells us the request is done, then True.
def __init__(self, reactor, threadpool, application, request): (source)
Undocumented
def _finished(self, ignored): (source)

Record the end of the response generation for the request being serviced.

def startResponse(self, status, headers, excInfo=None): (source)

The WSGI start_response callable. The given values are saved until they are needed to generate the response.

This will be called in a non-I/O thread.

def write(self, data): (source)

The WSGI write callable returned by the start_response callable. The given bytes will be written to the response body, possibly flushing the status and headers first.

This will be called in a non-I/O thread.

def _sendResponseHeaders(self): (source)

Set the response code and response headers on the request object, but do not flush them. The caller is responsible for doing a write in order for anything to actually be written out in response to the request.

This must be called in the I/O thread.

def start(self): (source)

Start the WSGI application in the threadpool.

This must be called in the I/O thread.

def run(self): (source)

Call the WSGI application object, iterate it, and handle its output.

This must be called in a non-I/O thread (ie, a WSGI application thread).

API Documentation for Twisted, generated by pydoctor at 2018-07-14 04:53:34.