Sha256: f11052ec9574f195f9658c560c0769ff75a8372e48a97d872dcd58f0a67687cc

Contents?: true

Size: 649 Bytes

Versions: 1

Compression:

Stored size: 649 Bytes

Contents

# = require angular

angular.module "faye", []

angular.module("faye").factory "$faye", ["$q", "$rootScope", ($q, $rootScope) ->
  (url, fun) ->
    scope = $rootScope
    client = new Faye.Client(url)
    fun?(client)


    client: client
    publish: (channel, data) ->
      @client.publish channel, data

    subscribe: (channel, callback) ->
      @client.subscribe channel, (data) ->
        scope.$apply ->
          callback(data)

    get: (channel) ->
      deferred = $q.defer()
      sub = @client.subscribe(channel, (data) ->
        scope.$apply ->
          deferred.resolve data
        sub.cancel()
      )
      deferred.promise
]

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
angular-faye-rails-0.2.0 vendor/assets/javascripts/angular-faye.js.coffee