writes as csv.
This commit is contained in:
@@ -12,12 +12,20 @@
|
||||
[auto-ap.logging :refer [error-event info-event warn-event]]
|
||||
[clj-time.coerce :as coerce :refer [to-date]]
|
||||
[clj-time.core :as time]
|
||||
[clojure.data.csv :as csv]
|
||||
[config.core :refer [env]]
|
||||
[compojure.core :refer [context defroutes GET wrap-routes routes]]
|
||||
[datomic.api :as d]
|
||||
[ring.middleware.json :refer [wrap-json-response]]
|
||||
[venia.core :as venia]
|
||||
[yang.time :refer [time-it]]))
|
||||
(defn wrap-csv-response [handler]
|
||||
(fn [request]
|
||||
(let [response (handler request)]
|
||||
(println response)
|
||||
(update response :body #(with-open [w (java.io.StringWriter.)]
|
||||
(csv/write-csv w %)
|
||||
(.toString w))))))
|
||||
|
||||
(def api-key-authed-routes
|
||||
(context "/" []
|
||||
@@ -238,10 +246,9 @@
|
||||
(log/info "Executing raw query " (get query-params "query" ))
|
||||
(into (list) (apply d/q (clojure.edn/read-string (get query-params "query" )) (into [(d/db conn)] (clojure.edn/read-string (get query-params "args" "[]"))))))))
|
||||
(defroutes export-routes
|
||||
(wrap-routes
|
||||
(routes
|
||||
api-key-authed-routes
|
||||
(routes
|
||||
(wrap-routes api-key-authed-routes
|
||||
wrap-csv-response)
|
||||
|
||||
(wrap-routes admin-only-routes wrap-secure))
|
||||
|
||||
wrap-json-response))
|
||||
(wrap-routes (wrap-routes admin-only-routes wrap-secure)
|
||||
wrap-json-response)))
|
||||
|
||||
Reference in New Issue
Block a user