class Baleen::Client
Public Class Methods
new(host, port, debug=false)
click to toggle source
# File lib/baleen/client.rb, line 10 def initialize(host, port, debug=false) Celluloid.logger = nil unless debug @socket = TCPSocket.open(host, port) end
Public Instance Methods
close()
click to toggle source
# File lib/baleen/client.rb, line 26 def close @socket.close if @socket hl_warn "Connection closed" rescue IOError; nil end
handle_response(msg)
click to toggle source
# File lib/baleen/client.rb, line 33 def handle_response(msg) if msg.nil? raise RuntimeError, 'Connection closed by server' end response = Serializable.deserialize(msg) if response.is_a? Message::Base response.print_message end if response.terminate? response else nil end end
request(request)
click to toggle source
# File lib/baleen/client.rb, line 15 def request(request) @socket.puts(request.to_json) end
wait_response()
click to toggle source
# File lib/baleen/client.rb, line 19 def wait_response loop { response = handle_response(@socket.gets) return response if response } end