#!/usr/bin/python # -*- coding: utf-8 -*- # main (wsgi) request handler for patch-tracking system # this handler file basically farms out all its work to the ReqHandler # module, which in turn splits up the request URI and acts accordingly. import os import sys def application(env, resp): # everything is currently run relative to the pagehandler script. whereami = os.path.dirname(env['SCRIPT_FILENAME']) sys.path+=[whereami] os.chdir(whereami) import patchtracker.ReqHandler as ReqHandler try: cmdh = ReqHandler.CmdHandler(env) resp(cmdh.status, cmdh.headers) return cmdh.output() except ReqHandler.ReqHandlerException, e: resp(e.status, [('Content-Type', 'text/html')]) return ReqHandler.ErrorCmd(str(e), e.status).output() if __name__ == '__main__': os.environ['SCRIPT_FILENAME'] = sys.argv[0] from wsgiref import simple_server as ss print "pagehandler test server running..." server = ss.WSGIServer( ('',8080), ss.WSGIRequestHandler) server.set_app(application) while True: try: server.handle_request() except IOError, e: print "adsf: ",e