class Relayer::IRCSocketSelector
Public Class Methods
add_irc_socket(socket, client)
click to toggle source
# File lib/relayer/socket.rb, line 47 def self.add_irc_socket(socket, client) @@sockets[socket] = client end
instance()
click to toggle source
# File lib/relayer/socket.rb, line 43 def self.instance @@instance ||= IRCSocketSelector.new end
select()
click to toggle source
# File lib/relayer/socket.rb, line 51 def self.select sockets = @@sockets.keys readable, writable, exceptioned = IO.select(sockets, nil, nil) readable.each do |socket| client = @@sockets[socket] client.readable end end
start!()
click to toggle source
# File lib/relayer/socket.rb, line 66 def self.start! return if @@sockets.empty? @@started = true while true IRCSocketSelector.select end end
started?()
click to toggle source
# File lib/relayer/socket.rb, line 62 def self.started? @@started end