interceptors, wip

This commit is contained in:
Tommi Reiman 2017-12-10 18:08:46 +02:00
parent 9f324606ff
commit 2092682d6a

View file

@ -116,7 +116,8 @@
:interceptors)) :interceptors))
{::router router})) {::router router}))
(defn execute [r {{:keys [uri]} :request :as ctx}] (comment
(defn execute [r {{:keys [uri]} :request :as ctx}]
(if-let [interceptors (-> (r/match-by-path r uri) (if-let [interceptors (-> (r/match-by-path r uri)
:result :result
:interceptors)] :interceptors)]
@ -124,7 +125,7 @@
(reduce #(%2 %1) $ (keep :enter interceptors)) (reduce #(%2 %1) $ (keep :enter interceptors))
(reduce #(%2 %1) $ (keep :leave interceptors))))) (reduce #(%2 %1) $ (keep :leave interceptors)))))
(def r (def r
(router (router
["/api" {:interceptors [{:name ::add ["/api" {:interceptors [{:name ::add
:enter (fn [ctx] :enter (fn [ctx]
@ -133,4 +134,4 @@
(assoc ctx :leave true))}]} (assoc ctx :leave true))}]}
["/ping" (fn [ctx] (assoc ctx :response "ok"))]])) ["/ping" (fn [ctx] (assoc ctx :response "ok"))]]))
(execute r {:request {:uri "/api/ping"}}) (execute r {:request {:uri "/api/ping"}}))