author | Tero Marttila <terom@paivola.fi> |
Wed, 24 Oct 2012 19:42:16 +0300 | |
changeset 26 | 589249097230 |
parent 7 | 7baf4cccb4a9 |
child 151 | 8a9f01036091 |
permissions | -rw-r--r-- |
0 | 1 |
import werkzeug |
2 |
from werkzeug.wrappers import Request, Response |
|
4 | 3 |
from werkzeug.exceptions import HTTPException |
0 | 4 |
|
5 |
import logging; log = logging.getLogger('pvl.verkko.wsgi') |
|
6 |
||
4 | 7 |
from pvl.verkko import db as database, urls, web |
0 | 8 |
|
2
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
9 |
class Application (object) : |
4 | 10 |
urls = urls.urls |
11 |
||
2
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
12 |
def __init__ (self, db) : |
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
13 |
""" |
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
14 |
Initialize app with db. |
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
15 |
""" |
0 | 16 |
|
2
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
17 |
self.db = database.Database(db) |
0 | 18 |
|
4 | 19 |
def respond (self, request) : |
20 |
""" |
|
21 |
Lookup Request -> web.Handler, params |
|
22 |
""" |
|
23 |
||
24 |
# bind to request |
|
25 |
urls = self.urls.bind_to_environ(request) |
|
26 |
||
27 |
# lookup |
|
28 |
handler, params = urls.match() |
|
29 |
||
30 |
# handler instance |
|
7
7baf4cccb4a9
move Index to urls; fix self.url(sort=...)
Tero Marttila <terom@paivola.fi>
parents:
4
diff
changeset
|
31 |
handler = handler(self, request, urls, params) |
4 | 32 |
|
26
589249097230
hosts: convert realtime list into table; breaks animations :(
Tero Marttila <terom@paivola.fi>
parents:
7
diff
changeset
|
33 |
try : |
589249097230
hosts: convert realtime list into table; breaks animations :(
Tero Marttila <terom@paivola.fi>
parents:
7
diff
changeset
|
34 |
# apply |
589249097230
hosts: convert realtime list into table; breaks animations :(
Tero Marttila <terom@paivola.fi>
parents:
7
diff
changeset
|
35 |
return handler.respond() |
589249097230
hosts: convert realtime list into table; breaks animations :(
Tero Marttila <terom@paivola.fi>
parents:
7
diff
changeset
|
36 |
|
589249097230
hosts: convert realtime list into table; breaks animations :(
Tero Marttila <terom@paivola.fi>
parents:
7
diff
changeset
|
37 |
finally : |
589249097230
hosts: convert realtime list into table; breaks animations :(
Tero Marttila <terom@paivola.fi>
parents:
7
diff
changeset
|
38 |
handler.cleanup() |
4 | 39 |
|
2
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
40 |
@Request.application |
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
41 |
def __call__ (self, request) : |
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
42 |
""" |
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
43 |
WSGI entry point, werkzeug Request -> Response |
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
44 |
""" |
0 | 45 |
|
4 | 46 |
try : |
47 |
return self.respond(request) |
|
2
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
48 |
|
4 | 49 |
except HTTPException as ex : |
50 |
return ex |
|
2
b0659c867226
fixup pvl.verkko.wsgi.Application + test.py/wsgi to remove default path from pvl.verkko.db
Tero Marttila <terom@paivola.fi>
parents:
1
diff
changeset
|
51 |