From 7979c9de9d42afd611e13da40502ac8ea1c0c0e3 Mon Sep 17 00:00:00 2001 From: Tommi Reiman Date: Sun, 26 Nov 2017 21:51:55 +0200 Subject: [PATCH] Remove normal middleware, slow and noicy --- .../reitit-ring/src/reitit/ring/coercion.cljc | 53 ------------------- 1 file changed, 53 deletions(-) diff --git a/modules/reitit-ring/src/reitit/ring/coercion.cljc b/modules/reitit-ring/src/reitit/ring/coercion.cljc index fe21d594..41c98627 100644 --- a/modules/reitit-ring/src/reitit/ring/coercion.cljc +++ b/modules/reitit-ring/src/reitit/ring/coercion.cljc @@ -110,31 +110,6 @@ [status (response-coercer coercion schema opts)]) (into {}))) -(defn wrap-coerce-parameters - "Pluggable request coercion middleware. - Expects a :coercion of type `reitit.coercion.protocol/Coercion` - and :parameters from route data, otherwise will do nothing." - [handler] - (fn - ([request] - (let [method (:request-method request) - match (ring/get-match request) - parameters (-> match :result method :data :parameters) - coercion (-> match :data :coercion)] - (if (and coercion parameters) - (let [coercers (request-coercers coercion parameters) - coerced (coerce-parameters coercers request)] - (handler (impl/fast-assoc request :parameters coerced))) - (handler request)))) - ([request respond raise] - (let [method (:request-method request) - match (ring/get-match request) - parameters (-> match :result method :data :parameters) - coercion (-> match :data :coercion)] - (if (and coercion parameters) - (let [coercers (request-coercers coercion parameters) - coerced (coerce-parameters coercers request)] - (handler (impl/fast-assoc request :parameters coerced) respond raise))))))) (defn handle-coercion-exception [e respond raise] (let [data (ex-data e)] (if-let [status (condp = (:type data) @@ -168,34 +143,6 @@ (let [coerced (coerce-request coercers request)] (handler (impl/fast-assoc request :parameters coerced) respond raise))))))))})) -(defn wrap-coerce-response - "Pluggable response coercion middleware. - Expects a :coercion of type `reitit.coercion.protocol/Coercion` - and :responses from route data, otherwise will do nothing." - [handler] - (fn - ([request] - (let [response (handler request) - method (:request-method request) - match (ring/get-match request) - responses (-> match :result method :data :responses) - coercion (-> match :data :coercion) - opts (-> match :data :opts)] - (if (and coercion responses) - (let [coercers (response-coercers coercion responses opts)] - (coerce-response coercers request response)) - response))) - ([request respond raise] - (let [method (:request-method request) - match (ring/get-match request) - responses (-> match :result method :data :responses) - coercion (-> match :data :coercion) - opts (-> match :data :opts)] - (if (and coercion responses) - (let [coercers (response-coercers coercion responses opts)] - (handler request #(respond (coerce-response coercers request %)))) - (handler request respond raise)))))) - (def gen-wrap-coerce-response "Middleware for pluggable response coercion. Expects a :coercion of type `reitit.coercion.protocol/Coercion`