| 16 | |
| 17 | |
| 18 | class UpdateHttpServer: |
| 19 | def __init__(self, port, bind, catalog_dir): |
| 20 | def handler(*args): |
| 21 | UpdateHTTPRequestHandler(catalog_dir, *args) |
| 22 | httpd = http.server.HTTPServer((bind, port), handler) |
| 23 | sa = httpd.socket.getsockname() |
| 24 | logger.info('http server starting {0}:{1} {2}'.format(sa[0], sa[1], catalog_dir)) |
| 25 | try: |
| 26 | httpd.serve_forever() |
| 27 | except KeyboardInterrupt: |
| 28 | logger.info('Shutting down...') |
| 29 | httpd.socket.close() |
| 30 | |
| 31 | |
| 32 | class UpdateHTTPRequestHandler(http.server.BaseHTTPRequestHandler): |