diff --git a/examples/http-swagger/.gitignore b/examples/http-swagger/.gitignore deleted file mode 100644 index c53038ec..00000000 --- a/examples/http-swagger/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -/target -/classes -/checkouts -pom.xml -pom.xml.asc -*.jar -*.class -/.lein-* -/.nrepl-port -.hgignore -.hg/ diff --git a/examples/http-swagger/README.md b/examples/http-swagger/README.md deleted file mode 100644 index fe7dfae0..00000000 --- a/examples/http-swagger/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# Http with Swagger example - -## Usage - -```clj -> lein repl -(start) -``` - -To test the endpoints using [httpie](https://httpie.org/): - -```bash -http GET :3000/api/schema/plus x==1 y==20 -http GET :3000/api/spec/plus x==1 y==20 - -http GET :3000/api/swagger.json -``` - -* swagger.json: http://localhost:3000/api/swagger.json -* swagger-ui: http://localhost:3000/api-docs/ - - - -## License - -Copyright © 2017-2018 Metosin Oy diff --git a/examples/http-swagger/project.clj b/examples/http-swagger/project.clj deleted file mode 100644 index 60f6406d..00000000 --- a/examples/http-swagger/project.clj +++ /dev/null @@ -1,6 +0,0 @@ -(defproject ring-example "0.1.0-SNAPSHOT" - :description "Reitit Ring App with Swagger" - :dependencies [[org.clojure/clojure "1.9.0"] - [ring "1.6.3"] - [metosin/reitit "0.2.0-SNAPSHOT"]] - :repl-options {:init-ns example.server}) diff --git a/examples/http-swagger/resources/reitit.png b/examples/http-swagger/resources/reitit.png deleted file mode 100644 index c89c3654..00000000 Binary files a/examples/http-swagger/resources/reitit.png and /dev/null differ diff --git a/examples/http-swagger/src/example/server.clj b/examples/http-swagger/src/example/server.clj deleted file mode 100644 index ff5b57a2..00000000 --- a/examples/http-swagger/src/example/server.clj +++ /dev/null @@ -1,86 +0,0 @@ -(ns example.server - (:require [reitit.ring :as ring] - [reitit.swagger :as swagger] - [reitit.swagger-ui :as swagger-ui] - [reitit.ring.coercion :as coercion] - [reitit.coercion.spec] - [reitit.ring.middleware.muuntaja :as muuntaja] - [reitit.ring.middleware.exception :as exception] - [reitit.ring.middleware.multipart :as multipart] - [ring.middleware.params :as params] - [ring.adapter.jetty :as jetty] - [muuntaja.core :as m] - [clojure.java.io :as io])) - -(def app - (ring/ring-handler - (ring/router - [["/swagger.json" - {:get {:no-doc true - :swagger {:info {:title "my-api"}} - :handler (swagger/create-swagger-handler)}}] - - ["/files" - {:swagger {:tags ["files"]}} - - ["/upload" - {:post {:summary "upload a file" - :parameters {:multipart {:file multipart/temp-file-part}} - :responses {200 {:body {:file multipart/temp-file-part}}} - :handler (fn [{{{:keys [file]} :multipart} :parameters}] - {:status 200 - :body {:file file}})}}] - - ["/download" - {:get {:summary "downloads a file" - :swagger {:produces ["image/png"]} - :handler (fn [_] - {:status 200 - :headers {"Content-Type" "image/png"} - :body (io/input-stream (io/resource "reitit.png"))})}}]] - - ["/math" - {:swagger {:tags ["math"]}} - - ["/plus" - {:get {:summary "plus with spec query parameters" - :parameters {:query {:x int?, :y int?}} - :responses {200 {:body {:total int?}}} - :handler (fn [{{{:keys [x y]} :query} :parameters}] - {:status 200 - :body {:total (+ x y)}})} - :post {:summary "plus with spec body parameters" - :parameters {:body {:x int?, :y int?}} - :responses {200 {:body {:total int?}}} - :handler (fn [{{{:keys [x y]} :body} :parameters}] - {:status 200 - :body {:total (+ x y)}})}}]]] - - {:data {:coercion reitit.coercion.spec/coercion - :muuntaja m/instance - :middleware [;; query-params & form-params - params/wrap-params - ;; content-negotiation - muuntaja/format-negotiate-middleware - ;; encoding response body - muuntaja/format-response-middleware - ;; exception handling - exception/exception-middleware - ;; decoding request body - muuntaja/format-request-middleware - ;; coercing response bodys - coercion/coerce-response-middleware - ;; coercing request parameters - coercion/coerce-request-middleware - ;; multipart - multipart/multipart-middleware]}}) - (ring/routes - (swagger-ui/create-swagger-ui-handler {:path "/"}) - (ring/create-default-handler)))) - -(defn start [] - (jetty/run-jetty #'app {:port 3000, :join? false}) - (println "server running in port 3000")) - -(comment - (start)) diff --git a/examples/http-swagger/swagger-ui.png b/examples/http-swagger/swagger-ui.png deleted file mode 100644 index 46d28517..00000000 Binary files a/examples/http-swagger/swagger-ui.png and /dev/null differ