webmcp
annotate framework/env/request/add_initializer.lua @ 255:9e4be058959d
New functions request.add_initializer(...) and request.add_variable(...) to allow per-request initialization; Merged request.process() with request.handler(...)
author | jbe |
---|---|
date | Sat Mar 14 23:39:47 2015 +0100 (2015-03-14) |
parents | |
children |
rev | line source |
---|---|
jbe@255 | 1 --[[-- |
jbe@255 | 2 request.add_initializer( |
jbe@255 | 3 func -- function to be called on every request |
jbe@255 | 4 ) |
jbe@255 | 5 |
jbe@255 | 6 Registers a function to be called on every request. This mechanism can be used for __init.lua files in the environment to perform a per-request initialization. See env/request/__init.lua for an example. |
jbe@255 | 7 |
jbe@255 | 8 --]]-- |
jbe@255 | 9 |
jbe@255 | 10 function request.add_initializer(func) |
jbe@255 | 11 local initializers = request._initializers |
jbe@255 | 12 initializers[#initializers+1] = func |
jbe@255 | 13 if request._in_progress then |
jbe@255 | 14 func(true) |
jbe@255 | 15 end |
jbe@255 | 16 end |