From 028157cfa74834b77886f26e0bd752aeb2ad20c9 Mon Sep 17 00:00:00 2001 From: gered Date: Tue, 17 May 2016 15:23:29 -0400 Subject: [PATCH] cleanup --- .../src/net/thegeez/browserchannel/server.clj | 23 +++++-------------- .../src/net/thegeez/browserchannel/utils.cljc | 11 ++------- 2 files changed, 8 insertions(+), 26 deletions(-) diff --git a/clj-browserchannel/src/net/thegeez/browserchannel/server.clj b/clj-browserchannel/src/net/thegeez/browserchannel/server.clj index d40c871..9519545 100644 --- a/clj-browserchannel/src/net/thegeez/browserchannel/server.clj +++ b/clj-browserchannel/src/net/thegeez/browserchannel/server.clj @@ -597,30 +597,19 @@ ;; when the client never connects with a backchannel (send-off session-agent refresh-session-timeout) ;; register application-level browserchannel session events - (let [{:keys [on-open on-close on-receive]} events - middleware (get-middleware-handler-map (:middleware options) [:on-open :on-close :on-receive])] + (let [middleware (get-middleware-handler-map + (:middleware options) + [:on-open :on-close :on-receive])] (add-listener! id :close (fn [session-id request reason] - (run-middleware - (:on-close middleware) - (fn [session-id request reason] - (if on-close (on-close session-id request reason))) - session-id request reason))) + (run-middleware (:on-close middleware) (:on-close events) session-id request reason))) (add-listener! id :map (fn [session-id request data] - (run-middleware - (:on-receive middleware) - (fn [session-id request data] - (if on-receive (on-receive session-id request data))) - session-id request data))) + (run-middleware (:on-receive middleware) (:on-receive events) session-id request data))) ; on-open is just triggered right now, no listener necessary - (run-middleware - (:on-open middleware) - (fn [session-id request] - (if on-open (on-open session-id request))) - id req)) + (run-middleware (:on-open middleware) (:on-open events) id req)) session-agent))) (defn- session-status diff --git a/clj-browserchannel/src/net/thegeez/browserchannel/utils.cljc b/clj-browserchannel/src/net/thegeez/browserchannel/utils.cljc index bcd5369..53ae4bc 100644 --- a/clj-browserchannel/src/net/thegeez/browserchannel/utils.cljc +++ b/clj-browserchannel/src/net/thegeez/browserchannel/utils.cljc @@ -6,20 +6,13 @@ (if f (recur (f handler) more) handler)) - handler (wrap final-handler middleware)] + handler (wrap (or final-handler (fn [& _])) middleware)] (apply handler args))) -(defn get-handlers - [middleware k] - (->> middleware - (map k) - (remove nil?) - (doall))) - (defn get-middleware-handler-map [middleware handler-ks] (reduce (fn [m k] - (assoc m k (get-handlers middleware k))) + (assoc m k (->> middleware (map k) (remove nil?)))) {} handler-ks)) \ No newline at end of file