class DatTCP::ServerSpy
Attributes
backlog_size[R]
client_file_descriptors[R]
file_descriptor[R]
halt_called[RW]
ip[R]
listen_called[RW]
logger[R]
num_workers[R]
options[R]
pause_called[RW]
port[R]
shutdown_timeout[R]
start_called[RW]
stop_called[RW]
stop_listen_called[RW]
waiting_for_halt[R]
waiting_for_pause[R]
waiting_for_stop[R]
worker_class[R]
worker_params[R]
Public Class Methods
new(worker_class, options = nil)
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 18 def initialize(worker_class, options = nil) @worker_class = worker_class if !@worker_class.kind_of?(Class) || !@worker_class.include?(DatTCP::Worker) raise ArgumentError, "worker class must include `#{DatTCP::Worker}`" end server_ns = DatTCP::Server @options = options || {} @backlog_size = @options[:backlog_size] || server_ns::DEFAULT_BACKLOG_SIZE @shutdown_timeout = @options[:shutdown_timeout] || server_ns::DEFAULT_SHUTDOWN_TIMEOUT @num_workers = (@options[:num_workers] || server_ns::DEFAULT_NUM_WORKERS).to_i @logger = @options[:logger] @worker_params = @options[:worker_params] @ip = nil @port = nil @file_descriptor = nil @client_file_descriptors = [] @waiting_for_pause = nil @waiting_for_stop = nil @waiting_for_halt = nil @listen_called = false @stop_listen_called = false @start_called = false @pause_called = false @stop_called = false @halt_called = false end
Public Instance Methods
halt(wait = false)
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 86 def halt(wait = false) @waiting_for_halt = wait @halt_called = true end
listen(*args)
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 57 def listen(*args) case args.size when 2 @ip, @port = args when 1 @file_descriptor = args.first end @listen_called = true end
listening?()
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 49 def listening? @listen_called && !@stop_listen_called end
pause(wait = false)
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 76 def pause(wait = false) @waiting_for_pause = wait @pause_called = true end
running?()
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 53 def running? @start_called && !(@pause_called || @stop_called || @halt_called) end
start(passed_client_fds = nil)
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 71 def start(passed_client_fds = nil) @client_file_descriptors = passed_client_fds || [] @start_called = true end
stop(wait = false)
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 81 def stop(wait = false) @waiting_for_stop = wait @stop_called = true end
stop_listen()
click to toggle source
# File lib/dat-tcp/server_spy.rb, line 67 def stop_listen @stop_listen_called = true end