class Redis
def subscription(method, channels, block)
def subscription(method, channels, block) return @client.call(method, *channels) if subscribed? begin original, @client = @client, SubscribedClient.new(@client) @client.send(method, *channels, &block) ensure @client = original end end