Sha256: f56a86c07e5e84b85c7da4f4b3f79c44b667a5e466a8d8d0a7705d9f3c0c1312
Contents?: true
Size: 1.08 KB
Versions: 31
Compression:
Stored size: 1.08 KB
Contents
require 'faye/websocket' module ActionCable module Connection class FayeClientSocket def initialize(env, event_target, stream_event_loop, protocols) @env = env @event_target = event_target @protocols = protocols @faye = nil end def alive? @faye && @faye.ready_state == Faye::WebSocket::API::OPEN end def transmit(data) connect @faye.send data end def close @faye && @faye.close end def protocol @faye && @faye.protocol end def rack_response connect @faye.rack_response end private def connect return if @faye @faye = Faye::WebSocket.new(@env, @protocols) @faye.on(:open) { |event| @event_target.on_open } @faye.on(:message) { |event| @event_target.on_message(event.data) } @faye.on(:close) { |event| @event_target.on_close(event.reason, event.code) } @faye.on(:error) { |event| @event_target.on_error(event.message) } end end end end
Version data entries
31 entries across 31 versions & 4 rubygems