diff options
author | Loïc Hoguin <[email protected]> | 2019-09-28 15:40:41 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2019-09-28 15:40:41 +0200 |
commit | cf84f59d9bdf819d943b3de8e3bc85c561f88efe (patch) | |
tree | aa06efaba01ff939865797892c22f753b17ffe2d /src/cowboy_router.erl | |
parent | 7bccad4d21b56837a1d9ded905b53800558ead8e (diff) | |
download | cowboy-cf84f59d9bdf819d943b3de8e3bc85c561f88efe.tar.gz cowboy-cf84f59d9bdf819d943b3de8e3bc85c561f88efe.tar.bz2 cowboy-cf84f59d9bdf819d943b3de8e3bc85c561f88efe.zip |
Add persistent_term support to the router
Diffstat (limited to 'src/cowboy_router.erl')
-rw-r--r-- | src/cowboy_router.erl | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/cowboy_router.erl b/src/cowboy_router.erl index 44a7e18..0eb4bdd 100644 --- a/src/cowboy_router.erl +++ b/src/cowboy_router.erl @@ -160,7 +160,11 @@ compile_brackets_split(<< C, Rest/bits >>, Acc, N) -> -spec execute(Req, Env) -> {ok, Req, Env} | {stop, Req} when Req::cowboy_req:req(), Env::cowboy_middleware:env(). -execute(Req=#{host := Host, path := Path}, Env=#{dispatch := Dispatch}) -> +execute(Req=#{host := Host, path := Path}, Env=#{dispatch := Dispatch0}) -> + Dispatch = case Dispatch0 of + {persistent_term, Key} -> persistent_term:get(Key); + _ -> Dispatch0 + end, case match(Dispatch, Host, Path) of {ok, Handler, HandlerOpts, Bindings, HostInfo, PathInfo} -> {ok, Req#{ |