Mercurial > hg > bitsyauth
comparison example/persona.py @ 27:b411066b4929
example/persona.py
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Thu, 26 Dec 2013 22:43:24 -0800 |
parents | feeb97e8c23c |
children | 0bf52646061b |
comparison
equal
deleted
inserted
replaced
26:feeb97e8c23c | 27:b411066b4929 |
---|---|
13 | 13 |
14 here = os.path.dirname(os.path.realpath(__file__)) | 14 here = os.path.dirname(os.path.realpath(__file__)) |
15 page = os.path.join(here, 'persona.html') | 15 page = os.path.join(here, 'persona.html') |
16 | 16 |
17 class PersonaTest(object): | 17 class PersonaTest(object): |
18 def __init__(self, page): | 18 def __init__(self, page=page): |
19 self.page = page or globals()['page'] | 19 self.page = page |
20 assert os.path.exists(self.page), "File '%s' not found" % self.page | 20 assert os.path.exists(self.page), "File '%s' not found" % self.page |
21 self.page = open(self.page, 'r').read() | 21 self.page = open(self.page, 'r').read() |
22 def __call__(self, environ, start_response): | 22 def __call__(self, environ, start_response): |
23 raise NotImplementedError | 23 start_response("200 OK", [('Content-Type', 'text/html'), |
24 ('Content-Length', str(len(self.page)))]) | |
25 return [self.page] | |
24 | 26 |
25 def main(args=sys.argv[1:]): | 27 def main(args=sys.argv[1:]): |
26 | 28 |
27 usage = '%prog [options]' | 29 usage = '%prog [options]' |
28 parser = optparse.OptionParser(usage=usage, description=__doc__) | 30 parser = optparse.OptionParser(usage=usage, description=__doc__) |
29 parser.add_option('-p', '--port', dest='port', | 31 parser.add_option('-p', '--port', dest='port', |
30 type='int', default=8123, | 32 type='int', default=8123, |
31 help="port to serve on") | 33 help="port to serve on") |
32 options, args = parser.parse_args(args) | 34 options, args = parser.parse_args(args) |
33 | 35 |
36 app = PersonaTest() | |
37 | |
34 server = simple_server.make_server('127.0.0.1', options.port, app) | 38 server = simple_server.make_server('127.0.0.1', options.port, app) |
35 print 'server on http://localhost:8080' | 39 print 'server on\nhttp://localhost:%d/' % options.port |
36 try: | 40 try: |
37 server.serve_forever() | 41 server.serve_forever() |
38 except KeyboardInterrupt: | 42 except KeyboardInterrupt: |
39 pass | 43 pass |
40 | 44 |