class Async::WebSocket::Connection
This is a basic synchronous websocket client:
Attributes
protocol[R]
Public Class Methods
call(framer, protocol = [], **options) { |instance| ... }
click to toggle source
# File lib/async/websocket/connection.rb, line 34 def self.call(framer, protocol = [], **options) instance = self.new(framer, Array(protocol).first, **options) return instance unless block_given? begin yield instance ensure instance.close end end
new(framer, protocol = nil, response: nil, **options)
click to toggle source
Calls superclass method
# File lib/async/websocket/connection.rb, line 46 def initialize(framer, protocol = nil, response: nil, **options) super(framer, **options) @protocol = protocol @response = response end
Public Instance Methods
call()
click to toggle source
# File lib/async/websocket/connection.rb, line 82 def call self.close end
close()
click to toggle source
Calls superclass method
# File lib/async/websocket/connection.rb, line 53 def close super if @response @response.finish @response = nil end end
dump(object)
click to toggle source
# File lib/async/websocket/connection.rb, line 78 def dump(object) JSON.dump(object) end
parse(buffer)
click to toggle source
# File lib/async/websocket/connection.rb, line 74 def parse(buffer) JSON.parse(buffer, symbolize_names: true) end
read()
click to toggle source
Calls superclass method
# File lib/async/websocket/connection.rb, line 64 def read if buffer = super parse(buffer) end end
write(object)
click to toggle source
Calls superclass method
# File lib/async/websocket/connection.rb, line 70 def write(object) super(dump(object)) end