aboutsummaryrefslogtreecommitdiffstats
path: root/lib/action_cable/remote_connection.rb
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2015-07-04 21:30:48 +0200
committerDavid Heinemeier Hansson <david@loudthinking.com>2015-07-04 21:30:48 +0200
commit0de65cf2d8860377d45020a83866073c5fec188c (patch)
treed39b559162936fd79049595d69098fd7712a8fe3 /lib/action_cable/remote_connection.rb
parent9886a995f5f0b32d0d400074c48221cb0f6b911e (diff)
parent5de01033150b70982f23a42670c55348a7371c4b (diff)
downloadrails-0de65cf2d8860377d45020a83866073c5fec188c.tar.gz
rails-0de65cf2d8860377d45020a83866073c5fec188c.tar.bz2
rails-0de65cf2d8860377d45020a83866073c5fec188c.zip
Merge branch 'master' of github.com:basecamp/action_cable
Diffstat (limited to 'lib/action_cable/remote_connection.rb')
-rw-r--r--lib/action_cable/remote_connection.rb13
1 files changed, 5 insertions, 8 deletions
diff --git a/lib/action_cable/remote_connection.rb b/lib/action_cable/remote_connection.rb
index 912fb6eb57..d7a3f0125d 100644
--- a/lib/action_cable/remote_connection.rb
+++ b/lib/action_cable/remote_connection.rb
@@ -2,7 +2,7 @@ module ActionCable
class RemoteConnection
class InvalidIdentifiersError < StandardError; end
- include Connection::Identifier
+ include Connection::Identification, Connection::InternalChannel
def initialize(server, ids)
@server = server
@@ -10,19 +10,16 @@ module ActionCable
end
def disconnect
- message = { type: 'disconnect' }.to_json
- redis.publish(internal_redis_channel, message)
+ server.broadcast_without_logging internal_redis_channel, type: 'disconnect'
end
def identifiers
- @server.connection_identifiers
- end
-
- def redis
- @server.threaded_redis
+ server.connection_identifiers
end
private
+ attr_reader :server
+
def set_identifier_instance_vars(ids)
raise InvalidIdentifiersError unless valid_identifiers?(ids)
ids.each { |k,v| instance_variable_set("@#{k}", v) }