# this is not used, just added here if I want to revive it module Oxidized require 'socket' require 'json' module API class Domain def initialize nodes, socket=CFG.api puts 'here' @nodes = nodes File.unlink socket rescue Errno::ENOENT @server = UNIXServer.new socket end def work io = select [@server], nil, nil, Config::Sleep process io.first.first.accept if io end def read @socket.recv 1024 end def write data='' begin @socket.send JSON.dump(data), 0 rescue Errno::EPIPE end end def process socket @socket = socket cmd = read cmd, data = cmd.split /\s+/, 2 data = data.to_s.chomp case cmd when /next/i @nodes.next data write 'OK' when /reload/i @nodes.load if data.match /nodes/i write 'OK' when /list/i write @nodes.map{|e|e.name} when /node/i write @nodes.show(data) end @socket.close end end end end