Advertisement
Guest User

Untitled

a guest
Jan 8th, 2014
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.02 KB | None | 0 0
  1. (ns casterly.handler
  2. (:use [compojure.core]
  3. [ring.adapter.jetty]
  4. [ring.middleware.reload]
  5. [ring.middleware.stacktrace]
  6. [ring.middleware.params]
  7. [ring.middleware.session]
  8. [ring.middleware.session.cookie]
  9. )
  10. (:require [compojure.handler :refer [site]]
  11. [compojure.route :as route]
  12. [cheshire.core :as json]
  13. [casterly-crypto :as ccrypt]
  14. ))
  15.  
  16. (import (ec.util MersenneTwisterFast)
  17. (DungeonGenerator))
  18.  
  19. (defn coord-test [x y]
  20. (let [seed (ccrypt/coord-seed x y)
  21. myrand (new ec.util.MersenneTwisterFast)
  22. dgenerator (new DungeonGenerator)
  23. width 80
  24. height 25
  25. ]
  26. (do
  27. (. myrand setSeed seed)
  28. (. dgenerator setRNG myrand)
  29. (. dgenerator createDungeon width height 20)
  30. (json/generate-string
  31. (reduce
  32. conj
  33. (for [y (range height)
  34. x (range width)]
  35. (let [cellValue (. dgenerator getCell x y)]
  36. (if (or (= cellValue DungeonGenerator/TILE_DIRTFLOOR)
  37. (= cellValue DungeonGenerator/TILE_CORRIDOR)
  38. (= cellValue DungeonGenerator/TILE_DOOR))
  39. {(str x "," y) "."}
  40. {}
  41. ))))))))
  42.  
  43. (defn session-test [session request]
  44. (let [
  45. ;;session (get request :session {})
  46. count (get session :count 0)]
  47. { :body (str "test" count) :session {:count (+ count 1)}})
  48. ;;(json/generate-string session)
  49. )
  50.  
  51. (defroutes app-routes
  52. (GET "/map/:x/:y" [x y]
  53. (str (coord-test x y)))
  54. (GET "/session" [session request] ;;[request session]
  55. (session-test request))
  56. (route/resources "/")
  57. (route/not-found "Not Found"))
  58.  
  59. ;;(decorate app-routes (with-session :memory))
  60.  
  61. (def handler
  62. (compojure.handler/site app-routes))
  63.  
  64. (def app
  65. (-> (var handler)
  66. compojure.handler/api
  67. ;;(wrap-rpc)
  68. (wrap-stacktrace)
  69. (wrap-session {:cookie-name "casterly-session"})
  70. (site)))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement