Sat, 12 Sep 2009 21:27:57 +0300
(don't know)
2 | 1 | |
2 | module("handlers", package.seeall) | |
3 | ||
4 | require("handlers.render") | |
5 | require("handlers.copy") | |
6 | require("handlers.ignore") | |
7 | ||
8 | local available={ | |
9 | { pattern = "%.page$", handler = handlers.render}, | |
10 | { pattern = "", handler = handlers.copy}, | |
11 | } | |
12 | ||
13 | ||
14 | function find(f) | |
15 | for _, h in ipairs(available) do | |
16 | if string.match(h.pattern, f) then | |
17 | return h.handler | |
18 | end | |
19 | end | |
20 | return handlers.ignore | |
21 | end | |
22 | ||
23 | local cached={} | |
24 | ||
25 | function choose(f, env) | |
26 | cached[f] = find(f) | |
27 | end | |
28 | ||
29 | -- load | |
30 | function phase1(f, env) | |
31 | return cached[f].phase1(f, env) | |
32 | end | |
33 | ||
34 | -- write | |
35 | function phase2(f, env) | |
36 | return cached[f].phase2(f, env) | |
37 | end | |
38 |