view server.py @ 57:83c3f19d7770

made static_file_serving.py work recursively
author Atul Varma <avarma@mozilla.com>
date Mon, 28 Jun 2010 16:46:00 -0700
parents 818e16d3f262
children dbddb0083637
line wrap: on
line source

import os

from wsgiref.simple_server import make_server
from wsgiref.util import shift_path_info

from summitidp.static_file_serving import StaticFileApp
from summitidp.easy import make_wsgi_app

def send_email(email, token):
    print "Please send %s an email with the token %s." % (email, token)

def run_server(mydir, send_email=send_email, host='', port=8000):
    api_app = make_wsgi_app(os.path.join(mydir, 'storage'), send_email)

    static_files_dir = os.path.join(mydir, 'static-files')
    static_file_app = StaticFileApp(static_files_dir)

    def app(environ, start_response):
        if environ['PATH_INFO'].startswith('/api/'):
            shift_path_info(environ)
            return api_app(environ, start_response)

        return static_file_app(environ, start_response)

    httpd = make_server(host, port, app)
    print 'serving on port %d' % port
    httpd.serve_forever()

if __name__ == '__main__':
    run_server(os.getcwd())