Method: #launch_server

Defined in:
lib/easel/server.rb

#launch_serverObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/easel/server.rb', line 14

def launch_server

  # Lauch the TCPServer
  begin
    server = TCPServer.new($config[:hostname], $config[:port])
  rescue Exception => e
    log_fatal "Server could not start. Error message: #{e}"
  end

  Thread.abort_on_exception = true

  # Main Loop
  begin
    loop {
      Thread.start(server.accept) do |client|
        handle_request client
    end
  }

  # Handle shutting down.
  rescue Interrupt
    log_info "Interrupt received, server shutting down..."
  end
end