summaryrefslogtreecommitdiff
path: root/flup/server/paste_factory.py
blob: 2024d45423c4f04e58ce7f8d97565070d10ba5c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def helper(wsgiServerClass, global_conf, host, port, **local_conf):
    # I think I can't write a tuple for bindAddress in .ini file
    host = host or global_conf.get('host', 'localhost')
    port = port or global_conf.get('port', 4000)

    if 'socket' in local_conf:
        local_conf['bindAddress'] = local_conf['socket']
        del local_conf['socket']
    else:
        local_conf['bindAddress'] = (host, int(port))
    
    def server(application):
        server = wsgiServerClass(application, **local_conf)
        server.run()

    return server