Software /
code /
prosody
Diff
net/http/server.lua @ 7605:2481ebc7f715
Merge 0.10->trunk
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 18 Aug 2016 17:36:46 +0200 |
parent | 7582:e080b8b4f3cb |
child | 8362:c7d6c2558a24 |
line wrap: on
line diff
--- a/net/http/server.lua Thu Aug 18 17:23:06 2016 +0200 +++ b/net/http/server.lua Thu Aug 18 17:36:46 2016 +0200 @@ -22,6 +22,7 @@ local listener = {}; local hosts = {}; local default_host; +local options = {}; local function is_wildcard_event(event) return event:sub(-2, -1) == "/*"; @@ -31,7 +32,7 @@ end local _handlers = events._handlers; -local recent_wildcard_events = cache.new(10000, function (key, value) +local recent_wildcard_events = cache.new(10000, function (key, value) -- luacheck: ignore 212/value rawset(_handlers, key, nil); end); @@ -133,7 +134,10 @@ sessions[conn] = nil; conn:close(); end - sessions[conn] = parser_new(success_cb, error_cb); + local function options_cb() + return options; + end + sessions[conn] = parser_new(success_cb, error_cb, "server", options_cb); end function listener.ondisconnect(conn) @@ -170,7 +174,7 @@ end }); -function _M.hijack_response(response, listener) +function _M.hijack_response(response, listener) -- luacheck: ignore error("TODO"); end function handle_request(conn, request, finish_cb) @@ -350,6 +354,9 @@ function _M.fire_event(event, ...) return events.fire_event(event, ...); end +function _M.set_option(name, value) + options[name] = value; +end _M.listener = listener; _M.codes = codes;