class Relayer::IRCSocket
Public Class Methods
new(client, host, port, ssl = false)
click to toggle source
# File lib/relayer/socket.rb, line 6 def initialize(client, host, port, ssl = false) @client = client @socket = TCPSocket.new(host, port) if ssl @socket = OpenSSL::SSL::SSLSocket.new(@socket) @socket.sync_close = true # close both wrapper and irc socket on close @socket.connect end IRCSocketSelector.add_irc_socket(@socket, @client) end
Public Instance Methods
close()
click to toggle source
# File lib/relayer/socket.rb, line 34 def close @socket.close end
read()
click to toggle source
# File lib/relayer/socket.rb, line 19 def read data = @socket.gets data = data.sub "\r", '' lines = data.split "\r\n" lines.each do |line| @client.process_raw line end end
send(line)
click to toggle source
# File lib/relayer/socket.rb, line 30 def send(line) @socket.puts line end