diff options
Diffstat (limited to 'lib/assets/javascripts/cable/subscriber_manager.js.coffee')
-rw-r--r-- | lib/assets/javascripts/cable/subscriber_manager.js.coffee | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/lib/assets/javascripts/cable/subscriber_manager.js.coffee b/lib/assets/javascripts/cable/subscriber_manager.js.coffee deleted file mode 100644 index 1eef98ff0b..0000000000 --- a/lib/assets/javascripts/cable/subscriber_manager.js.coffee +++ /dev/null @@ -1,41 +0,0 @@ -class Cable.SubscriberManager - constructor: (@consumer) -> - @subscribers = [] - - add: (subscriber) -> - @subscribers.push(subscriber) - @notify(subscriber, "initialized") - if @sendCommand(subscriber, "subscribe") - @notify(subscriber, "connected") - - reload: -> - for subscriber in @subscribers - if @sendCommand(subscriber, "subscribe") - @notify(subscriber, "connected") - - remove: (subscriber) -> - @sendCommand(subscriber, "unsubscribe") - @subscribers = (s for s in @subscribers when s isnt subscriber) - - notifyAll: (callbackName, args...) -> - for subscriber in @subscribers - @notify(subscriber, callbackName, args...) - - notify: (subscriber, callbackName, args...) -> - if typeof subscriber is "string" - subscribers = (s for s in @subscribers when s.identifier is subscriber) - else - subscribers = [subscriber] - - for subscriber in subscribers - subscriber[callbackName]?(args...) - - sendCommand: (subscriber, command) -> - {identifier} = subscriber - if identifier is Cable.PING_IDENTIFIER - @consumer.connection.isOpen() - else - @consumer.send({command, identifier}) - - toJSON: -> - subscriber.identifier for subscriber in @subscribers |