3.10.19. Web Server Classes
Most of the source in master/buildbot/www is self-explanatory. However, a few classes and methods deserve some special mention.
3.10.19.1. Resources
- class buildbot.www.resource.Redirect(url)
- This is a subclass of Twisted Web’s - Error. If this is raised within- asyncRenderHelper, the user will be redirected to the given URL.
- class buildbot.www.resource.Resource
- This class specializes the usual Twisted Web - Resourceclass.- It adds support for resources getting notified when the master is reconfigured. - needsReconfig
- If True, - reconfigResourcewill be called on reconfig.
 - reconfigResource(new_config)
- Parameters:
- new_config – new - MasterConfiginstance
- Returns:
- Deferred if desired 
 - Reconfigure this resource. 
 - It’s surprisingly difficult to render a Twisted Web resource asynchronously. This next method makes it quite a bit easier. - asyncRenderHelper(request, callable, writeError=None)
- Parameters:
- request – the request instance 
- callable – the render function 
- writeError – optional callable for rendering errors 
 
 - This method will call - callable, which can be async or a Deferred, with the given- request. The value returned from this callable will be converted to an HTTP response. Exceptions, including- Errorsubclasses, are handled properly. If the callable raises- Redirect, the response will be a suitable HTTP 302 redirect.- Use this method as follows: - def render_GET(self, request): return self.asyncRenderHelper(request, self.renderThing)