diff options
| author | Scott Ostler <sostler@deathmachine.local> | 2010-02-24 08:05:07 -0500 |
|---|---|---|
| committer | Scott Ostler <sostler@deathmachine.local> | 2010-02-24 08:05:07 -0500 |
| commit | 49ef1a688025d9183452fe5f1dccf7802d64dc62 (patch) | |
| tree | e69c1b2a23c02ea639e47570220cbbfee489041e /src/site.clj | |
| parent | 10e5c6b24b63e5a83922058d47380577808b8d3e (diff) | |
| parent | 8003ba27e49a630b24090f3af01426f35e85af67 (diff) | |
Resolved cookie_login conflict
Diffstat (limited to 'src/site.clj')
| -rwxr-xr-x | src/site.clj | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/src/site.clj b/src/site.clj index 4ffa3cf..4db69e8 100755 --- a/src/site.clj +++ b/src/site.clj @@ -13,8 +13,10 @@ clojure.contrib.json.write clojure.contrib.sql compojure + utils cookie-login - utils)) + session-sweeper + feed)) (def *run-flusher* true) (def *flusher-sleep-ms* 4000) @@ -33,9 +35,7 @@ (def rooms (ref {})) (def flusher (agent nil)) -(defn flush! [x] - (when *run-flusher* - (send-off *agent* #'flush!)) +(defn flush-inactive-users! [x] (doseq [[rid room] @rooms] (dosync (let [users (room :users) @@ -43,9 +43,14 @@ alive? (fn [[n u]] (> (u :last-seen) (- now *user-timeout-ms*)))] (ref-set users (into {} (filter alive? @users)))))) - (. Thread (sleep *flusher-sleep-ms*)) + (Thread/sleep *flusher-sleep-ms*) + (when *run-flusher* + (send *agent* #'flush-inactive-users!)) x) +(defn start-user-flusher! [] + (send flusher flush-inactive-users!)) + ;; Configuration (def *server-url* @@ -578,8 +583,7 @@ (defn serve-static [dir path] ; TODO: cache policy for other static files (js, css, etc.) (let [cache-header (if (re-find pic-regex path) - {:headers {"Cache-Control" - "post-check=3600,pre-check=43200"}} + {:headers {"Cache-Control" "max-age=604800,public"}} {})] [cache-header (serve-file dir path)])) @@ -659,6 +663,7 @@ (doseq [room-db (fetch-rooms)] (alter rooms assoc (room-db :key) (build-room-map-from-db room-db)))) +<<<<<<< HEAD (run-server {:port 8080} "/static/*" (servlet static) @@ -668,3 +673,17 @@ "/*" (servlet pichat)) (send-off flusher flush!) +======= + +(defn start-server + ([port] (run-server {:port port} + "/static/*" (servlet static) + "/images/*" (servlet static) + "/upload" (servlet multipart) + "/*" (servlet pichat))) + ([] (start-server 8080))) + +(start-server) +(start-user-flusher!) +(start-session-pruner!) +>>>>>>> 8003ba27e49a630b24090f3af01426f35e85af67 |
