Ignore:
Timestamp:
Dec 27, 2011, 11:33:55 PM (12 years ago)
Author:
Jessica B. Hamrick <jhamrick@…>
Branches:
no-cups
Children:
ce2abc5
Parents:
7c143c9
git-author:
Jessica B. Hamrick <jhamrick@…> (12/27/11 23:33:55)
git-committer:
Jessica B. Hamrick <jhamrick@…> (12/27/11 23:33:55)
Message:

Implement send-document operation and add threading so that the gutenbach server can play jobs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • server/lib/gutenbach/server/__init__.py

    ree8e6d0 re58af05  
    1 from server import GutenbachIPPServer
     1import errors
     2from errors import *
     3__all__ = ['errors']
     4__all__.extend(errors.__all__)
     5
     6from job import Job
     7__all__.append('Job')
     8
     9from printer import GutenbachPrinter
     10__all__.append('GutenbachPrinter')
     11
     12from requests import make_empty_response, GutenbachRequestHandler
     13__all__.append('make_empty_response')
     14__all__.append('GutenbachRequestHandler')
     15
     16from server import GutenbachServer, IPPServer
     17__all__.append('GutenbachServer')
     18__all__.append('IPPServer')
     19
    220import BaseHTTPServer
    321import logging
     
    523import traceback
    624
    7 # configure logging
     25# configure and initialize logging
    826logging.basicConfig(level=logging.DEBUG)
    9 
    10 # initialize logger
    1127logger = logging.getLogger(__name__)
    1228
    13 def error(self, request, client_address):
     29def error(self, request=None, client_address=None):
    1430    logger.fatal(traceback.format_exc())
     31    self.gutenbach_server.request_stop = True
    1532    sys.exit(1)
    1633
    1734def start():
     35    logger.info("Starting Gutenbach server...")
     36    gutenbach = GutenbachServer()
     37    gutenbach.start()
     38
     39    logger.info("Starting IPP server...")
    1840    server_address = ('', 8000)
    19     httpd = BaseHTTPServer.HTTPServer(server_address, GutenbachIPPServer)
     41    httpd = BaseHTTPServer.HTTPServer(server_address, IPPServer)
    2042    httpd.handle_error = error.__get__(httpd)
    21     httpd.serve_forever()
     43    httpd.gutenbach_server = gutenbach
     44    while gutenbach.isAlive():
     45        try:
     46            httpd.handle_request()
     47        except:
     48            error(httpd)
    2249
    23 if __name__ == "__main__":
    24     start()
     50__all__.append('start')
Note: See TracChangeset for help on using the changeset viewer.