class SuricatoNetwork::Connection

Public Class Methods

new(tcp) click to toggle source
# File lib/suricatonetwork.rb, line 30
def initialize tcp
        @tcp = tcp
        @thread = Thread.new {

                self.work

        }
end

Public Instance Methods

close() click to toggle source
# File lib/suricatonetwork.rb, line 62
def close
        puts "Closing work for #{self.to_s}"
        @tcp.close
        @thread.kill
end
work() click to toggle source
# File lib/suricatonetwork.rb, line 39
def work
        puts "Starting work for #{self.to_s}"

        loop {
                begin
                        
                        event = nil
                        n = nil
                        args = nil

                        Timeout.timeout (30) {
                                event, n, args = Event.readForm(@tcp)
                        }
                        Event.getHash[event].new(@tcp,args)
                rescue => e
                        puts "Error on #{self.to_s}:"
                        puts "\t #{e.to_s}"
    self.close
                end
        }

end