Sha256: 6eb4b613499ea1fefb7892c55073d867b8699216e9ffe8d9a0478eeb6957624a
Contents?: true
Size: 1.24 KB
Versions: 1
Compression:
Stored size: 1.24 KB
Contents
require 'puggernaut/server/shared' require 'puggernaut/server/http' require 'puggernaut/server/channel' require 'puggernaut/server/tcp' require 'puggernaut/server/websocket' module Puggernaut class Server include Logger def initialize(http_port=8100, tcp_port=http_port.to_i+1, ws_port=tcp_port.to_i+1) puts "\nPuggernaut is starting on #{http_port} (Long Poll HTTP), #{tcp_port} (Puggernaut TCP), and #{ws_port} (WebSocket TCP)" puts "*snort*\n\n" begin Channel.channels = [] GC.start EM.epoll if EM.epoll? EM.run do logger.info "Server#initialize - Starting HTTP - #{http_port}" EM.start_server '0.0.0.0', http_port, Http logger.info "Server#initialize - Starting TCP - #{tcp_port}" EM.start_server '0.0.0.0', tcp_port, Tcp logger.info "Server#initialize - Starting WebSocket - #{ws_port}" Websocket.new '0.0.0.0', ws_port errors = 0 end rescue Interrupt logger.info "Server#initialize - Shutting down" exit rescue logger.error "Server#initialize - Error - #{$!.message}" logger.error "\t" + $!.backtrace.join("\n\t") end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
puggernaut-0.2.0 | lib/puggernaut/server.rb |