From 471ba41fddeff19f04f8d29bfe0df3c3f497407a Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Fri, 19 Jun 2015 18:55:35 +0200 Subject: Free up subscribe/unsubscribe as action names the user can use in their channels --- lib/action_cable/channel/base.rb | 6 +++--- lib/action_cable/connection/base.rb | 4 ++-- lib/action_cable/server.rb | 1 - 3 files changed, 5 insertions(+), 6 deletions(-) (limited to 'lib/action_cable') diff --git a/lib/action_cable/channel/base.rb b/lib/action_cable/channel/base.rb index f309709e31..cc9580ec52 100644 --- a/lib/action_cable/channel/base.rb +++ b/lib/action_cable/channel/base.rb @@ -32,7 +32,7 @@ module ActionCable connect - subscribe + run_subscribe_callbacks end def receive_data(data) @@ -47,13 +47,13 @@ module ActionCable end end - def subscribe + def run_subscribe_callbacks self.class.on_subscribe_callbacks.each do |callback| send(callback) end end - def unsubscribe + def run_unsubscribe_callbacks self.class.on_unsubscribe_callbacks.each do |callback| send(callback) end diff --git a/lib/action_cable/connection/base.rb b/lib/action_cable/connection/base.rb index ee1fe51529..fff6fd46a6 100644 --- a/lib/action_cable/connection/base.rb +++ b/lib/action_cable/connection/base.rb @@ -81,7 +81,7 @@ module ActionCable def cleanup_subscriptions @subscriptions.each do |id, channel| - channel.unsubscribe + channel.run_unsubscribe_callbacks end end @@ -161,7 +161,7 @@ module ActionCable def unsubscribe_channel(data) logger.info "Unsubscribing from channel: #{data['identifier']}" - @subscriptions[data['identifier']].unsubscribe + @subscriptions[data['identifier']].run_unsubscribe_callbacks @subscriptions.delete(data['identifier']) end diff --git a/lib/action_cable/server.rb b/lib/action_cable/server.rb index d922d347ce..322fc85519 100644 --- a/lib/action_cable/server.rb +++ b/lib/action_cable/server.rb @@ -71,6 +71,5 @@ module ActionCable def open_connections_statistics @connections.map(&:statistics) end - end end -- cgit v1.2.3