source:
server/lib/gutenbach/server/__init__.py
@
33ea505
Last change on this file since 33ea505 was 33ea505, checked in by Jessica B. Hamrick <jhamrick@…>, 12 years ago | |
---|---|
|
|
File size: 1.2 KB |
Rev | Line | |
---|---|---|
[e58af05] | 1 | import errors |
2 | from errors import * | |
3 | __all__ = ['errors'] | |
4 | __all__.extend(errors.__all__) | |
5 | ||
[33ea505] | 6 | from job import GutenbachJob |
7 | __all__.append('GutenbachJob') | |
[e58af05] | 8 | |
9 | from printer import GutenbachPrinter | |
10 | __all__.append('GutenbachPrinter') | |
11 | ||
12 | from requests import make_empty_response, GutenbachRequestHandler | |
13 | __all__.append('make_empty_response') | |
14 | __all__.append('GutenbachRequestHandler') | |
15 | ||
[eee389a] | 16 | from server import IPPServer |
[e58af05] | 17 | __all__.append('IPPServer') |
18 | ||
[287d6ec] | 19 | import BaseHTTPServer |
[d04a689] | 20 | import logging |
[6effd50] | 21 | import sys |
[ee8e6d0] | 22 | import traceback |
[d04a689] | 23 | |
[e58af05] | 24 | # configure and initialize logging |
[d21198f] | 25 | logging.basicConfig(level=logging.DEBUG) |
[ee8e6d0] | 26 | logger = logging.getLogger(__name__) |
27 | ||
[e58af05] | 28 | def error(self, request=None, client_address=None): |
[ee8e6d0] | 29 | logger.fatal(traceback.format_exc()) |
[eee389a] | 30 | self.gutenbach_printer.running = False |
[6effd50] | 31 | sys.exit(1) |
[478ca74] | 32 | |
[287d6ec] | 33 | def start(): |
[e58af05] | 34 | logger.info("Starting Gutenbach server...") |
[eee389a] | 35 | gutenbach = GutenbachPrinter("test") |
[e58af05] | 36 | gutenbach.start() |
37 | ||
38 | logger.info("Starting IPP server...") | |
[478ca74] | 39 | server_address = ('', 8000) |
[e58af05] | 40 | httpd = BaseHTTPServer.HTTPServer(server_address, IPPServer) |
[6effd50] | 41 | httpd.handle_error = error.__get__(httpd) |
[eee389a] | 42 | httpd.gutenbach_printer = gutenbach |
[e58af05] | 43 | while gutenbach.isAlive(): |
44 | try: | |
45 | httpd.handle_request() | |
46 | except: | |
47 | error(httpd) | |
[287d6ec] | 48 | |
[e58af05] | 49 | __all__.append('start') |
Note: See TracBrowser
for help on using the repository browser.