Commit graph

35 commits

Author SHA1 Message Date
Gered 5056d14d3a add trace log output to clj-browserchannel 2016-05-13 12:39:13 -04:00
Gered 37db9ce909 add response-timeout option to immutant adapter (same as jetty adapter) 2016-05-09 20:06:12 -04:00
Gered 579945fbda update jetty adapter to just use the jetty instance pulled in by ring
this also happens to be jetty 9, which is good as 7 and 8 are EOL
2016-05-09 19:09:07 -04:00
Gered 73bd151893 add logback.xml config to stop jetty from spamming log output 2016-05-09 18:01:38 -04:00
Gered 6674d171c3 update client & server send fn's to allow sending even non-map data
i personally think this was an important change as the default encoding
of maps to be sent as json is somewhat lossy (keywords converted to
strings, would never be able to get this 100% perfect using json alone
without a more complex encoding solution). encoding to edn is the
perfect solution to this.

since browserchannel pretty much requires the final sent data to be
json encoded, we just serialize the clojure data being sent to an
edn string within a root json object.

this does ultimately mean we have to do a little bit of pre-parsing
of sent and received maps to encode/decode properly and make it
completely transparent to application code, but i think it's an
acceptable tradeoff.
2016-05-09 12:45:17 -04:00
Gered 337b1faf27 update chat-demo 2016-05-08 19:01:24 -04:00
Gered 0fb68755fe rename 2016-05-08 19:00:45 -04:00
Gered da2b5d94b2 update how browserchannel server-side application event handling works
up until now, a single event handler "on-session" could be provided to
wrap-browserchannel which would be invoked each time a new client
session was created. it was then the application's responsibility to
register listeners for close/receive events inside this on-session event
handler.

this was kind of clunky honestly. basically every application would want
to use all of these events, so why not reduce the boilerplate needed?

this change makes it so a map of event handlers (:on-open, :on-close and
:on-receive) can be passed under wrap-browserchannel's options map (in
the key :events). this makes it simpler for an application to set up
browserchannel event handlers, and it works in basically the exact same
way as the clientside event handler registration works right now
2016-05-08 18:44:54 -04:00
Gered ecb66421b0 rename clj-browserchannel-server as it now also includes cljs stuff 2016-05-08 18:00:42 -04:00
Gered a58f6934c7 update chat-demo to use an anti-forgery token to demo how to set it up 2016-05-08 17:59:31 -04:00
Gered c18f295018 simplify stuff a bit 2016-05-08 15:51:51 -04:00
Gered a4b2e14897 add clojurescript client-side browserchannel api 2016-05-08 14:34:22 -04:00
Gered 7ada1c27c7 make immutant a provided dependency for the async adapter library 2016-05-08 12:05:28 -04:00
Gered b61be5ae21 some namespace renaming to keep things consistent (nitpicky...) 2016-05-08 11:56:33 -04:00
Gered 613c75953b update some project names and links to refer to this forked repo
project name updates are most important as i'll be deploying to clojars
and don't want any conflicts with the existing project
2016-05-07 17:24:35 -04:00
Gered 3a196a3ff2 add extra example code to show how to enable debug logging client-side 2016-05-07 17:10:08 -04:00
Gered 72c886e772 add immutant adapter support to the chat-demo 2016-05-07 16:58:36 -04:00
Gered 722776ed2e bump versions 2016-05-07 16:39:54 -04:00
Gered 87f8b8a766 update chat-demo README.md 2016-05-07 16:36:17 -04:00
Gered 47790b3f92 update gitignore, add lein aliases to chat-demo 2016-05-07 16:36:03 -04:00
Gered 1fbf989bea shouldn't have been committed 2016-05-07 16:34:36 -04:00
Gered 0e76a0347c fix chat-demo
- dependencies updated
- removed old netty adapter code
- generally converted it into something more resembling a modern clojure
  web app
2016-05-07 16:20:54 -04:00
thegeez 08f003d2a0 Netty deps are broken 2013-07-31 21:36:08 +02:00
thegeez 29afa15b40 Revert "Netty deps are broken, remove for now"
This reverts commit 917d57b0b9.
2013-07-31 21:34:00 +02:00
thegeez 917d57b0b9 Netty deps are broken, remove for now 2013-07-31 21:32:43 +02:00
Gijs Stuurman 42c30ad723 bump server version 2012-05-19 16:27:09 +02:00
Gijs Stuurman 98ebebf95e use latest clj-browserchannel-server 2012-05-11 22:31:43 +02:00
Vassil Dichev 2a7e65ef5b Add request to connection handler parameters 2012-05-11 21:05:47 +02:00
Gijs Stuurman 0ffd7dbd7d bump server version 2012-04-23 21:59:51 +02:00
Gijs Stuurman a245f47ff9 Update chat-demo/README.md 2012-04-22 23:39:29 +03:00
Gijs Stuurman 07eb4f3bed Add tasks for browserrepl and auto cljs compilation 2012-04-16 21:23:45 +02:00
Gijs Stuurman 94818d11ff fix project.clj for AsyncContext signing warning 2012-04-16 21:10:57 +02:00
Gijs Stuurman 3af022ce5b Silence the logger 2012-04-12 18:09:49 +02:00
Gijs Stuurman b88e84afce Default to jetty again 2012-04-07 21:14:20 +02:00
Gijs Stuurman 98b4c7cb36 add chat-demo 2012-04-07 21:02:07 +02:00