Previous agent-restart didn't work as expected. Using agent-mode instead.
This commit is contained in:
parent
8a0063040f
commit
ff20442d0f
|
@ -1,10 +1,10 @@
|
||||||
(defproject net.thegeez/clj-browserchannel-jetty-adapter "0.0.4"
|
(defproject net.thegeez/clj-browserchannel-jetty-adapter "0.0.5"
|
||||||
:description "Jetty async adapter for BrowserChannel"
|
:description "Jetty async adapter for BrowserChannel"
|
||||||
:url ""
|
:url ""
|
||||||
:dependencies [[ring/ring-core "1.3.1"]
|
:dependencies [[ring/ring-core "1.3.1"]
|
||||||
[ring/ring-servlet "1.3.1"]
|
[ring/ring-servlet "1.3.1"]
|
||||||
[org.eclipse.jetty/jetty-server "8.1.16.v20140903"];; includes ssl
|
[org.eclipse.jetty/jetty-server "8.1.16.v20140903"];; includes ssl
|
||||||
[net.thegeez/clj-browserchannel-server "0.0.8"]]
|
[net.thegeez/clj-browserchannel-server "0.0.9"]]
|
||||||
:profiles {:provided
|
:profiles {:provided
|
||||||
{:dependencies
|
{:dependencies
|
||||||
[[org.clojure/clojure "1.6.0"]]}})
|
[[org.clojure/clojure "1.6.0"]]}})
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
(defproject net.thegeez/clj-browserchannel-server "0.0.8"
|
(defproject net.thegeez/clj-browserchannel-server "0.0.9"
|
||||||
:description "BrowserChannel server implementation in Clojure"
|
:description "BrowserChannel server implementation in Clojure"
|
||||||
:dependencies [[ring/ring-core "1.3.1"]
|
:dependencies [[ring/ring-core "1.3.1"]
|
||||||
[org.clojure/data.json "0.2.5"]]
|
[org.clojure/data.json "0.2.5"]]
|
||||||
|
|
|
@ -133,8 +133,7 @@
|
||||||
"Prints the error and tries to restart the agent."
|
"Prints the error and tries to restart the agent."
|
||||||
[id]
|
[id]
|
||||||
(fn [ag ^Exception e]
|
(fn [ag ^Exception e]
|
||||||
(println "ERROR:" id "agent threw" e (.getMessage e))
|
(println "ERROR:" id "agent threw" e (.getMessage e))))
|
||||||
(restart-agent ag @ag)))
|
|
||||||
|
|
||||||
;;;;;; end of utils
|
;;;;;; end of utils
|
||||||
|
|
||||||
|
@ -145,6 +144,7 @@
|
||||||
;; event: :map | :close
|
;; event: :map | :close
|
||||||
(def listeners-agent (agent {}))
|
(def listeners-agent (agent {}))
|
||||||
(set-error-handler! listeners-agent (agent-error-handler-fn "listener"))
|
(set-error-handler! listeners-agent (agent-error-handler-fn "listener"))
|
||||||
|
(set-error-mode! listeners-agent :continue)
|
||||||
|
|
||||||
|
|
||||||
(defn add-listener [session-id event-key f]
|
(defn add-listener [session-id event-key f]
|
||||||
|
@ -517,6 +517,7 @@
|
||||||
refresh-session-timeout)
|
refresh-session-timeout)
|
||||||
session-agent (agent session)]
|
session-agent (agent session)]
|
||||||
(set-error-handler! session-agent (agent-error-handler-fn (str "session-" (:id session))))
|
(set-error-handler! session-agent (agent-error-handler-fn (str "session-" (:id session))))
|
||||||
|
(set-error-mode! session-agent :continue)
|
||||||
(swap! sessions assoc id session-agent)
|
(swap! sessions assoc id session-agent)
|
||||||
(when-let [notify (:on-session options)]
|
(when-let [notify (:on-session options)]
|
||||||
(notify id req))
|
(notify id req))
|
||||||
|
|
Reference in a new issue