More docs

This commit is contained in:
Tommi Reiman 2017-12-03 21:00:34 +02:00
parent 653743a25f
commit 82e300a9aa
2 changed files with 33 additions and 10 deletions

View file

@ -60,17 +60,29 @@
(defn compile-result [[path data] opts] (defn compile-result [[path data] opts]
(let [[top childs] (group-keys data)] (let [[top childs] (group-keys data)]
(if-not (seq childs) (if-not (seq childs)
(let [middleware (middleware/compile-result [path top] opts)] (map->Methods {:any (middleware/compile-result [path top] opts)})
(map->Methods {:any (middleware/compile-result [path top] opts)})) (reduce-kv
(let [any-handler (if (:handler top) (middleware/compile-result [path data] opts))] (fn [acc method data]
(reduce-kv (let [data (meta-merge top data)]
(fn [acc method data] (assoc acc method (middleware/compile-result [path data] opts method))))
(let [data (meta-merge top data)] (map->Methods {:any (if (:handler top) (middleware/compile-result [path data] opts))})
(assoc acc method (middleware/compile-result [path data] opts method)))) childs))))
(map->Methods {:any any-handler})
childs)))))
(defn router (defn router
"Creates a [[reitit.core/Router]] from raw route data and optionally an options map with
support for http-methods and Middleware. See [docs](https://metosin.github.io/reitit/)
for details.
Example:
(router
[\"/api\" {:middleware [wrap-format wrap-oauth2]}
[\"/users\" {:get get-user
:post update-user
:delete {:middleware [wrap-delete]
:handler delete-user}}]])
See router options from [[reitit.core/router]] and [[reitit.ring.middleware/router]]."
([data] ([data]
(router data nil)) (router data nil))
([data opts] ([data opts]

View file

@ -87,6 +87,17 @@
:data data})))) :data data}))))
(defn router (defn router
"Creates a [[reitit.core/Router]] from raw route data and optionally an options map with
support for Middleware. See [docs](https://metosin.github.io/reitit/) for details.
Example:
(router
[\"/api\" {:middleware [wrap-format wrap-oauth2]}
[\"/users\" {:middleware [wrap-delete]
:handler get-user}]])
See router options from [[reitit.core/router]]."
([data] ([data]
(router data nil)) (router data nil))
([data opts] ([data opts]
@ -106,6 +117,6 @@
"Creates a vanilla ring middleware chain out of sequence of "Creates a vanilla ring middleware chain out of sequence of
IntoMiddleware thingies." IntoMiddleware thingies."
([middleware handler data] ([middleware handler data]
(chain middleware handler data nil)) (chain middleware handler data nil))
([middleware handler data opts] ([middleware handler data opts]
(compile-handler (expand middleware data opts) handler))) (compile-handler (expand middleware data opts) handler)))