From 1cebf407cfa0a7a04b871566497ef73ebb3c70f0 Mon Sep 17 00:00:00 2001 From: James Reeves Date: Thu, 24 May 2012 10:35:59 +0100 Subject: [PATCH] Added :auto-refresh? option --- project.clj | 3 ++- src/ring/server/standalone.clj | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/project.clj b/project.clj index b824619..3baef3d 100644 --- a/project.clj +++ b/project.clj @@ -2,6 +2,7 @@ :description "Library for running Ring web servers" :dependencies [[org.clojure/clojure "1.2.1"] [org.clojure/core.incubator "0.1.0"] - [ring "1.1.0"]] + [ring "1.1.0"] + [ring-refresh "0.1.0"]] :plugins [[codox "0.6.1"]] :profiles {:dev {:dependencies [[clj-http "0.4.1"]]}}) diff --git a/src/ring/server/standalone.clj b/src/ring/server/standalone.clj index 8b79e84..1c4b3ba 100644 --- a/src/ring/server/standalone.clj +++ b/src/ring/server/standalone.clj @@ -4,6 +4,7 @@ ring.server.options ring.middleware.stacktrace ring.middleware.reload + ring.middleware.refresh [clojure.java.browse :only (browse-url)])) (defn- try-port @@ -59,8 +60,14 @@ (wrap-reload handler) handler)) +(defn- add-auto-refresh [handler options] + (if (:auto-refresh? options) + (wrap-refresh handler) + handler)) + (defn- add-middleware [handler options] (-> handler + (add-auto-refresh options) (add-stacktraces options) (add-auto-reload options))) @@ -73,6 +80,7 @@ :open-browser? - if true, open a web browser after the server starts :stacktraces? - if true, display stacktraces when an exception is thrown :auto-reload? - if true, automatically reload source files + :auto-refresh? - if true, automatically refresh browser when source changes If join? is false, a Server object is returned." {:arglists '([handler] [handler options])}