A Ring middleware function takes a handler as its argument, and returns a
new handler, so you could write:
(defn wrap-pre-event-hooks [handler]
(fn [request]
(handler (process-pre-event-hooks request))))
However, I'm curious as to what all your process-* functions are actually
doing. It seems strange to modify the request map so much.
- James
On 16 February 2013 00:14, larry google groups <[email protected]>wrote:
>
> I have been working with Clojure for a few months now. I am now more
> familiar with it then I was even 3 months ago. I am now going back
> through some of the early code I wrote, and I see a lot of redundancy
> and mistakes. In particular, I notice this function that I wrote to
> handle the request map (in a web app that is using Ring and
> Compojure):
>
> (defn process-event [request]
> (let [request1 (process-pre-event-hooks request)
> request2 (process-page-specific-pre-page-hooks request1)
> request3 (process-mid-event-hooks request2)
> request4 (process-page-specific-post-page-hooks request3)
> request5 (process-post-event-hooks request4)]
> request5))
>
> I could probably re-write all of this as Ring middleware, yes?
> Functions that take the request map, do something with it, and then
> return the new, modified request map -- that is what middleware is,
> yes? Or does middleware return a function that is then called on the
> request map?
>
> --
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to [email protected]
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.